On Thu, 14 May 2009 19:59:46 +0100, Mark Brown broonie@opensource.wolfsonmicro.com wrote:
This all looks basically fine - just a few comments below, the main one being the way you're registering things.
Thank you for quick review!
+#define txx9aclc_ac97_suspend NULL +#define txx9aclc_ac97_resume NULL +#endif
Just remove all this if there's no implementation.
OK. I will do.
Ideally you'd be registering a platform device in your arch code and then the DAI would only be registered when the device is probed. This (and similar stuff for the DMA) would mean that...
...
...all this resource stuff wouldn't need to be done by the machine driver, it'd be done by your DAI and DMA drivers. That means less duplication of code for multiple machines both in the machine driver and in registering the resources along with the platform device.
OK, then I will move irq/mem resource stuff to the DAI driver and dma resource stuff to the DMA driver.
I placed them in the machine driver because both DAI and DMA drivers need the mem resource. I can move the mem resource stuff into the DAI driver since the DAI driver will be probed before the DMA driver.
OTOH, I want to keep arch code as is. There are some TXx9 SoC variations and they can have different baseaddr/irq/dma. I want to leave these details in arch code and make ASoC drivers generic as possible.
--- Atsushi Nemoto