[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20181125011131.GK53235@atomide.com>
Date: Sat, 24 Nov 2018 17:11:31 -0800
From: Tony Lindgren <tony@...mide.com>
To: Russell King - ARM Linux <linux@...linux.org.uk>
Cc: Aaro Koskinen <aaro.koskinen@....fi>,
Peter Ujfalusi <peter.ujfalusi@...com>, vkoul@...nel.org,
dan.j.williams@...el.com, dmaengine@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-omap@...r.kernel.org
Subject: Re: [PATCH] dmaengine: ti: omap-dma: Configure LCH_TYPE for OMAP1
* Tony Lindgren <tony@...mide.com> [181125 01:07]:
> * Russell King - ARM Linux <linux@...linux.org.uk> [181124 20:10]:
> > On Fri, Nov 23, 2018 at 08:52:15PM +0200, Aaro Koskinen wrote:
> > > Hi,
> > >
> > > On Fri, Nov 23, 2018 at 02:35:04PM +0200, Peter Ujfalusi wrote:
> > > > On 22/11/2018 17.12, Russell King - ARM Linux wrote:
> > > > > I'm also not sure about this:
> > > > >
> > > > > if (cpu_is_omap15xx())
> > > > > end++;
> > > > >
> > > > > in dma_dest_len() - is that missing from the omap-dma driver? It looks
> > > > > like a work-around for some problem on OMAP15xx, but I can't make sense
> > > > > about why it's in the UDC driver rather than the legacy DMA driver.
> > > >
> > > > afaik no other legacy drivers were doing similar thing, this must be
> > > > something which is needed for the omap_udc driver to fix up something?
> > >
> > > Here's the patch that added it: https://marc.info/?l=linux-omap&m=119634396324221&w=2
> > >
> > > "Make DMA-OUT behave on the 1510 ... the 1510 CPC register was just
> > > off-by-one with respect to the 1611 CDAC"
> >
> > ... which suggests that's a problem with the CPC register itself, and
> > we should fix that in the DMAengine driver rather than the USB gadget
> > driver.
> >
> > Tony, any input on this?
>
> Yeah that sounds like some hardware work-around for 15xx as described
> in the DMA_DEST_LAST macro reading CSAC on 15xx instead of CDAC. Seems
> like it should be done in the dmaengine driver.. My guess is that other
> dma users never needed to read CSAC register?
And it looks like for 15xx we have CPC and CSAC both at offset 0x18 in
arch/arm/mach-omap1/dma.c, seems like the dma driver is missing handling
for the CPC register that's there only for 15xx.
Regards,
Tony
Powered by blists - more mailing lists