On Monday 05 May 2008 14:42, Mark Brown wrote:
On Mon, May 05, 2008 at 12:56:37PM +0200, Juergen Beisert wrote:
Hmm, I did a deeper look into this code. Why - for example - does the file mx31ads-wm8753.c does the job of the BSP file? Why it registers devices? For my board I want to register platform_devices only in arc/arm/mach-mx2/pcm038.c. Nowhere else. If there is some glue required to bring components together, IMHO also arc/arm/mach-mx2/pcm038.c is the correct place to do so. Why you did it in sound/ ? If you do it in sound/ , you always need two locations to maintain. On in the arch/, one in sound/ .
The model which the existing ASoC platform code is using is that the sound subsystem of the device is frequently involved enough to justify thinking of it as a discrete "sound card", even if physically it is part of the same board. This is partly inherited from ASoC v1 where the way things are registered is less than ideal (it doesn't use the device model) and partly due to the fact that some machine definitions can get fairly large, especially with more complex board designs.
That said, you don't need to do things this way, especially with ASoC v2 where even if you do separate out the machine driver you can still register everything in your architecture code including a platform device for the machine driver.
Hmm, how far away is ASoC v2 from mainline? When I start to develop the driver right now, what version I should use?
Juergen