[PATCH v4 0/3] dw_dmac: repair driver for use with AVR32 (AP7000)

From: Hein Tibosch
Date: Sun Sep 02 2012 - 14:51:01 EST


v3 was based and tested on 3.5.2. the patches didn't apply
to the latest kernel because dw_dmac.c has had some changes since then.
Now it is based and tested on linux-3.6-rc4


From: Hein Tibosch <hein_tibosch@xxxxxxxx>

v4: now based and tested on 3.6-rc4

After some recent changes to dw_dmac, the driver got broken for the
AVR32 platform for several reasons:

The accessors to i/o memory had become little-endian.
The maximum transfer width on the memory side was increased from 32 to 64 bits.
This led to undefined behavior on the avr32 platform.

These patches will repair the driver so it can be used again on avr32. For
other users of dw_dmac (ARM platform), nothing will change and no code has
to be adapted.

The small patch for Atmel (at32ap700x.c) is included here because of its
dependency on the second dw_dmac patch.

Thanks to all for reviewing, both people from Atmel and Linaro

Hein Tibosch (3):
dw_dmac: make driver endianness configurable
dw_dmac: max_mem_width limits value for SRC/DST_TR_WID register
avr32: at32ap700x: set DMA slave properties for MCI dw_dmac

arch/avr32/mach-at32ap/at32ap700x.c | 4 ++++
drivers/dma/Kconfig | 11 +++++++++++
drivers/dma/dw_dmac.c | 13 +++++++------
drivers/dma/dw_dmac_regs.h | 14 ++++++++++++++
include/linux/dw_dmac.h | 3 +++
5 files changed, 39 insertions(+), 6 deletions(-)

--

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/