From def6cbfb21cfbd2cad66937cfd5ac5cea7acc726 Mon Sep 17 00:00:00 2001 From: hjc Date: Thu, 19 Mar 2015 16:47:22 +0800 Subject: [PATCH] rk3368 lcdc: add power domain control for lcdc Signed-off-by: hjc --- arch/arm64/boot/dts/rk3368.dtsi | 4 ++-- drivers/video/rockchip/lcdc/rk3368_lcdc.c | 8 ++++---- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/arch/arm64/boot/dts/rk3368.dtsi b/arch/arm64/boot/dts/rk3368.dtsi index b78cfcd3bde3..f33094081d1d 100755 --- a/arch/arm64/boot/dts/rk3368.dtsi +++ b/arch/arm64/boot/dts/rk3368.dtsi @@ -805,8 +805,8 @@ *pinctrl-1 = <&lcdc_gpio>; */ status = "disabled"; - clocks = <&clk_gates16 5>, <&dclk_vop0>, <&clk_gates16 6>, <&clk_npll>; - clock-names = "aclk_lcdc", "dclk_lcdc", "hclk_lcdc", "sclk_pll"; + clocks = <&clk_gates16 5>, <&dclk_vop0>, <&clk_gates16 6>, <&clk_npll>, <&pd_vop>; + clock-names = "aclk_lcdc", "dclk_lcdc", "hclk_lcdc", "sclk_pll", "pd_lcdc"; }; adc: adc@ff100000 { diff --git a/drivers/video/rockchip/lcdc/rk3368_lcdc.c b/drivers/video/rockchip/lcdc/rk3368_lcdc.c index 151ee9457678..526dc6dc667a 100755 --- a/drivers/video/rockchip/lcdc/rk3368_lcdc.c +++ b/drivers/video/rockchip/lcdc/rk3368_lcdc.c @@ -152,7 +152,7 @@ static int rk3368_lcdc_clk_enable(struct lcdc_device *lcdc_dev) clk_prepare_enable(lcdc_dev->hclk); clk_prepare_enable(lcdc_dev->dclk); clk_prepare_enable(lcdc_dev->aclk); - /*clk_prepare_enable(lcdc_dev->pd);*/ + clk_prepare_enable(lcdc_dev->pd); spin_lock(&lcdc_dev->reg_lock); lcdc_dev->clk_on = 1; spin_unlock(&lcdc_dev->reg_lock); @@ -175,7 +175,7 @@ static int rk3368_lcdc_clk_disable(struct lcdc_device *lcdc_dev) clk_disable_unprepare(lcdc_dev->dclk); clk_disable_unprepare(lcdc_dev->hclk); clk_disable_unprepare(lcdc_dev->aclk); - /*clk_disable_unprepare(lcdc_dev->pd);*/ + clk_disable_unprepare(lcdc_dev->pd); } return 0; @@ -416,9 +416,9 @@ static int rk3368_lcdc_pre_init(struct rk_lcdc_driver *dev_drv) lcdc_dev->hclk = devm_clk_get(lcdc_dev->dev, "hclk_lcdc"); lcdc_dev->aclk = devm_clk_get(lcdc_dev->dev, "aclk_lcdc"); lcdc_dev->dclk = devm_clk_get(lcdc_dev->dev, "dclk_lcdc"); - /*lcdc_dev->pd = devm_clk_get(lcdc_dev->dev, "pd_lcdc");*/ + lcdc_dev->pd = devm_clk_get(lcdc_dev->dev, "pd_lcdc"); - if (/*IS_ERR(lcdc_dev->pd) || */(IS_ERR(lcdc_dev->aclk)) || + if (IS_ERR(lcdc_dev->pd) || (IS_ERR(lcdc_dev->aclk)) || (IS_ERR(lcdc_dev->dclk)) || (IS_ERR(lcdc_dev->hclk))) { dev_err(lcdc_dev->dev, "failed to get lcdc%d clk source\n", lcdc_dev->id); -- 2.34.1