09 Jun, 2017
2 commits
-
The function .fsl_edma_irq_init() has been called twice in .probe(), which
cause all dma controller registered failed.Signed-off-by: Fugang Duan
-
EDMA controller will loss power on i.MX7ULP VLLS mode, then registers
are set to HW reset default value that cause EDMA cannot work after
system wake up. So the patch is to restore eDMA registers status after
system exit from VLLS mode.Signed-off-by: Fugang Duan
(cherry picked from commit:bc15f814383d)Conflicts:
drivers/dma/fsl-edma.c
08 Jun, 2017
3 commits
-
- correct DMAMUX enable bit.
- correct mapping the DMAMUX source and slot.Signed-off-by: Fugang Duan
-
Calculate the rela count for the case that eDMA stop after get eeop signal.
Signed-off-by: Fugang Duan
Signed-off-by: Robin Gong -
Updated the edma driver to support edma2 on ULP1.
Signed-off-by: Shenwei Wang
Signed-off-by: Robin Gong
23 Feb, 2017
1 commit
-
Add fsl_chan->edesc NULL when calling .fsl_edma_desc_residue() to avoid
NULL pointer access.Signed-off-by: Fugang Duan
16 Jul, 2016
2 commits
-
drivers should ensure that tasklets are killed, so that they can't be
executed after driver remove is executed, so ensure they are killed.This driver used vchan tasklets, so those need to be killed.
Signed-off-by: Vinod Koul
Cc: Jingchang Lu
Cc: Peter Griffin -
dmaengine device should explicitly call devm_free_irq() when using
devm_request_irq().The irq is still ON when devices remove is executed and irq should be
quiesced before remove is completed.Signed-off-by: Vinod Koul
Cc: Jingchang Lu
Cc: Peter Griffin
22 Jun, 2016
2 commits
-
It is useful to print the error code as part of the error
message.Signed-off-by: Peter Griffin
Signed-off-by: Vinod Koul -
Currently fsl-edma doesn't clk_disable_unprepare()
its clocks on error conditions. This patch adds a
fsl_disable_clocks helper for this, and also only
disables clocks which were enabled if encountering
an error whilst enabling clocks.Signed-off-by: Peter Griffin
Signed-off-by: Vinod Koul
05 Dec, 2015
1 commit
-
This add power management suspend/resume support for the fsl-edma
driver.eDMA acted as a basic function used by others. What it needs to do
is the two steps below to support power management.In fsl_edma_suspend_late:
Check whether the DMA chan is idle, if it is not idle disable DMA
request.In fsl_edma_resume_early:
Enable the eDMA and wait for being used.Signed-off-by: Yuan Yao
Signed-off-by: Vinod Koul
25 Jun, 2015
1 commit
-
Clear pending interrupts before requesting interrupts and move
interrupt initialization after channels have been initialized.
This avoids a NULL pointer dereference panic when using kexec
while DMA requests were running.Signed-off-by: Stefan Agner
Signed-off-by: Vinod Koul
22 Dec, 2014
3 commits
-
Now that the generic slave caps code can make use of the device assigned
capabilities, instead of relying on a callback to be implemented.Make use of this code.
Signed-off-by: Maxime Ripard
Signed-off-by: Vinod Koul -
Split the device_control callback of the Freescale EDMA driver to make use
of the newly introduced callbacks, that will eventually be used to retrieve
slave capabilities.Signed-off-by: Maxime Ripard
Signed-off-by: Vinod Koul -
The dmaengine header abbreviates destination as at least two different strings.
Make a coherent use of a single one.Signed-off-by: Maxime Ripard
Acked-by: Mark Brown
Acked-by: Laurent Pinchart
Acked-by: Stephen Warren
Signed-off-by: Vinod Koul
15 Dec, 2014
1 commit
-
Pull driver core update from Greg KH:
"Here's the set of driver core patches for 3.19-rc1.They are dominated by the removal of the .owner field in platform
drivers. They touch a lot of files, but they are "simple" changes,
just removing a line in a structure.Other than that, a few minor driver core and debugfs changes. There
are some ath9k patches coming in through this tree that have been
acked by the wireless maintainers as they relied on the debugfs
changes.Everything has been in linux-next for a while"
* tag 'driver-core-3.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (324 commits)
Revert "ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries"
fs: debugfs: add forward declaration for struct device type
firmware class: Deletion of an unnecessary check before the function call "vunmap"
firmware loader: fix hung task warning dump
devcoredump: provide a one-way disable function
device: Add dev__once variants
ath: ath9k: use debugfs_create_devm_seqfile() helper for seq_file entries
ath: use seq_file api for ath9k debugfs files
debugfs: add helper function to create device related seq_file
drivers/base: cacheinfo: remove noisy error boot message
Revert "core: platform: add warning if driver has no owner"
drivers: base: support cpu cache information interface to userspace via sysfs
drivers: base: add cpu_device_create to support per-cpu devices
topology: replace custom attribute macros with standard DEVICE_ATTR*
cpumask: factor out show_cpumap into separate helper function
driver core: Fix unbalanced device reference in drivers_probe
driver core: fix race with userland in device_add()
sysfs/kernfs: make read requests on pre-alloc files use the buffer.
sysfs/kernfs: allow attributes to request write buffer be pre-allocated.
fs: sysfs: return EGBIG on write if offset is larger than file size
...
09 Dec, 2014
1 commit
-
The offset of all 8-/16-bit registers in big-endian eDMA model are
swapped in a 32-bit size opposite those in the little-endian model.The hardware Scatter/Gather requires the subsequent TCDs stored in memory
in little endian independent of the register endian model, the eDMA engine
will do the swap if need.This patch also use regular assignment for tcd variables r/w
instead of with io function previously that may not always be true.Signed-off-by: Jingchang Lu
Signed-off-by: Vinod Koul
08 Dec, 2014
1 commit
-
If the current transfer control descriptor (TCD) was not yet started,
the address will be the same as the initial address. Hence test if the
current address is less than or equal to the start address of each TCD.Signed-off-by: Stefan Agner
Signed-off-by: Vinod Koul
20 Oct, 2014
1 commit
-
A platform_driver does not need to set an owner, it will be populated by the
driver core.Signed-off-by: Wolfram Sang
04 Aug, 2014
1 commit
-
The argument is always set to NULL and never used. Remove it.
Signed-off-by: Laurent Pinchart
Signed-off-by: Vinod Koul
25 Jul, 2014
1 commit
-
Signed-off-by: Jingchang Lu
Tested-by: Stefan Agner
Signed-off-by: Vinod Koul
16 Apr, 2014
1 commit
-
Because of some driver base on DMA, changed the initcall order as subsys_initcall.
Signed-off-by: Yuan Yao
Signed-off-by: Vinod Koul
06 Mar, 2014
1 commit
-
The static checker reports following warning:
drivers/dma/fsl-edma.c:732 fsl_edma_xlate()
error: we previously assumed 'chan' could be null (see line 737)
The changes of the loop cursor in the iteration may result in
NULL dereference when dma_get_slave_channel failed but loop
will continue. So use list_for_each_entry_safe() instead of
list_for_each_entry() to against this.Reported-by: Dan Carpenter
Signed-off-by: Jingchang Lu
Signed-off-by: Vinod Koul
18 Feb, 2014
1 commit
-
Add Freescale enhanced direct memory(eDMA) controller support.
This module can be found on Vybrid and LS-1 SoCs.Signed-off-by: Alison Wang
Signed-off-by: Jingchang Lu
Acked-by: Arnd Bergmann
Signed-off-by: Vinod Koul