From: Ricardo Neri <ricardo.neri@ti.com>
To: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: s-guiriec@ti.com, peter.ujfalusi@ti.com, b-cousson@ti.com,
linux-omap@vger.kernel.org
Subject: Re: [PATCH 6/6] OMAPDSS: HDMI: Create platform device to support audio
Date: Tue, 23 Oct 2012 12:21:04 -0500 [thread overview]
Message-ID: <5086D200.7000008@ti.com> (raw)
In-Reply-To: <5086C333.9000801@ti.com>
On 10/23/2012 11:17 AM, Tomi Valkeinen wrote:
> On 2012-10-23 18:42, Ricardo Neri wrote:
>
>>> What registers does the audio side need to access?
>>
>> It only needs access to the DMA audio data port. All other operations
>> that the audio driver needs are done through the omapdss audio interface.
>
> Hmm, so the audio side only needs the address of one register, for the
> audio data, and this address is given to sDMA? You have
> OMAP_HDMI_AUDIO_DMA_PORT in the audio code, is it the HDMI_WP_AUDIO_DATA
> register?
Yes, that is the register it needs.
>
> If so, you could pass only that one address, instead of the whole HDMI
> register space?
Yes, that could work. I thought about that but the common HDMI driver
would have to know the the IP-specific register, which it should not.
Perhaps the IP-specific register address can be passed by a IP-specific
function such as hdmi_get_audio_dma_port for the common HDMI driver to
populate the resource.
Btw, could this be another reason to convert the IP-specific libraries
to drivers?
>
> My point here is that we should make it very clear what the audio side
> can access. If we pass the whole HDMI register space, we should, in
> theory, be prepared to cope with the audio driver changing any register
> there. But if we pass only one register (or certain small ranges), we
> know the rest of the registers are safe.
True.
>
>>> Why are part of the
>>> registers accessed via the hdmi driver API, and some directly? I imagine
>>> it'd be better to do either one of those, but not both.
>>
>> This is because in the current omapdss audio interface we have no
>> functionality to handle the DMA transfers for audio. Do you think it
>> would be good to explore implementing support for that? At this point it
>> is not clear for me how to do it without duplicating the functionality
>> that ASoC provides for that.
>
> No, if the common ASoC code provides functionality for this, we should
> at least try to use it.
>
> I was looking at the ti_hdmi_4xxx_ip.h, searching for audio related
> registers by searching "AUD" string. I don't know if it makes any sense
> (you're better to have a say on that), but I think we could pass some of
> the audio registers ranges to the audio driver for use.
>
> For example, the HDMI_WP_AUDIO_* registers are together, we could give
> those to the audio driver if it makes sense. HDMI_CORE_AV_AUD* registers
> are a bit scattered, but... I guess it wouldn't be difficult to pass
> those also, there's still only a couple separate ranges.
Even though this would allow our HDMI drivers to be more inline with
what other HDMI drivers do, things like power management and interrupts
are still handled by DSS, unlike x86, for instance [1][2]. So the audio
drivers will still depend on DSS. Also, the register layout is different
for OMAP5 and audio registers are even more scattered. Furthermore, the
common HDMI driver would have to know the IP-specific layout to know
what register spaces expose to the audio driver (another reason to have
IP-specific drivers?). So I would vote for continuing using the omapdss
audio interface.
>
> But I also have no problem with having the hdmi audio API in the hdmi
> video driver, as we do now. And I think we in any case need a few
> functions, even if we would give the audio driver access to the AUD
> registers.
Yes, interrupt handling, for instance.
BR,
Ricardo
[1].http://www.spinics.net/lists/linux-omap/msg75969.html
[2]. http://www.spinics.net/lists/linux-omap/msg75968.html
>
> Tomi
>
>
next prev parent reply other threads:[~2012-10-23 17:23 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-10-16 1:27 [PATCH 0/6] Create platform device for audio support Ricardo Neri
2012-10-16 1:27 ` [PATCH 1/6] OMAPDSS: HDMI: Rename resource variable at probe Ricardo Neri
2012-10-16 1:27 ` [PATCH 2/6] OMAPDSS: Convert to devm_ioremap Ricardo Neri
2012-10-22 7:22 ` Tomi Valkeinen
2012-10-22 22:59 ` Ricardo Neri
2012-10-16 1:27 ` [PATCH 3/6] OMAPDSS: HDMI: Make panel return error if cannot register driver Ricardo Neri
2012-10-16 1:27 ` [PATCH 4/6] OMAPDSS: HDMI: Uninit display if unable to register device Ricardo Neri
2012-10-16 1:27 ` [PATCH 5/6] OMAPDSS: HDMI: Handle error when initing the display at probe Ricardo Neri
2012-10-16 1:27 ` [PATCH 6/6] OMAPDSS: HDMI: Create platform device to support audio Ricardo Neri
2012-10-16 9:30 ` Péter Ujfalusi
2012-10-16 11:11 ` Ricardo Neri
2012-10-22 7:40 ` Tomi Valkeinen
2012-10-23 0:48 ` Ricardo Neri
2012-10-23 9:37 ` Tomi Valkeinen
2012-10-23 15:42 ` Ricardo Neri
2012-10-23 16:17 ` Tomi Valkeinen
2012-10-23 17:21 ` Ricardo Neri [this message]
2012-10-24 4:29 ` Tomi Valkeinen
2012-10-25 14:31 ` Ricardo Neri
2012-10-25 14:54 ` Tomi Valkeinen
2012-10-26 0:46 ` Ricardo Neri
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5086D200.7000008@ti.com \
--to=ricardo.neri@ti.com \
--cc=b-cousson@ti.com \
--cc=linux-omap@vger.kernel.org \
--cc=peter.ujfalusi@ti.com \
--cc=s-guiriec@ti.com \
--cc=tomi.valkeinen@ti.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).