[PATCH v4 1/4] omap: dma: Fix buffering disable bit setting for omap24xx
G, Manjunath Kondaiah
manjugk at ti.com
Mon Oct 4 05:14:28 EDT 2010
> -----Original Message-----
> From: linux-omap-owner at vger.kernel.org
> [mailto:linux-omap-owner at vger.kernel.org] On Behalf Of Peter Ujfalusi
> Sent: Monday, October 04, 2010 1:48 PM
> To: Tony Lindgren
> Cc: linux-omap at vger.kernel.org; Jarkko Nikula;
> linux-arm-kernel at lists.infradead.org
> Subject: [PATCH v4 1/4] omap: dma: Fix buffering disable bit
> setting for omap24xx
>
> From: ext Jarkko Nikula <jhnikula at gmail.com>
>
> An errata workaround for omap24xx is not setting the
> buffering disable bit
> 25 what is the purpose but channel enable bit 7 instead.
...
> diff --git a/arch/arm/plat-omap/dma.c
> b/arch/arm/plat-omap/dma.c index ec7eddf..6914ccf 100644
> --- a/arch/arm/plat-omap/dma.c
> +++ b/arch/arm/plat-omap/dma.c
> @@ -999,8 +999,9 @@ void omap_start_dma(int lch)
> * Errata: On ES2.0 BUFFERING disable must be set.
> * This will always fail on ES1.0
> */
Sorry, I didn't catch this with earlier patch.
Looks like wrong comment. only on 2430ES1.0 and for all omap2420,
buffer disable should be set.
I feel below description will be useful to the reader:
"Errata: Inter Frame DMA buffering issue(All OMAP2420 and OMAP2430ES1.0):
DMA will wrongly buffer elements if packing and bursting is enabled.
This might result in data gets stalled in FIFO at the end of the block.
Workaround: DMA channels must have BUFFERING_DISABLED bit set to guarantee
no data will stay in the DMA FIFO in case inter frame buffering occurs.
-Manjunath
More information about the linux-arm-kernel
mailing list