All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC 0/4] dmaengine: Slave DMA interface and example users
@ 2007-11-23 12:20 Haavard Skinnemoen
  2007-11-23 12:20 ` [RFC 1/4] dmaengine: Add slave DMA interface Haavard Skinnemoen
  0 siblings, 1 reply; 11+ messages in thread
From: Haavard Skinnemoen @ 2007-11-23 12:20 UTC (permalink / raw)
  To: linux-kernel
  Cc: Shannon Nelson, Dan Williams, David Brownell, kernel,
	linux-arm-kernel, Haavard Skinnemoen

This patch series adds the necessary interfaces to the DMA Engine
framework to use functionality found on most embedded DMA controllers:
DMA from and to I/O registers with hardware handshaking.

In this context, hardware hanshaking means that the peripheral that
owns the I/O registers in question is able to tell the DMA controller
when more data is available for reading, or when there is room for
more data to be written. This usually happens internally on the chip,
but these signals may also be exported outside the chip for things
like IDE DMA, etc.

I'd really like some feedback on the first patch in the series,
particularly from people using other platforms than AVR32 and people
who use or want to use the DW DMAC controller for other things than
what the Atmel-provided drivers do. The three other patches in the
series are provided mostly for context, although I do want to get them
merged into mainline eventually. This should happen after the basic
interfaces have been properly worked out though.

I've tested everything together and it seems to work most of the time;
I can insert an MMC card and mount a partition with an ext3 filesystem
on it, but I get some ext3 errors from time to time, so there are
still some issues to be worked out.

Haavard
Haavard Skinnemoen (4):
      dmaengine: Add slave DMA interface
      dmaengine: Make DMA Engine menu visible for AVR32 users
      dmaengine: Driver for the Synopsys DesignWare DMA controller
      Atmel MCI: Driver for Atmel on-chip MMC controllers

 arch/avr32/boards/atngw100/setup.c         |    6 +
 arch/avr32/boards/atstk1000/atstk1002.c    |    3 +
 arch/avr32/mach-at32ap/at32ap7000.c        |   60 +-
 drivers/dma/Kconfig                        |   11 +-
 drivers/dma/Makefile                       |    1 +
 drivers/dma/dmaengine.c                    |    6 +
 drivers/dma/dw_dmac.c                      | 1180 ++++++++++++++++++++++++++++
 drivers/dma/dw_dmac.h                      |  257 ++++++
 drivers/mmc/host/Kconfig                   |   10 +
 drivers/mmc/host/Makefile                  |    1 +
 drivers/mmc/host/atmel-mci.c               | 1170 +++++++++++++++++++++++++++
 drivers/mmc/host/atmel-mci.h               |  192 +++++
 include/asm-avr32/arch-at32ap/at32ap7000.h |   16 +
 include/asm-avr32/arch-at32ap/board.h      |   10 +-
 include/linux/dmaengine.h                  |   55 ++-
 15 files changed, 2957 insertions(+), 21 deletions(-)
 create mode 100644 drivers/dma/dw_dmac.c
 create mode 100644 drivers/dma/dw_dmac.h
 create mode 100644 drivers/mmc/host/atmel-mci.c
 create mode 100644 drivers/mmc/host/atmel-mci.h

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2007-12-05 15:54 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-11-23 12:20 [RFC 0/4] dmaengine: Slave DMA interface and example users Haavard Skinnemoen
2007-11-23 12:20 ` [RFC 1/4] dmaengine: Add slave DMA interface Haavard Skinnemoen
2007-11-23 12:20   ` [RFC 2/4] dmaengine: Make DMA Engine menu visible for AVR32 users Haavard Skinnemoen
2007-11-23 12:20     ` [RFC 3/4] dmaengine: Driver for the Synopsys DesignWare DMA controller Haavard Skinnemoen
2007-11-23 12:20       ` [RFC 4/4] Atmel MCI: Driver for Atmel on-chip MMC controllers Haavard Skinnemoen
2007-11-24 17:00         ` Pierre Ossman
2007-11-24 18:16           ` Haavard Skinnemoen
2007-11-24 18:48             ` David Brownell
2007-11-24 19:24               ` Haavard Skinnemoen
2007-12-03 19:20   ` [RFC 1/4] dmaengine: Add slave DMA interface Dan Williams
2007-12-05 15:53     ` Haavard Skinnemoen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.