[alsa-devel] WL1273 FM Radio driver...

Mauro Carvalho Chehab mchehab at redhat.com
Mon Feb 7 16:57:10 CET 2011


Em 07-02-2011 12:09, Matti J. Aaltonen escreveu:
> On Mon, 2011-02-07 at 11:48 -0200, ext Mauro Carvalho Chehab wrote:
>> Em 07-02-2011 11:10, Mark Brown escreveu:
>>> On Mon, Feb 07, 2011 at 10:48:03AM -0200, Mauro Carvalho Chehab wrote:
>>>> Em 07-02-2011 10:02, Mark Brown escreveu:
>>>>> On Mon, Feb 07, 2011 at 10:00:16AM -0200, Mauro Carvalho Chehab wrote:
>>>
>>>>>> the MFD part (for example, wl1273_fm_read_reg/wl1273_fm_write_cmd/wl1273_fm_write_data). 
>>>>>> The logic that are related to control the radio (wl1273_fm_set_audio,  wl1273_fm_set_volume,
>>>>>> etc) are not related to access the device via the MFD bus. They should be at
>>>>>> the media part of the driver, where they belong.
>>>
>>>>> Those functions are being used by the audio driver.
>>>
>>>> Not sure if I understood your comments. Several media drivers have alsa drivers:
>>>
>>> There is an audio driver for this chip and it is using those functions.
>>
>> Where are the other drivers that depend on it?
> 
> There's the MFD driver driver/mfd/wl1273-core.c, which is to offer the
> (I2C) I/O functions to the child drivers:
> drivers/media/radio/radio-wl1273.c and sound/soc/codecs/wl1273.c.
> 
> Both children depend on the MFD driver for I/O and the codec also
> depends on the presence of the radio-wl1273 driver because without the
> v4l2 part nothing can be done...

I think that the better would be to move the audio part (sound/soc/codecs/wl1273.c)
as drivers/media/radio/wl1273/wl1273-alsa.c. Is there any problem on moving it, or
the alsa driver is also tightly coupled on the rest of the sound/soc stuff?

I remember that, in the past, there were someone that proposed to move /sound into
/media/sound, and move some common stuff between them into /media/common.

Btw, there are(where?) some problems between -alsa and -media subsystems: basically, 
the audio core needs to be initialized before the drivers. However, this sometimes
don't happen (I can't remember the exact situation - perhaps builtin compilations?),
but we ended by needing to explicitly delaying the init of some drivers with:
	late_initcall(saa7134_alsa_init); 
To avoid some OOPS conditions.

> 
> Matti
> 
>>
>> Mauro
>>
> 
> 



More information about the Alsa-devel mailing list