28 Aug 2012 00:28
[RFC PATCH 1/11] expose sound device topology information
Clemens Ladisch <clemens <at> ladisch.de>
2012-08-27 22:28:30 GMT
2012-08-27 22:28:30 GMT
Hi, these are some tentative patches to allow sound drivers to provide routing information to userspace. (So far, snd-usb-audio has a partial implementation; I haven't yet had time for snd-hda-intel. I haven't even looked at ASoC.) The media controller API <linux/media.h> allows prividing routing information, but its implementation does not quite fit the sound drivers: * it allows reconfiguration of links, but not in a way that would be useful for ALSA selector controls; * it allows drivers to access the entity graph and pipelines, which is not needed; * it is rather heavyweight. Therefore, these patches create their own implementation of the media controller API. In this implementation, all entity and link information is completely static, and more space-efficient. For simplicity, the ioctls hook into the ALSA control device instead of creating a new /dev/media* device. The separate implementation does not allow sharing of one media controller device in the case of combined audio/video devices. However, separate drivers would already be a problem for HDMI outputs (GPU and sound); it appears we might need some mechanism to connect the topologies of multiple media devices. TLVs (for jack entities, and for associating controls with entities)(Continue reading)
RSS Feed