[alsa-devel] [Intel-gfx] Need your advice: Add a new communication inteface between HD-Audio and Gfx drivers for hotplug notification/ELD update

Daniel Vetter daniel at ffwll.ch
Wed Jan 22 16:20:55 CET 2014

On Wed, Jan 22, 2014 at 10:04:14AM -0500, Rob Clark wrote:
> sorry to jump into this a bit late, so maybe this was covered already earlier..

It just started, I've quoted everything when cc'ing dri-devel. But good to
have examples outside of x86 (where things are mostly standardized by the
Eye of Redmond).

> For drm/msm the hdmi code needs something along these lines from audio:
> int hdmi_audio_info_setup(struct platform_device *pdev, bool enabled,
>         uint32_t num_of_channels, uint32_t channel_allocation,
>         uint32_t level_shift, bool down_mix);
> void hdmi_audio_set_sample_rate(struct platform_device *pdev, int rate);
> (former is mainly to setup avi audio infoframe, latter for clks)
> in addition to hotplug and ELD stuff

Can you elaborate a bit on what you need for msm? On intel (and I think
the other x86 platforms are similar) we have separate buffers in the hw
for avi infoframes and audio infoframes, so the drm and alsa driver can
bash the right stuff into the hardware on their own. I'm mostly confused
since you say _AVI_ infoframe here, which is purely generated by the drm
side of the code here. Or at least that's been my understanding.

The clocks are also funny really, but I'm not sure whether this fits. I'd
have expected some DT-based generic clock source which the audio driver
just grabs as part of his multi-device beast (maybe using Russell's new
driver core code) and used directly. What's the reason that this has to go
through the drm driverr?

Cheers, Daniel
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch

More information about the Alsa-devel mailing list