19 Dec, 2011
1 commit
-
ARCH_MX3 was removed in commit a89cf59 :
"arm/imx: merge i.MX3 and i.MX6"
thus preventing to select MX3_IPU, thus preventing IPU and display
to work on i.MX3x SOC.
i.MX SDMA support is also affected.Signed-off-by: Eric Bénard
Cc: Sascha Hauer
Cc: Vinod Koul
Cc: Dan Williams
Signed-off-by: Sascha Hauer
14 Sep, 2011
1 commit
-
This patch updates following 3 items.
1. Removes unneccessary code.
2. Add AMBA, PL330 configuration
3. Change the meaning of 'peri_id' variable
from PL330 event number to specific dma id by user.Signed-off-by: Boojin Kim
Acked-by: Linus Walleij
Acked-by: Vinod Koul
Cc: Dan Williams
Signed-off-by: Kukjin Kim
Signed-off-by: Vinod Koul
09 Jun, 2011
1 commit
-
The ep93xx DMA controller has 10 independent memory to peripheral (M2P)
channels, and 2 dedicated memory to memory (M2M) channels. M2M channels can
also be used by SPI and IDE to perform DMA transfers to/from their memory
mapped FIFOs.This driver supports both M2P and M2M channels with DMA_SLAVE, DMA_CYCLIC and
DMA_MEMCPY (M2M only) capabilities.Signed-off-by: Mika Westerberg
Signed-off-by: Ryan Mallon
Acked-by: H Hartley Sweeten
Acked-by: Vinod Koul
Signed-off-by: Grant Likely
09 May, 2011
1 commit
-
Support new device OKI SEMICONDUCTOR ML7223 IOH(Input/Output Hub).
The ML7223 IOH is for MP(Media Phone) use.
The ML7223 is companion chip for Intel Atom E6xx series.
The ML7223 is completely compatible for Intel EG20T PCH.Signed-off-by: Tomoya MORINAGA
Signed-off-by: Vinod Koul
23 Mar, 2011
1 commit
-
As a side effect this makes IMX_DMA selectable on i.MX21 again, because
the symbol ARCH_MX21 doesn't exist (MACH_MX21 would have been more correct).Signed-off-by: Uwe Kleine-König
Signed-off-by: Dan Williams
07 Mar, 2011
1 commit
-
This driver will now be used in atleast two platforms AVR32 & ARM. And there is
no actual hardware dependency of this driver over AVR32 or ARM. So this
dependency can be removed altogether.Also dw_dmac driver uses clk framework and must have compilation dependency on
HAVE_CLKSigned-off-by: Viresh Kumar
Signed-off-by: Vinod Koul
02 Mar, 2011
1 commit
-
This patch adds dma support for Freescale MXS-based SoC i.MX23/28,
including apbh-dma and apbx-dma.* apbh-dma and apbx-dma are supported in the driver as two mxs-dma
instances.* apbh-dma is different between mx23 and mx28, hardware version
register is used to differentiate.* mxs-dma supports pio function besides data transfer. The driver
uses dma_data_direction DMA_NONE to identify the pio mode, and
steals sgl and sg_len to get pio words and numbers from clients.* mxs dmaengine has some very specific features, like sense function
and the special NAND support (nand_lock, nand_wait4ready). These
are too specific to implemented in generic dmaengine driver.* The driver refers to imx-sdma and only a single descriptor is
statically assigned to each channel.Signed-off-by: Shawn Guo
Signed-off-by: Vinod Koul
18 Jan, 2011
1 commit
-
* 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx: (63 commits)
ARM: PL08x: cleanup comments
Update CONFIG_MD_RAID6_PQ to CONFIG_RAID6_PQ in drivers/dma/iop-adma.c
ARM: PL08x: fix a warning
Fix dmaengine_submit() return type
dmaengine: at_hdmac: fix race while monitoring channel status
dmaengine: at_hdmac: flags located in first descriptor
dmaengine: at_hdmac: use subsys_initcall instead of module_init
dmaengine: at_hdmac: no need set ACK in new descriptor
dmaengine: at_hdmac: trivial add precision to unmapping comment
dmaengine: at_hdmac: use dma_address to program DMA hardware
pch_dma: support new device ML7213 IOH
ARM: PL08x: prevent dma_set_runtime_config() reconfiguring memcpy channels
ARM: PL08x: allow dma_set_runtime_config() to return errors
ARM: PL08x: fix locking between prepare function and submit function
ARM: PL08x: introduce 'phychan_hold' to hold on to physical channels
ARM: PL08x: put txd's on the pending list in pl08x_tx_submit()
ARM: PL08x: rename 'desc_list' as 'pend_list'
ARM: PL08x: implement unmapping of memcpy buffers
ARM: PL08x: store prep_* flags in async_tx structure
ARM: PL08x: shrink srcbus/dstbus in txd structure
...
15 Jan, 2011
1 commit
-
Support new device OKI SEMICONDUCTOR's ML7213 IOH(Input/Output Hub) which is for
IVI(In-Vehicle Infotainment) use.
The ML7213 is companion chip for Intel Atom E6xx series.
The ML7213 is completely compatible for Intel EG20T PCH.Signed-off-by: Tomoya MORINAGA
Signed-off-by: Dan Williams
30 Dec, 2010
1 commit
-
MPC8308 has pretty much the same DMA controller as MPC5121 and
this patch adds support for MPC8308 to the mpc512x_dma driver.Signed-off-by: Ilya Yanok
Acked-by: Wolfgang Denk
Signed-off-by: Grant Likely
30 Oct, 2010
1 commit
-
Product codenames are OK, but once an actual product name is available,
it should be referenced as well.http://ark.intel.com/chipset.aspx?familyID=52499
Signed-off-by: Valdis Kletnieks
Signed-off-by: Linus Torvalds
08 Oct, 2010
3 commits
-
The majority of drivers in drivers/dma/ will never establish cross
channel operation chains and do not need the extra overhead in struct
dma_async_tx_descriptor. Make channel switching opt-in by default.Cc: Anatolij Gustschin
Cc: Ira Snyder
Cc: Linus Walleij
Cc: Saeed Bishara
Signed-off-by: Dan Williams -
This driver is currently implemented as a user to the old i.MX
DMA API. This allows us to convert each user of the old API to
the dmaengine API one by one. Once this is done the old DMA
driver can be merged into the i.MX dmaengine driver.V2: remove some debug leftovers and unused variables
Signed-off-by: Sascha Hauer
Acked-by: Linus Walleij
Signed-off-by: Dan Williams
06 Oct, 2010
1 commit
-
This patch adds support for the Freescale i.MX SDMA engine.
The SDMA engine is a scatter/gather DMA engine which is implemented
as a seperate coprocessor. SDMA needs its own firmware which is
requested using the standard request_firmware mechanism. The firmware
has different entry points for each peripheral type, so drivers
have to pass the peripheral type to the DMA engine which in turn
picks the correct firmware entry point from a table contained in
the firmware image itself.
The original Freescale code also supports support for transfering
data to the internal SRAM which needs different entry points to
the firmware. Support for this is currently not implemented. Also,
support for the ASRC (asymmetric sample rate converter) is skipped.I took a very simple approach to implement dmaengine support. Only
a single descriptor is statically assigned to a each channel. This
means that transfers can't be queued up but only a single transfer
is in progress. This simplifies implementation a lot and is sufficient
for the usual device/memory transfers.Signed-off-by: Sascha Hauer
Reviewed-by: Linus Walleij
Signed-off-by: Dan Williams
30 Sep, 2010
1 commit
-
This creates a DMAengine driver for the ARM PL080/PL081 PrimeCells
based on the implementation earlier submitted by Peter Pearse.
This is working like a charm for memcpy and slave DMA to the PL011
PrimeCell on the PB11MPCore.This DMA controller is used in mostly unmodified form in the ARM
RealView and Versatile platforms, in the ST-Ericsson Nomadik, and
in the ST SPEAr platform.It has been converted to use the header from the Samsung PL080
derivate instead of its own defintions. The Samsungs have a custom
driver in their mach-* folders though, atleast we can share the
register definitions.Cc: Peter Pearse
Cc: Ben Dooks
Cc: Kukjin Kim
Cc: Alessandro Rubini
Acked-by: Viresh Kumar
Signed-off-by: Linus Walleij
[GFP_KERNEL to GFP_NOWAIT in pl08x_prep_dma_memcpy]
Signed-off-by: Dan Williams
11 Aug, 2010
1 commit
-
Conflicts:
arch/arm/Kconfig
arch/arm/mm/Kconfig
05 Aug, 2010
1 commit
-
Topcliff PCH is the platform controller hub that is going to
be used in Intel's upcoming general embedded platforms. This
adds the driver for Topcliff PCH DMA controller. The DMA
channels are strictly for device to host or host to device
transfers and cannot be used for generic memcpy.Signed-off-by: Yong Wang
[kill GFP_ATOMIC, kill __raw_{read|write}l, locking fixlet]
Signed-off-by: Dan Williams
28 Jul, 2010
1 commit
-
This patch add DMA drivers for DMA controllers in Langwell chipset
of Intel(R) Moorestown platform and DMA controllers in Penwell of
Intel(R) Medfield platfromThis patch adds support for Moorestown DMAC1 and DMAC2 controllers.
It also add support for Medfiled GP DMA and DMAC1 controllers.
These controllers supports memory to peripheral and peripheral to
memory transfers. It support only single block transfers.This driver is based on Kernel DMA engine
Anyone who wishes to use this controller should use DMA engine APIsThis controller exposes DMA_SLAVE capabilities and notifies the client drivers
of DMA transaction completionConfig option required to be enabled CONFIG_INTEL_MID_DMAC=y
Signed-off-by: Vinod Koul
Signed-off-by: Alan Cox
Signed-off-by: Dan Williams
31 May, 2010
1 commit
24 May, 2010
2 commits
-
Add DMA Engine API driver for the PL330 DMAC.
This driver is supposed to be reusable by various
platforms that have one or more PL330 DMACs.
Atm, DMA_SLAVE and DMA_MEMCPY capabilities have been
implemented.Signed-off-by: Jassi Brar
Reviewed-by: Linus Walleij
[dan.j.williams@intel.com: missing slab.h and ->device_control() fixups]
Signed-off-by: Dan Williams
15 Apr, 2010
1 commit
-
This is a straightforward driver for the ST-Ericsson DMA40 DMA
controller found in U8500, implemented akin to the existing
COH 901 318 driver.Signed-off-by: Linus Walleij
Acked-by: Srinidh Kasagar
Cc: STEricsson_nomadik_linux@list.st.com
Cc: Alessandro Rubini
Signed-off-by: Andrew Morton
Signed-off-by: Dan Williams
07 Apr, 2010
1 commit
-
Enable the shdma dmaengine driver on SH-Mobile ARM.
Signed-off-by: Magnus Damm
Signed-off-by: Paul Mundt
26 Mar, 2010
1 commit
-
Adds the support for the DMA engine withing the timberdale FPGA.
The DMA channels are strict device to host, or host to device
and can not be used for generic memcpy.Signed-off-by: Richard Röjfors
Signed-off-by: Dan Williams
02 Mar, 2010
2 commits
-
Adds initial version of MPC512x DMA driver.
Only memory to memory transfers are currenly supported.Signed-off-by: Piotr Ziecik
Signed-off-by: Wolfgang Denk
Signed-off-by: Anatolij Gustschin
Cc: John Rigby
Acked-by: Grant Likely
Signed-off-by: Dan Williams -
This adds Kconfig options for DEBUG and VERBOSE_DEBUG to the DMA
engine subsystem, I got tired of editing the Makefile manually
each time I want to debug things in here, modelled this on the
debug switches for other subsystems and works like a charm when
working on our DMA engines.Signed-off-by: Linus Walleij
Signed-off-by: Dan Williams
17 Dec, 2009
1 commit
-
* 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx:
ppc440spe-adma: adds updated ppc440spe adma driver
iop-adma.c: use resource_size()
dmaengine: clarify the meaning of the DMA_CTRL_ACK flag
sh: stylistic improvements for the DMA driver
dmaengine: fix dmatest to verify minimum transfer length and test buffer size
sh: DMA driver has to specify its alignment requirements
Add COH 901 318 DMA block driver v5
12 Dec, 2009
1 commit
-
This patch adds new version of the PPC440SPe ADMA driver.
Signed-off-by: Yuri Tikhonov
Signed-off-by: Anatolij Gustschin
Signed-off-by: Dan Williams
05 Dec, 2009
1 commit
20 Nov, 2009
2 commits
-
This patch adds support for the ST-Ericsson COH 901 318 DMA block,
found in the U300 series platforms. It registers a DMA slave for
device I/O and also a memcpy slave for memcpy.Signed-off-by: Linus Walleij
Acked-by: Maciej Sosnowski
Signed-off-by: Dan Williams -
ioat3.2 does not support asynchronous error notifications which makes
the driver experience latencies when non-zero pq validate results are
expected. Provide a mechanism for turning off async_xor_val and
async_syndrome_val via Kconfig. This approach is generally useful for
any driver that specifies ASYNC_TX_DISABLE_CHANNEL_SWITCH and would like
to force the async_tx api to fall back to the synchronous path for
certain operations.Signed-off-by: Dan Williams
26 Oct, 2009
1 commit
-
Add at91sam9g45 dependency to drivers/dma/Kconfig
Signed-off-by: Yegor Yefremov
Acked-by: Nicolas Ferre
Signed-off-by: Russell King
09 Sep, 2009
5 commits
-
This restriction prevented ASYNC_TX_DMA from being enabled on platform
configurations where DMA address conversion could not be performed in
place on the stack. Since commit 04ce9ab3 ("async_xor: permit callers
to pass in a 'dma/page scribble' region") the async_tx api now either
uses a caller provided 'scribble' buffer, or performs the conversion in
place when sizeof(dma_addr_t) -
This supported all DMA channels, and it was tested in SH7722,
SH7780, SH7785 and SH7763.
This can not use with SH DMA API.Signed-off-by: Nobuhiro Iwamatsu
Reviewed-by: Matt Fleming
Acked-by: Maciej Sosnowski
Acked-by: Paul Mundt
Signed-off-by: Dan Williams -
Conflicts:
crypto/async_tx/async_xor.c
drivers/dma/ioat/dma_v2.h
drivers/dma/ioat/pci.c
drivers/md/raid5.c -
Channel switching is problematic for some dmaengine drivers as the
architecture precludes separating the ->prep from ->submit. In these
cases the driver can select ASYNC_TX_DISABLE_CHANNEL_SWITCH to modify
the async_tx allocator to only return channels that support all of the
required asynchronous operations.For example MD_RAID456=y selects support for asynchronous xor, xor
validate, pq, pq validate, and memcpy. When
ASYNC_TX_DISABLE_CHANNEL_SWITCH=y any channel with all these
capabilities is marked DMA_ASYNC_TX allowing async_tx_find_channel() to
quickly locate compatible channels with the guarantee that dependency
chains will remain on one channel. When
ASYNC_TX_DISABLE_CHANNEL_SWITCH=n async_tx_find_channel() may select
channels that lead to operation chains that need to cross channel
boundaries using the async_tx channel switch capability.Signed-off-by: Dan Williams
23 Jul, 2009
1 commit
-
This AHB DMA Controller (aka HDMA or DMAC on AT91 systems) is availlable on
at91sam9rl chip. It will be used on other products in the future.This first release covers only the memory-to-memory tranfer type. This is the
only tranfer type supported by this chip. On other products, it will be used
also for peripheral DMA transfer (slave API support to come).I used dmatest client without problem in different configurations to test it.
Full documentation for this controller can be found in the SAM9RL datasheet:
http://www.atmel.com/dyn/products/product_card.asp?part_id=4243Signed-off-by: Nicolas Ferre
Acked-by: Maciej Sosnowski
Signed-off-by: Dan Williams
02 Jul, 2009
1 commit
-
On HIGHMEM64G systems dma_addr_t is known to be larger than (void *)
which precludes async_xor from performing dma address conversions by
reusing the input parameter address list. However, other parts of the
dmaengine infrastructure do not suffer this constraint, so the
HIGHMEM64G restriction can be down-levelled.Signed-off-by: Dan Williams