mirror of
https://xff.cz/git/u-boot/
synced 2025-09-01 00:32:04 +02:00
clk: rockchip: Add clocks used by VOP and mipi-dsi on rk3399
These need to be handled for VOP/MIPI-DSI support. Signed-off-by: Ondrej Jirman <megi@xff.cz>
This commit is contained in:
@@ -1002,6 +1002,8 @@ static ulong rk3399_clk_get_rate(struct clk *clk)
|
||||
case PCLK_WDT:
|
||||
rate = rk3399_alive_get_clk(priv->cru);
|
||||
break;
|
||||
case SCLK_DPHY_PLL:
|
||||
return 24000000;
|
||||
default:
|
||||
log_debug("Unknown clock %lu\n", clk->id);
|
||||
return -ENOENT;
|
||||
@@ -1065,6 +1067,8 @@ static ulong rk3399_clk_set_rate(struct clk *clk, ulong rate)
|
||||
case DCLK_VOP1:
|
||||
ret = rk3399_vop_set_clk(priv->cru, clk->id, rate);
|
||||
break;
|
||||
case ACLK_VOP0:
|
||||
case HCLK_VOP0:
|
||||
case ACLK_VOP1:
|
||||
case HCLK_VOP1:
|
||||
case HCLK_SD:
|
||||
@@ -1169,6 +1173,11 @@ static int __maybe_unused rk3399_clk_set_parent(struct clk *clk,
|
||||
return rk3399_gmac_set_parent(clk, parent);
|
||||
case SCLK_PCIEPHY_REF:
|
||||
return rk3399_pciephy_set_parent(clk, parent);
|
||||
case DCLK_VOP1_DIV:
|
||||
case DCLK_VOP0_DIV:
|
||||
case DCLK_VOP1:
|
||||
case DCLK_VOP0:
|
||||
return 0;
|
||||
}
|
||||
|
||||
debug("%s: unsupported clk %ld\n", __func__, clk->id);
|
||||
@@ -1262,6 +1271,12 @@ static int rk3399_clk_enable(struct clk *clk)
|
||||
if (readl(&priv->cru->clksel_con[18]) & BIT(10))
|
||||
rk_clrreg(&priv->cru->clkgate_con[12], BIT(6));
|
||||
break;
|
||||
case SCLK_DPHY_TX0_CFG:
|
||||
rk_clrreg(&priv->cru->clkgate_con[21], BIT(1));
|
||||
break;
|
||||
case PCLK_VIO_GRF:
|
||||
rk_clrreg(&priv->cru->clkgate_con[29], BIT(12));
|
||||
break;
|
||||
default:
|
||||
debug("%s: unsupported clk %ld\n", __func__, clk->id);
|
||||
return -ENOENT;
|
||||
@@ -1357,6 +1372,12 @@ static int rk3399_clk_disable(struct clk *clk)
|
||||
if (readl(&priv->cru->clksel_con[18]) & BIT(10))
|
||||
rk_setreg(&priv->cru->clkgate_con[12], BIT(6));
|
||||
break;
|
||||
case SCLK_DPHY_TX0_CFG:
|
||||
rk_setreg(&priv->cru->clkgate_con[21], BIT(1));
|
||||
break;
|
||||
case PCLK_VIO_GRF:
|
||||
rk_setreg(&priv->cru->clkgate_con[29], BIT(12));
|
||||
break;
|
||||
default:
|
||||
debug("%s: unsupported clk %ld\n", __func__, clk->id);
|
||||
return -ENOENT;
|
||||
|
Reference in New Issue
Block a user