On Tue, 2019-06-04 at 17:24 +0200, Daniel Vetter wrote:
On Tue, Jun 4, 2019 at 5:15 PM Christian König ckoenig.leichtzumerken@gmail.com wrote:
Am 04.06.19 um 17:05 schrieb Ser, Simon:
Hi,
I'm trying to link ALSA playback devices and DRM connectors. In other words, I'd like to be able to know which ALSA device I should open to play audio on a given connector.
Unfortunately, I haven't found a way to extract this information. I know /proc/asound/cardN/eld* expose the EDID-like data. However by looking at the ALSA API (also: aplay -l and -L) I can't find a way to figure out which PCM device maps to the ELD.
Am I missing something?
Is that actually fixed on all hardware? Or do we maybe have some hardware with only one audio codec and multiple connectors?
If not, what would be the best way to expose this?
- A symlink to the ALSA audio PCM device in /sys/class/drm/cardN-CONNECTOR?
- A symlink to the DRM connector in /sys/class/sound/pcm*?
If it's fixed than those two options sound sane to me.
- A DRM connector property?
If it's configurable than that sounds like a good option to me.
Anyway added our DC team, stuff like that is their construction site.
Regards, Christian.
- Somehow expose the connector name via the ALSA API?
- Expose the connector EDID via ALSA?
- Other ideas?
I think on our MST hw you get a combination of CRTCs x CONNECTORs on the alsa side. I.e. for every pair of connector and crtc you get a separate alsa pin. This is because with mst, you could have up to num_crtcs streams on a single connector. Not sure how to model that.
I assume this means "up to num_crtcs streams an a physical connector". With MST a physical connector can back more than one DRM connector.
Bigger question: How do you want to make the cooperation happen? There's been some ideas floating about making the hdmi connection between drm and alsa somehow represented in the code, but nothing ever really happened. there's drm_audio_component.h, but that's just the interface, it doesn't really solve how to make the connection. Also only used by i915/hda.
To be completely honest I have no idea. That's why I sent this e- mail. :P
Indeed, it seems that the interface isn't enough (get_eld and pin2port are interesting though).
Thanks!
Simon Ser _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel
dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel