[alsa-devel] Thoughts on ASOC v2 driver architecture
Timur Tabi
timur at freescale.com
Mon Jun 16 18:01:36 CEST 2008
Jon Smirl wrote:
> The drivers are creating their own platform devices. Constructing them
> in the driver builds in the assumption that if the driver is loaded,
> then the devices are present. But that's not right in my case, I have
> four fabric drivers built in and I only want one of them active.
You have two choices:
1) Load all drivers. In each driver's __init section, let it determine whether
it should load or not. If not, it can fail silently. Off the top of my head, I
don't remember how to do that.
2) Use the Kernel Module Loader to dynamically load the module you want. I
don't know how this works either.
> The devices are being created in the wrong place. So instead of my
> proposal of reading the platform name out of the device tree and
> loading the driver from fsl_ssi, in Timur's case the fabric device
> should be created in arch/powerpc/platforms/86xx/mpc8610_hpcd.c.
> PowerPC is already capable of making the codec device from the device
> tree.
True, but I chose to keep it in sound/soc/fsl so that I wouldn't have to push 3
drivers to alsa-devel and one driver to linuxppc-dev.
--
Timur Tabi
Linux kernel developer at Freescale
More information about the Alsa-devel
mailing list