From 75ce2b93307105d10a21e995ab27ec30cc50aaf3 Mon Sep 17 00:00:00 2001 From: dkl Date: Mon, 9 Mar 2015 11:34:14 +0800 Subject: [PATCH] DMA: rk3368: add dma clk enable/disable Signed-off-by: dkl --- arch/arm64/boot/dts/rk3368.dtsi | 5 +++++ drivers/amba/bus.c | 12 ++++++------ 2 files changed, 11 insertions(+), 6 deletions(-) mode change 100644 => 100755 drivers/amba/bus.c diff --git a/arch/arm64/boot/dts/rk3368.dtsi b/arch/arm64/boot/dts/rk3368.dtsi index af2b7394195d..adfdb51b94ce 100755 --- a/arch/arm64/boot/dts/rk3368.dtsi +++ b/arch/arm64/boot/dts/rk3368.dtsi @@ -298,14 +298,19 @@ pdma0: pdma@ff600000 { compatible = "arm,pl330", "arm,primecell"; reg = <0x0 0xff600000 0x0 0x4000>; + clocks = <&clk_gates12 11>; + clock-names = "apb_pclk"; interrupts = , ; #dma-cells = <1>; + }; pdma1: pdma@ff250000 { compatible = "arm,pl330", "arm,primecell"; reg = <0x0 0xff250000 0x0 0x4000>; + clocks = <&clk_gates19 3>; + clock-names = "apb_pclk"; interrupts = , ; #dma-cells = <1>; diff --git a/drivers/amba/bus.c b/drivers/amba/bus.c old mode 100644 new mode 100755 index 9d3a90397d16..0cde10e912af --- a/drivers/amba/bus.c +++ b/drivers/amba/bus.c @@ -361,9 +361,9 @@ static int amba_probe(struct device *dev) int ret; do { - //ret = amba_get_enable_pclk(pcdev); - //if (ret) - // break; + ret = amba_get_enable_pclk(pcdev); + if (ret) + break; pm_runtime_get_noresume(dev); pm_runtime_set_active(dev); @@ -377,7 +377,7 @@ static int amba_probe(struct device *dev) pm_runtime_set_suspended(dev); pm_runtime_put_noidle(dev); - //amba_put_disable_pclk(pcdev); + amba_put_disable_pclk(pcdev); } while (0); return ret; @@ -490,7 +490,7 @@ int amba_device_add(struct amba_device *dev, struct resource *parent) goto err_release; } -// ret = amba_get_enable_pclk(dev); + ret = amba_get_enable_pclk(dev); ret = 0; if (ret == 0) { u32 pid, cid; @@ -506,7 +506,7 @@ int amba_device_add(struct amba_device *dev, struct resource *parent) cid |= (readl(tmp + size - 0x10 + 4 * i) & 255) << (i * 8); -// amba_put_disable_pclk(dev); + amba_put_disable_pclk(dev); if (cid == AMBA_CID || cid == CORESIGHT_CID) dev->periphid = pid; -- 2.34.1