On Fri, Jul 20, 2012 at 11:40 AM, RAHUL SHARMA <rahul.sha...@samsung.com> wrote:
>
>
> ------- Original Message -------
> Sender : Lars-Peter Clausen<l...@metafoo.de>
> Date : Jul 19, 2012 19:12 (GMT+05:30)
> Title : Re: exynos drm hdmi audio: how to recieve audio parameters (sf, bps, 
> channel count)
>
> On 07/19/2012 02:22 PM, Rob Clark wrote:
>> On Tue, Jul 17, 2012 at 1:12 AM, RAHUL SHARMA wrote:
>>> hi,
>>>
>>> I am adding support for hdmi audio, inside exynos drm hdmi driver. Hdmi 
>>> audio is initialized with default parameters. I want to implement the 
>>> mechanism to update hdmi registers, whenever audio properties got changed 
>>> (i2s/spdif). raedon/r600 drm dirver is polling the audio ip every 100 ms 
>>> and reconfigure the hdmi audio block. This is not possible with exynos as 
>>> all information cannot be collected from i2s tx registers. It is directly 
>>> set on wm8994 connected through i2c.
>>> Possible solution:
>>> 1) drm driver exposing ioctl for setting audio parameters.
>>> 2) alsa driver notifying the change in audio parameters through kernel 
>>> notifiers. drm hdmi driver subscribed for the same.
>>
>> I am certainly not an audio expert, but I am pretty sure something
>> along the lines of solution #2 would be better.  I don't think
>> userspace would want to know about some exynos drm specific ioctls in
>> order to make audio work.
>>
>> BR,
>> -R
>
>
> I don't know how the audio setup for exynos HDMI hardware looks like, so
> this might not be applicable in this case. But what I did for HDMI
> transmitter I was working on, is to register a ASoC codec device as a
> subdevice to the HDMI transmitter. All access to the sound registers is done
> from that subdevice and you don't need any special notifier hooks, since you
> can use the normal alsa driver callbacks.
>
> It might be a good idea if you could describe how your setup looks exactly.
> E.g. which components does the audio stream pass through, where does it
> originate and how the different components related to each other.
>
> - Lars

Thanks Lars, Rob, Kyungmin,

In exynos, i2s and spdif DAIs configure the i2s, spdif tx IP regs. In hw, I2s 
and
spdif tx o/p pins are also connected to the i2s-In and spdif-In blocks of hdmi 
tx.
Drm hdmi sub driver needs to configure the i2s-In and spdif-In blocks with the
same setting as in i2s and spdif tx IPs. Hdmi is solely accessed by drm driver
where hdmi is registered as a sub-driver along with lcd sub-driver. I hope, I am
able to explain the flow and connections, through above.

Lars, how can I refer your implementation where Adding 'hdmi audio' as a 
seperate
subdrv. If I understand correctly, it will be exposed as a seperate sound card,
parallel to i2s and spdif cards, which user app accesses and configure and about
scenarios with hpd.

Kyungmin, about adding ioctl; it looks clean, but as Rob stated, is it a right 
way as drm
framework is primarily meant for gfx/video configurations? Please exaplin me 
this point.

- Rahul Sharma
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to