On Mon, Mar 05, 2012 at 10:58:54AM -0600, Timur Tabi wrote:
Mark Brown wrote:
The DMA and SSI drivers should have some relationship with each other if they're the same piece of hardware.
The DMA and SSI are completely separate blocks in the SOC. On PowerPC, the P1022 SOC has an SSI and the standard FSL PPC DMA controller (we call it the Elo controller). On i.MX, there is a completely different DMA controller (I'm not familiar with it), but the same exact SSI.
Right, but in both cases we're talking about the adaption layer from ASoC to the support for the controller which is shared between everything on the SoC (though currently the PowerPC one just talks to the registers directly) so logically from a system perspective it's a part of the SSI driver.
Possibly the way to go here is to just call the DMA driver something generic (though you don't really need a separate Linux level device from a subsystem point of view) or have a library function which is implemented differently on each platform then have the SSI driver either create the device or do the call.
Either way it's something the SoC code ought to be handling, individual machine drivers shouldn't have to worry themselves about it.