28 Sep, 2011
1 commit
-
Currently the shdma dmaengine driver uses runtime PM to save power, when
no channel on the specific controller is requested by a user. This patch
switches the driver to count individual DMA transfers. That way the
controller can be powered down between transfers, even if some of its
channels are in use.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Vinod Koul
21 Jun, 2011
2 commits
-
IE bit position on CHCR register is not same in all DMAC.
This patch adds new "chcr_ie_bit" to decide it.Signed-off-by: Kuninori Morimoto
Signed-off-by: Paul Mundt -
CHCR register position is not same in all DMAC.
This patch adds new "chcr_offset" to decide it.Signed-off-by: Kuninori Morimoto
Signed-off-by: Paul Mundt
16 Jun, 2011
1 commit
-
This patch adds "to_sh_dev" macro, and clean up codes.
Signed-off-by: Kuninori Morimoto
Signed-off-by: Paul Mundt
25 May, 2011
1 commit
-
Update SH_DMAC_MAX_CHANNELS to support the 20 DMA
channels included in the sh73a0 SY-DMAC hardware.Signed-off-by: Magnus Damm
Signed-off-by: Paul Mundt
23 May, 2011
1 commit
-
This patch extends and fixes runtime power management in the shdma
driver to support powering down the DMA controller and adds support
for system-level suspend and resume.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Paul Mundt
17 Dec, 2010
1 commit
-
Presently DMA transfers are interrupted and aborted by the NMI. This
implements some basic logic for more gracefully handling and clearing
each controller's NMIF flag via the NMI die chain, needed to resume
transfers post-NMI.Reported-by: Michael Szafranek
Signed-off-by: Paul Mundt
23 Mar, 2010
2 commits
-
Create a common platform data header file for the
shdma dmaengine driver. This is done by moving
common structures from sh asm/dmaengine.h to
linux/sh_dma.h. DMA registers are also copied from
sh asm/dma-register.h to make the code architecture
independent.The sh header file asm/dmaengine.h is still kept
with the slave id enum. This allows us to keep the
old processor specific code as is and slowly move
over to slave id enums in per-processor headers.Signed-off-by: Magnus Damm
Signed-off-by: Paul Mundt -
Move SHDMA_SLAVE_NUMBER from asm/dmaengine.h to
shdma.h. Set it to 256 to support a wide range
of processors. The amount of memory consumed by
this change is limited to 256 bits.While at it, rename to SH_DMA_SLAVE_NUMBER to
match with the rest of the file.Signed-off-by: Magnus Damm
Acked-by: Guennadi Liakhovetski
Signed-off-by: Paul Mundt
02 Mar, 2010
3 commits
-
This patch extends the .device_terminate_all() method of the shdma driver
to return number of bytes transfered in the current descriptor.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Paul Mundt -
Separate SH DMA headers into ones, commonly used by both drivers, and ones,
specific to each of them. This will make the future development of the
dmaengine driver easier.Signed-off-by: Guennadi Liakhovetski
Acked-by: Mark Brown
Signed-off-by: Paul Mundt -
The shdma dmaengine driver currently uses numerous macros to support various
platforms, selected by ifdef's. Convert it to use platform device resources and
lists of channel descriptors to specify register locations, interrupt numbers
and other system-specific configuration variants. Unavoidably, we have to
simultaneously convert all shdma users to provide those resources.Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Paul Mundt
08 Feb, 2010
1 commit
-
Tested to work with a SIU ASoC driver on sh7722 (migor).
Signed-off-by: Guennadi Liakhovetski
Acked-by: Dan Williams
Signed-off-by: Paul Mundt
18 Dec, 2009
1 commit
-
The SH DMA driver wrongly assigns negative cookies to transfer descriptors,
also, its chaining of partial descriptors is broken. The latter problem is
usually invisible, because maximum transfer size per chunk is 16M, but if you
artificially set this limit lower, the driver fails. Since cookies are also
used in chunk management, both these problems are fixed in one patch. As side
effects a possible memory leak, when descriptors are prepared, but not
submitted, and multiple races have also been fixed.Signed-off-by: Guennadi Liakhovetski
Acked-by: Paul Mundt
Acked-by: Nobuhiro Iwamatsu
Signed-off-by: Dan Williams
11 Dec, 2009
1 commit
-
Signed-off-by: Guennadi Liakhovetski
Signed-off-by: Dan Williams
09 Sep, 2009
1 commit
-
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