On Tue, May 26, 2015 at 09:49:57AM +0300, Andy Shevchenko wrote: > On Tue, May 26, 2015 at 7:06 AM, Vinod Koul <[email protected]> wrote: > > On Mon, May 25, 2015 at 07:09:31PM +0300, Andy Shevchenko wrote: > >> Intel integrated DMA (iDMA) 64-bit is a specific IP that is used as a part > >> of > >> LPSS devices such as HSUART or SPI. The iDMA IP is attached for private > >> usage on each host controller independently. > >> > >> While it has similarities with Synopsys DesignWare DMA, the following > >> distinctions doesn't allow to use the existing driver: > >> - 64-bit mode with corresponding changes in Hardware Linked List data > >> structure > >> - many slight differences in the channel registers > >> > >> Moreover this driver is based on the DMA virtual channels framework that > >> helps > >> to make the driver cleaner and easy to understand. > >> > > Looking at code and iDMA controllers (if this is the same as I have used), > > we > > have register compatibility with DW controller, so why new driver and why > > not > > use and enhance dw driver ? > > Take a look closer. There are many, like I mentioned, slight but not > least changes in the registers, besides *64-bit mode*: > - ctl_hi represents bytes, not items > - 2 bytes of burst is supported (dw has no gap there) > - shuffling bits between ctl_* and cfg_* > - new bits with different meaning in ctl_* and cfg_*. Yes these are the changes which I was thinking and these would impact only calculating different values for a descriptor, so based on device probed you cna load a specfic operation for calculating, rest of the driver code is agnostic
> > Preliminary we did a patchset for dw_dmac, but above hw changes blows > up and messes the driver code. I really would prefer to have those two > separate I think it should be doable and reading this patch also doesnt convince me for that > > However, the 32-bit iDMA which is used in Baytrail might be driven by dw_dmac. Also what part here is specfic to *64* bit ? -- ~Vinod -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

