b19f40b8bf87bfc32b91260a90a7fa2cdebcd9bb |
21-Aug-2014 |
Ryo Kataoka <ryo.kataoka.wt@renesas.com> |
dma: rcar-audmapp: Fix for no corresponding slave ID In case of no corresponding slave ID, the audmapp_set_slave() returns -ENXIO same as sh_dmae_set_slave() of shdmac.c. DMAEngine might return wrong channel without this patch Signed-off-by: Ryo Kataoka <ryo.kataoka.wt@renesas.com> Signed-off-by: Jun Watanabe <jun.watanabe.ue@renesas.com>, Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
car-audmapp.c
|
31c1e5a1350ae8d1bc2018f5de8264266d9773e1 |
01-Aug-2014 |
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
dmaengine: Remove the context argument to the prep_dma_cyclic operation The argument is always set to NULL and never used. Remove it. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma-base.c
|
4415b03abb0aacd937010f13310b7fa437b9ad7d |
31-Jul-2014 |
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
dmaengine: shdma: Allocate cyclic sg list dynamically The sg list used to prepare cyclic DMA descriptors is currently allocated statically on the stack as an array of 32 elements. This makes the shdma_prep_dma_cyclic() function consume a lot of stack space, as reported by the compiler: drivers/dma/sh/shdma-base.c: In function ‘shdma_prep_dma_cyclic’: drivers/dma/sh/shdma-base.c:715:1: warning: the frame size of 1056 bytes is larger than 1024 bytes [-Wframe-larger-than=] Given the limited Linux kernel stack size, this could lead to stack overflows. Fix the problem by allocating the sg list dynamically. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma-base.c
|
c091ff51b4d2543b828d53ce47f66905dee870fd |
31-Jul-2014 |
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
dmaengine: shdma: Make channel filter ignore unrelated devices The shdma_chan_filter() function relies on the DMA channel being embedded in an shdma_chan structure. If this assumption isn't true, for instance when the system contains DMA channels supported by an unrelated driver, the function will crash. Avoid this by returning false directly when the channel belongs to an unrelated device. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma-base.c
|
9f2c2bb31258e11b1ebaf73bdf2a88f8afaa2dd2 |
31-Jul-2014 |
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
dmaengine: sh: Rework Kconfig and Makefile Separate helpers and drivers in the Kconfig and Makefile to improve readability and move the CONFIG_OF dependency from the Makefile to Kconfig. [pebolle@tiscali.nl: reported need to rename SHDMA_R8A73A4 instances] Reported-by: Paul Bolle <pebolle@tiscali.nl> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> [horms+renesas@verge.net.au: squashed rename of SHDMA_R8A73A4 instances] Signed-off-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
config
akefile
hdma.h
|
db0e7018191e1deb33e3ed8bb8ed89e5a4ae1ba1 |
28-Jul-2014 |
Vinod Koul <vinod.koul@intel.com> |
Merge commit 'renesas-rcar-audmapp-for-v3.17' into for-linus
|
0cdbee33ea42bfd5f61f824e258a1a0944dd2a27 |
20-Jun-2014 |
Geert Uytterhoeven <geert+renesas@glider.be> |
dmaengine: shdma: Use defines instead of hardcoded numbers Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
hdma-arm.h
hdmac.c
|
caf18c27ddb2fb8ae2a7591b908e7efb7484e459 |
18-Jun-2014 |
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
dma: rcar-audmapp: add DT support This patch adds DT support to Audio DMAC peri peri driver. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> [horms+renesas@verge.net.au: Do not add trailing blank line to rcar-audmapp.txt] [horms+renesas@verge.net.au: squashed patch to add NULL terminater to audmapp_of_match] Signed-off-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
car-audmapp.c
|
6b32fafee2bb5fcf0b3d3d04a9762d3a0212089e |
20-Jun-2014 |
Geert Uytterhoeven <geert+renesas@glider.be> |
dmaengine: shdma: Add more register documentation Also add a few definitions that were missing. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
hdmac.c
|
75bfa5f60a368b1ccacaf71bfc0376b8d9eb2e9f |
18-Jun-2014 |
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
dma: rcar-audmapp: don't keep audmapp_slave_config for each channeles Current audmapp driver is keeping audmapp_slave_config for each channeles, but, nessasary information is only "chcr". Current style (= keeping audmapp_slave_config) is not good match for DT support. Keep "chcr" instead of audmapp_slave_config Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
car-audmapp.c
|
016b10f4ea76ba2189d476b4a5f7168e57a8d7ad |
18-Jun-2014 |
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
dma: rcar-audmapp: enable .set_slave Current .set_slave callback did nothing, since it assumed src/dst address come from platform settings. But, it isn't good match to DT probing. This patch enables .set_slave callback to this issue. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
car-audmapp.c
|
877d8425072b50965f6f04ea3a127928f66db72f |
02-Jun-2014 |
Vinod Koul <vinod.koul@intel.com> |
dmaengine: sh: don't use dynamic static allocation dynamic stack allocation in kernel is considered bad as kernel stack is low and we get warns on few archs as reported by kbuild test robot >> drivers/dma/sh/shdma-base.c:671:32: sparse: Variable length array is used. >> drivers/dma/sh/shdma-base.c:701:1: warning: 'shdma_prep_dma_cyclic' uses >> dynamic stack allocation [enabled by default] Fix this by making a static array of 32 which should be sufficient for shdma_prep_dma_cyclic which only user in kernel is audio and 32 periods for audio seems quite sufficient atm Reported-by: kbuild test robot <fengguang.wu@intel.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma-base.c
|
9d9f71a804314e7d50e2fa9e6e61bc77e2d6ae1c |
02-Jun-2014 |
Vinod Koul <vinod.koul@intel.com> |
dmaengine: sh: fix print specifier warnings As documented in Documentation/printk-formats.txt we should use %zu/%zx specifiers for size_t type variables for the code to compile on different architectures. This is uncovered as COMPILE_TEST has been enabled recently for this driver drivers/dma/sh/shdma-base.c: In function 'shdma_prep_dma_cyclic': >> drivers/dma/sh/shdma-base.c:683:4: warning: format '%d' expects argument of >> type 'int', but argument 4 has type 'size_t' [-Wformat=] __func__, buf_len, period_len, slave_id); >> drivers/dma/sh/shdma-base.c:683:4: warning: format '%d' expects argument of >> type 'int', but argument 5 has type 'size_t' [-Wformat=] Reported-by: kbuild test robot <fengguang.wu@intel.com> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma-base.c
|
a68765430772fac92ad4f0dd9e33d31b4276546e |
02-Jun-2014 |
Vinod Koul <vinod.koul@intel.com> |
dmaengine: sh: make shdma_prep_dma_cyclic static kbuild test robot reports that shdma_prep_dma_cyclic should be static, since symbol is not declared, quick check revails that is the case >> drivers/dma/sh/shdma-base.c:660:32: sparse: symbol 'shdma_prep_dma_cyclic' >> was not declared. Should it be static? Reported-by: kbuild test robot <fengguang.wu@intel.com> Acked-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma-base.c
|
ebc6d2d9c8cd48c351da84dd467c0edddc149ded |
13-May-2014 |
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
dmaengine: shdma: Enable driver compilation with COMPILE_TEST This helps increasing build testing coverage. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Acked-by: Simon Horman <horms@verge.net.au> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
config
|
494ead469e1b0db060a96627c879fb444fe3970a |
13-May-2014 |
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
dmaengine: rcar-hpbdma: Include linux/err.h linux/err.h isn't implicitly included by the current headers on all platforms, resulting in compilation failures due to implicit declarations of IS_ERR and PTR_ERR. Fix this by including linux/err.h. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
car-hpbdma.c
|
830c863987aa26c2133241b61fe22bf466ccb7cc |
13-May-2014 |
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
dmaengine: sudmac: Include linux/err.h linux/err.h isn't implicitly included by the current headers on all platforms, resulting in compilation failures due to implicit declarations of IS_ERR and PTR_ERR. Fix this by including linux/err.h. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
udmac.c
|
cf5a23b78717bb547ab6c9267f05d4fe803bd853 |
13-May-2014 |
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
dmaengine: sudmac: Keep #include sorted alphabetically This helps detecting duplicate includes. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
udmac.c
|
c46b9af26f1a971f7727328ba1cf4d702545cf2f |
13-May-2014 |
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
dmaengine: shdmac: Include linux/err.h linux/err.h isn't implicitly included by the current headers on all platforms, resulting in compilation failures due to implicit declarations of IS_ERR and PTR_ERR. Fix this by including linux/err.h. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdmac.c
|
a5cdc1c15562c0c68e7c418693f3f884ec838a06 |
13-May-2014 |
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
dmaengine: shdmac: Keep #include sorted alphabetically This helps detecting duplicate includes. Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdmac.c
|
dfbb85cab5f0819d0424a3637b03e7892704fa42 |
03-Apr-2014 |
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
DMA: shdma: add cyclic transfer support This patch add cyclic transfer support and enables dmaengine_prep_dma_cyclic() Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> [reflown changelog for readablity] Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma-base.c
|
91ea74e9ec5c584eef1dcd69554b8315c1ebb0d9 |
03-Apr-2014 |
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
DMA: shdma: tidyup callback chunk finder Current shdma is using "last" which indicates last desc which needs to have callback function. But that desc's chunks is always 1, we can use it as finder Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> [reflown changelog for readablity] Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma-base.c
|
e43a34e3ec5d1b14a11c3220f5a12aa797d73cd1 |
11-Mar-2014 |
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
shdma: add R-Car Audio DMAC peri peri driver Add support Audio DMAC peri peri driver for Renesas R-Car Gen2 SoC, using 'shdma-base' DMA driver framework. Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> [fixed checkpatch error] Signed-off-by: Vinod Koul <vinod.koul@intel.com>
config
akefile
car-audmapp.c
|
51455ec4f0d6aaff7371b51e8155e0d4bec1aca5 |
11-Dec-2013 |
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
DMA: shdma: Make sh_dmae_pm static The structure isn't used outside of its compilation unit. Make it static. Cc: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Cc: Vinod Koul <vinod.koul@intel.com> Cc: dmaengine@vger.kernel.org Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdmac.c
|
52d6a5ee101bf0e6c1fc5373eebe5c3307e4a0ca |
11-Dec-2013 |
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
DMA: shdma: Fix warnings due to declared but unused symbols Several functions and variables are use on SH_CPU4 or ARM only. Guard their declaration with conditional compilation directives to avoid warnings. Cc: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Cc: Vinod Koul <vinod.koul@intel.com> Cc: dmaengine@vger.kernel.org Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdmac.c
|
42e4a12a0d92d09de66d8b5b2c85855b8051c15e |
11-Dec-2013 |
Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> |
DMA: shdma: Fix warnings due to improper casts and printk formats Use the %zu and %pad printk specifiers to print size_t and dma_addr_t variables, and cast pointers to uintptr_t instead of unsigned int where applicable. This fixes warnings on platforms where pointers and/or dma_addr_t have a different size than int Cc: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Cc: Vinod Koul <vinod.koul@intel.com> Cc: dmaengine@vger.kernel.org Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma-base.c
hdma-of.c
udmac.c
|
5affdeea8fd07f89709d39585ec47fb29f73247c |
29-Oct-2013 |
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
rcar-hpbdma: initialise plane information when halted Plane information should be initialized when halted. It may restart from the wrong plane without this patch. Reviewed-by: Max Filippov <max.filippov@cogentembedded.com> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
car-hpbdma.c
|
b3000cd835a6116c0a7d0f8e3df5be26c2138d86 |
29-Oct-2013 |
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
rcar-hpbdma: fixup channel busy check for double plane The device busy check method is different between single and double planes. It will always return "busy" without this patch if channel used as double plane. Reviewed-by: Max Filippov <max.filippov@cogentembedded.com> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
car-hpbdma.c
|
f1eab074df85a05dabfd368b6f64e7de63070301 |
29-Oct-2013 |
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
rcar-hpbdma: add max transfer size shdma_chan_probe() can set max transfer size, but it will be PAGE_SIZE with out this patch. Reviewed-by: Max Filippov <max.filippov@cogentembedded.com> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
car-hpbdma.c
|
f0dad6e701cb66301287074c39183c7312139530 |
30-Oct-2013 |
Vinod Koul <vinod.koul@intel.com> |
Merge branch 'dma_complete' into next
|
b967aecf1714c10d1e6c045e43b6385884f1ca77 |
30-Oct-2013 |
Vinod Koul <vinod.koul@intel.com> |
Merge branch 'for-linus' into next Conflicts: drivers/dma/edma.c Moved the memory leak fix post merge Signed-off-by: Vinod Koul <vinod.koul@intel.com>
|
a8d8d268c1b201eb8449cebf4d5958c34dbc3ccc |
16-Oct-2013 |
Vinod Koul <vinod.koul@intel.com> |
dmaengine: sh: use DMA_COMPLETE for dma completion status Acked-by: Dan Williams <dan.j.williams@intel.com> Acked-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma-base.c
|
174b537ac2b8fe1bac31039185b80f873716c5a1 |
13-Oct-2013 |
Michael Opdenacker <michael.opdenacker@free-electrons.com> |
dma: misc: remove deprecated IRQF_DISABLED This patch proposes to remove the use of the IRQF_DISABLED flag It's a NOOP since 2.6.35 and it will be removed one day. Signed-off-by: Michael Opdenacker <michael.opdenacker@free-electrons.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdmac.c
|
08d08bcdee30d3a28426bd60dfbdae44b36250bc |
26-Sep-2013 |
Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> |
rcar-hpbdma: add parameter to set_slave() method Commit 4981c4dc194efb18f0e9a02f1b43e926f2f0d2bb (DMA: shdma: switch DT mode to use configuration data from a match table) added a new parameter to set_slave() method but unfortunately got merged later than commit c4f6c41ba790bbbfcebb4c47a (dma: add driver for R-Car HPB-DMAC), so that the HPB-DMAC driver retained the old prototype which caused this warning: drivers/dma/sh/rcar-hpbdma.c:485: warning: initialization from incompatible pointer type The newly added parameter is used to override DMA slave address from 'struct hpb_dmae_slave_config', so we have to add the 'slave_addr' field to 'struct hpb_dmae_chan', conditionally assign it in set_slave() method, and return in slave_addr() method. Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Tested-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
car-hpbdma.c
|
cdeb5c033f0389c44e5b36cafd623bdf44bbe25c |
26-Sep-2013 |
Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> |
rcar-hpbdma: remove shdma_free_irq() calls Commit c1c63a14f4f2419d093acd7164eccdff315baa86 (DMA: shdma: switch to managed resource allocation) got rid of shdma_free_irq() but unfortunately got merged later than commit c4f6c41ba790bbbfcebb4c47a709ac8ff1fe1af9 (dma: add driver for R-Car HPB-DMAC), so that the HPB-DMAC driver retained the calls and got broken: drivers/dma/sh/rcar-hpbdma.c: In function `hpb_dmae_alloc_chan_resources': drivers/dma/sh/rcar-hpbdma.c:435: error: implicit declaration of function `shdma_free_irq' Fix this compilation error by removing the remaining shdma_free_irq() calls. Reported-by: Simon Horman <horms@verge.net.au> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Tested-by: Simon Horman <horms+renesas@verge.net.au> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
car-hpbdma.c
|
ec5b103ecfde929004b691f29183255aeeadecd5 |
10-Sep-2013 |
Linus Torvalds <torvalds@linux-foundation.org> |
Merge branch 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma Pull slave-dmaengine updates from Vinod Koul: "This pull brings: - Andy's DW driver updates - Guennadi's sh driver updates - Pl08x driver fixes from Tomasz & Alban - Improvements to mmp_pdma by Daniel - TI EDMA fixes by Joel - New drivers: - Hisilicon k3dma driver - Renesas rcar dma driver - New API for publishing slave driver capablities - Various fixes across the subsystem by Andy, Jingoo, Sachin etc..." * 'for-linus' of git://git.infradead.org/users/vkoul/slave-dma: (94 commits) dma: edma: Remove limits on number of slots dma: edma: Leave linked to Null slot instead of DUMMY slot dma: edma: Find missed events and issue them ARM: edma: Add function to manually trigger an EDMA channel dma: edma: Write out and handle MAX_NR_SG at a given time dma: edma: Setup parameters to DMA MAX_NR_SG at a time dmaengine: pl330: use dma_set_max_seg_size to set the sg limit dmaengine: dma_slave_caps: remove sg entries dma: replace devm_request_and_ioremap by devm_ioremap_resource dma: ste_dma40: Fix potential null pointer dereference dma: ste_dma40: Remove duplicate const dma: imx-dma: Remove redundant NULL check dma: dmagengine: fix function names in comments dma: add driver for R-Car HPB-DMAC dma: k3dma: use devm_ioremap_resource() instead of devm_request_and_ioremap() dma: imx-sdma: Staticize sdma_driver_data structures pch_dma: Add MODULE_DEVICE_TABLE dmaengine: PL08x: Add cyclic transfer support dmaengine: PL08x: Fix reading the byte count in cctl dmaengine: PL08x: Add support for different maximum transfer size ...
|
265d9c673d47fcd5812d69dc07104b706285de56 |
02-Sep-2013 |
Vinod Koul <vinod.koul@intel.com> |
Merge branch 'topic/sh' into for-linus Conflicts: drivers/dma/sh/Kconfig drivers/dma/sh/shdmac.c Signed-off-by: Vinod Koul <vinod.koul@intel.com>
|
4770ee44359ad454992d544cf14f8d330a93f5ca |
19-Aug-2013 |
Julia Lawall <Julia.Lawall@lip6.fr> |
dma: replace devm_request_and_ioremap by devm_ioremap_resource Use devm_ioremap_resource instead of devm_request_and_ioremap. This was done using the semantic patch scripts/coccinelle/api/devm_ioremap_resource.cocci The relevant call to platform_get_resource was manually moved down to the call to devm_ioremap_resource. Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
udmac.c
|
c4f6c41ba790bbbfcebb4c47a709ac8ff1fe1af9 |
24-Aug-2013 |
Max Filippov <max.filippov@cogentembedded.com> |
dma: add driver for R-Car HPB-DMAC Add support for HPB-DMAC found in Renesas R-Car SoCs, using 'shdma-base' DMA driver framework. Based on the original patch by Phil Edworthy <phil.edworthy@renesas.com>. Signed-off-by: Max Filippov <max.filippov@cogentembedded.com> [Sergei: removed useless #include, sorted #include's, fixed HPB_DMA_TCR_MAX, fixed formats and removed line breaks in the dev_dbg() calls, rephrased and added IRQ # to the shdma_request_irq() failure message, added MODULE_AUTHOR(), removed '__init'/'__exit' annotations from the probe()/remove() methods, removed '__initdata' annotation from 'hpb_dmae_driver', fixed guard macro name in the header file, fixed #define ASYNCRSTR_ASRST20, added #define ASYNCRSTR_ASRST24, added the necessary runtime PM calls to the probe() and remove() methods, handled errors returned by dma_async_device_register(), beautified comments and #define's.] Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
config
akefile
car-hpbdma.c
|
e5ffa401eacd0e74178e20ba932200fc9fe41c07 |
26-Aug-2013 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
DMA: shdma: fix a bad merge - remove free_irq() A bad merge resulted in a left-over free_irq() call. This patch removes it. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdmac.c
|
eb262a5419708319a3174d4ddf2777f472779182 |
26-Aug-2013 |
Jingoo Han <jg1.han@samsung.com> |
dma: sh: remove unnecessary platform_set_drvdata() The driver core clears the driver data to NULL after device_release or on probe failure. Thus, it is not needed to manually clear the device driver data to NULL. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Acked-by: Simon Horman <horms+renesas@verge.net.au> Acked-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdmac.c
udmac.c
|
1e69653d40f1a280dbfef48b0c62473ac415dd57 |
02-Aug-2013 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
DMA: shdma: add r8a73a4 DMAC data to the device ID table This configuration data will be used, when DMAC DT support is added to r8a73a4. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
config
akefile
hdma-r8a73a4.c
hdma.h
hdmac.c
|
8eb742a0914cd79053d092a14bfac5315993dd61 |
02-Aug-2013 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
DMA: shdma: add a header with common for ARM SoCs defines All shdma DMACs on ARM SoCs share certain register layout patterns, which are currently defined in arch/arm/mach-shmobile/include/mach/dma-register.h. That header is included by SoC-specific setup-*.c files to be used in DMAC platform data. That header, however, cannot be directly used by the driver. This patch copies those defines into a driver-local header to be used by Device Tree configurations. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma-arm.h
|
4620ad5419612fcd9ab412410440d3a7e8a9a90a |
02-Aug-2013 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
DMA: shdma: remove private and unused defines from a global header Macros, named like TEND or SAR lack a namespace and are too broadly named for a global header. Besides, they aren't needed globally. Move them to where they belong - into the driver. Some other macros aren't used at all, remove them. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdmac.c
|
4981c4dc194efb18f0e9a02f1b43e926f2f0d2bb |
02-Aug-2013 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
DMA: shdma: switch DT mode to use configuration data from a match table This facilitates DMAC DT support by eliminating the need in AUXDATA and avoiding creating complex DT data. This also fits well with DMAC devices, of which SoCs often have multiple identical copies and it is perfectly valid to use a single configuration data set for all of them. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
akefile
hdma-base.c
hdma-of.c
hdma.c
hdma.h
hdmac.c
udmac.c
|
2833c47e0ecc74b300716e56810143125ad7a3f1 |
02-Aug-2013 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
DMA: shdma: make a pointer const Platform data shouldn't be changed at run-time, so, pointers to it should be const. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma.c
hdma.h
|
cc6b0f023875a67f0c2ca7211fe6859d60b14852 |
02-Aug-2013 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
DMA: sudmac: fix compiler warning Fix the following compiler warning: drivers/dma/sh/sudmac.c: In function 'sudmac_chan_remove': drivers/dma/sh/sudmac.c:302: warning: unused variable 'sc' Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
udmac.c
|
c1c63a14f4f2419d093acd7164eccdff315baa86 |
02-Jul-2013 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
DMA: shdma: switch to managed resource allocation Switch shdma to using devm_* managed functions for allocation of memory, requesting IRQs, mapping IO resources etc. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma-base.c
hdma.c
udmac.c
|
ca8b387803072a16baf6d8090591b10bfdf4e253 |
10-Jul-2013 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
DMA: shdma: support the new CHCLR register layout On newer r-car SoCs the CHCLR register only contains one bit per channel, to which a 1 has to be written to reset the channel. Older SoC versions had one CHCLR register per channel, to which a 0 must be written to reset the channel and clear its buffers. This patch adds support for the newer layout. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma.c
|
115357e9774ff8d70a84d3c31f271209913637b0 |
02-Jul-2013 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
DMA: shdma: switch all __iomem pointers to void In the shdma driver __iomem pointers are used to point to hardware registers. Using typed pointers like "u32 __iomem *" in this case is inconvenient, because then offsets, added to such pointers, have to be devided by sizeof(u32) or similar. Switch the driver to use void pointers, which avoids this clumsiness. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma.c
hdma.h
|
a28a94e84bca8ba7db66bcc0db1bea51840b08b2 |
02-Jul-2013 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
DMA: shdma: fix CHCLR register address calculation struct sh_dmae_device::chan_reg is a pointer to u32, therefore when adding offsets to it care should be taken to add offsets in sizeof(u32) units, not in bytes. This patch corrects such a bug. While at it we also remove the redundant parameter of the affected function. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma.c
|
d4adcc0160404c3237fe6ffa09dd2dd039dd3975 |
30-Jul-2013 |
Jingoo Han <jg1.han@samsung.com> |
dma: use dev_get_platdata() Use the wrapper function for retrieving the platform data instead of accessing dev->platform_data directly. Signed-off-by: Jingoo Han <jg1.han@samsung.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma-of.c
hdma.c
udmac.c
|
3c4d9276626c93477af0b0b9d46b4dcb37e2eed2 |
24-Jul-2013 |
Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> |
shdma: fixup sh_dmae_get_partial() calculation error sh_desc->hw.tcr is controlling real data size, and, register TCR is controlling data transfer count which was xmit_shifted value of hw.tcr. Current sh_dmae_get_partial() is calculating in different unit. This patch fixes it. This bug has been present since c014906a870ce70e009def0c9d170ccabeb0be63 ("dmaengine: shdma: extend .device_terminate_all() to record partial transfer"), which was added in 2.6.34-rc1. Cc: Vinod Koul <vinod.koul@intel.com> Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Acked-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
hdma.c
|
67eacc1583909d0588c8d5d80c16298c899a6382 |
18-Jun-2013 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
DMA: shdma: add DT support This patch adds Device Tree support to the shdma driver. No special DT properties are used, only standard DMA DT bindings are implemented. Since shdma controllers reside on SoCs, their configuration is SoC-specific and shall be passed to the driver from the SoC platform data, using the auxdata procedure. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Acked-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
akefile
hdma-base.c
hdma-of.c
hdma.c
|
fa74326c44767626a5ae794b29d54103e2259e64 |
06-Jun-2013 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
DMA: shdma: (cosmetic) don't re-calculate a pointer Use an existing pointer instead of retrieving it again. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski+renesas@gmail.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma.c
|
18a1053f7b85acdda2428c9f694101070cb8e62a |
23-Apr-2013 |
Shimoda, Yoshihiro <yoshihiro.shimoda.uh@renesas.com> |
sudmac: add support for SUDMAC Some Renesas USB modules have SUDMAC. This patch supports it using the shdma-base driver. Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> Reviewed-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
config
akefile
udmac.c
|
189b4ee8e9daf349db80f47b81edec67d223a953 |
23-Apr-2013 |
Shimoda, Yoshihiro <yoshihiro.shimoda.uh@renesas.com> |
dma: sh: add Kconfig This patch adds Kconfig in the drivers/dma/sh. This patch also adds a new config "SH_DMAE_BASE" and the "config SH_DMAE" depends on it. Since some drivers (e.g. sh_mmcif.c) depends on shdma-base.c if CONFIG_DMA_ENGINE=y, the "config SH_DMAE_BASE" is set as "bool". Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> Acked-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
config
akefile
|
5115f3c19d17851aaff5a857f55b4a019c908775 |
26-Feb-2013 |
Linus Torvalds <torvalds@linux-foundation.org> |
Merge branch 'next' of git://git.infradead.org/users/vkoul/slave-dma Pull slave-dmaengine updates from Vinod Koul: "This is fairly big pull by my standards as I had missed last merge window. So we have the support for device tree for slave-dmaengine, large updates to dw_dmac driver from Andy for reusing on different architectures. Along with this we have fixes on bunch of the drivers" Fix up trivial conflicts, usually due to #include line movement next to each other. * 'next' of git://git.infradead.org/users/vkoul/slave-dma: (111 commits) Revert "ARM: SPEAr13xx: Pass DW DMAC platform data from DT" ARM: dts: pl330: Add #dma-cells for generic dma binding support DMA: PL330: Register the DMA controller with the generic DMA helpers DMA: PL330: Add xlate function DMA: PL330: Add new pl330 filter for DT case. dma: tegra20-apb-dma: remove unnecessary assignment edma: do not waste memory for dma_mask dma: coh901318: set residue only if dma is in progress dma: coh901318: avoid unbalanced locking dmaengine.h: remove redundant else keyword dma: of-dma: protect list write operation by spin_lock dmaengine: ste_dma40: do not remove descriptors for cyclic transfers dma: of-dma.c: fix memory leakage dw_dmac: apply default dma_mask if needed dmaengine: ioat - fix spare sparse complain dmaengine: move drivers/of/dma.c -> drivers/dma/of-dma.c ioatdma: fix race between updating ioat->head and IOAT_COMPLETION_PENDING dw_dmac: add support for Lynxpoint DMA controllers dw_dmac: return proper residue value dw_dmac: fill individual length of descriptor ...
|
855372c013bbad8369223f7c75242bd3c94f9345 |
15-Jan-2013 |
Cong Ding <dinggnu@gmail.com> |
dma: sh/shdma-base.c: remove unnecessary null pointer check the variable chan is dereferenced in line 635, so it is no reason to check null again in line 641. Signed-off-by: Cong Ding <dinggnu@gmail.com> Signed-off-by: Vinod Koul <vinod.koul@intel.com>
hdma-base.c
|
7c1119bdd650fa58dad8157bc75c5fcf6ed97843 |
28-Nov-2012 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
dma: sh: Don't use ENODEV for failing slave lookup If dmaengine driver's .device_alloc_chan_resources() method returns -ENODEV, dma_request_channel() will decide, that the driver has been removed and will remove the device from its list. To prevent this use ENXIO if a slave lookup fails. Reported-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com> Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Cc: stable@vger.kernel.org Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
hdma.c
|
4bf27b8b333bcd291664fd0f7d129099d474a23b |
22-Dec-2012 |
Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
Drivers: dma: remove __dev* attributes. CONFIG_HOTPLUG is going away as an option. As a result, the __dev* markings need to be removed. This change removes the use of __devinit, __devexit_p, __devinitconst, and __devexit from these drivers. Based on patches originally written by Bill Pemberton, but redone by me in order to handle some of the coding style issues better, by hand. Cc: Bill Pemberton <wfp5p@virginia.edu> Cc: Viresh Kumar <viresh.linux@gmail.com> Cc: Dan Williams <djbw@fb.com> Cc: Vinod Koul <vinod.koul@intel.com> Cc: Barry Song <baohua.song@csr.com> Cc: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Cc: Alexander Duyck <alexander.h.duyck@intel.com> Cc: Russell King <rmk+kernel@arm.linux.org.uk> Cc: Linus Walleij <linus.walleij@linaro.org> Cc: Jassi Brar <jassisinghbrar@gmail.com> Cc: Dave Jiang <dave.jiang@intel.com> Cc: Bill Pemberton <wfp5p@virginia.edu> Cc: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
hdma.c
|
463a1f8b3ceebe990ca9a8c7cc2e51ee42cb48eb |
19-Nov-2012 |
Bill Pemberton <wfp5p@virginia.edu> |
dma: remove use of __devinit CONFIG_HOTPLUG is going away as an option so __devinit is no longer needed. Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Cc: Li Yang <leoli@freescale.com> Cc: Zhang Wei <zw@zh-kernel.org> Cc: Barry Song <baohua.song@csr.com> Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
hdma.c
|
a7d6e3ec28bba30d1409d70de1958edc6d9109d7 |
19-Nov-2012 |
Bill Pemberton <wfp5p@virginia.edu> |
dma: remove use of __devexit_p CONFIG_HOTPLUG is going away as an option so __devexit_p is no longer needed. Signed-off-by: Bill Pemberton <wfp5p@virginia.edu> Acked-by: Barry Song <baohua.song@csr.com> Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Acked-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
hdma.c
|
4f46f8ac80416b0e8fd3aba6a0d842205fb29140 |
30-Jul-2012 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
dmaengine: shdma: restore partial transfer calculation The recent shdma driver split has mistakenly removed support for partial DMA transfer size calculation on forced termination. This patch restores it. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: Vinod Koul <vinod.koul@linux.intel.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
hdma-base.c
hdma.c
|
1ff8df4f5388ad66bd7d0199b5839a2e3345c055 |
05-Jul-2012 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
dma: sh: provide a migration path for slave drivers to stop using .private This patch extends the sh dmaengine driver to support the preferred channel selection and configuration method, instead of using the "private" field from struct dma_chan. We add a standard filter function to be used by slave drivers instead of implementing their own ones, and add support for the DMA_SLAVE_CONFIG control operation, which must accompany the new channel selection method. We still support the legacy .private channel allocation method to cater for a smooth driver migration. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> [applied a trvial checkpath fix] Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
hdma-base.c
hdma.c
|
c2cdb7e4d16394fc51dc5c2c5b3e7c3733bdfaac |
05-Jul-2012 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
dma: sh: use an integer slave ID to improve API compatibility Initially struct shdma_slave has been introduced with the only member - an unsigned slave ID - to describe common properties of DMA slaves in an extensible way. However, experience shows, that a slave ID is indeed the only parameter, needed to identify DMA slaves. This is also, what is used by the core dmaengine API in struct dma_slave_config. We switch to using the slave_id directly, instead of passing a pointer to struct shdma_slave to improve compatibility with the core. We also make the slave_id signed for easier error checking. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
hdma-base.c
hdma.c
|
ecf90fbbdc66cde6f5fa25d88541112b9baac459 |
05-Jul-2012 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
dmaengine: shdma: prepare to stop using struct dma_chan::private Using struct dma_chan::private is deprecated. To update the shdma driver to stop using it we first have to eliminate internal runtime uses of it. After that we will also be able to stop using it for channel configuration. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
hdma-base.c
hdma.c
hdma.h
|
341f4dc5dcecbf60f038055db177845b9af480ed |
05-Jul-2012 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
dmaengine: shdma: (cosmetic) simplify a static function dmae_find_slave() needs only the slave_id field from the slave object, no need to pass the pointer to the object, pass the slave_id directly. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
hdma.c
|
ce3a1ab74264b860450709e4bd0dcfc2d0bfc7f8 |
09-May-2012 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
dma: shdma: convert to the shdma base library The shdma base library has originally been extracted from the shdma driver, which now can be converted to actually use it. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
hdma.c
hdma.h
|
9a7b8e002e331d0599127f16613c32f425a14f2c |
09-May-2012 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
dmaengine: add an shdma-base library This patch extracts code from shdma.c, that does not directly deal with hardware implementation details and can be re-used with diverse DMA controller variants, found on SH-based SoCs. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Cc: Sascha Hauer <s.hauer@pengutronix.de> Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
akefile
hdma-base.c
|
e95be94b8c25220aca09ed78c176f9b55a1482c8 |
02-Jul-2012 |
Guennadi Liakhovetski <g.liakhovetski@gmx.de> |
dma: move shdma driver to an own directory The shdma driver is going to be split into multiple files. To make this more convenient move it to an own directory. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Signed-off-by: Vinod Koul <vinod.koul@linux.intel.com>
akefile
hdma.c
hdma.h
|