From 5390c07dcec75927c2c201748daf3e6c0b391e29 Mon Sep 17 00:00:00 2001 From: Jian Hu Date: Thu, 20 Jun 2019 12:48:37 +0800 Subject: [PATCH] clk: tl1: fix vpu_clkb_composite can not set to 500M [1/1] PD#SWPL-10083 Problem: vpu_clkb_composite can not set to 500M Solution: using CLK_SET_RATE_PARENT to set up relationship between vpu_clkb_composite and vpu_clkb_tmp_composite, when change vpu_clkb_composite's rate, it may change vpu_clkb_tmp_composite'rate to get the best rate. Verify: verified on tl1 sktt Change-Id: I9a08eab4dd6b2209e0b2589e72e79567589fb217 Signed-off-by: Jian Hu --- drivers/amlogic/clk/tl1/tl1_clk_media.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/amlogic/clk/tl1/tl1_clk_media.c b/drivers/amlogic/clk/tl1/tl1_clk_media.c index 825b7d6..c046a15 100644 --- a/drivers/amlogic/clk/tl1/tl1_clk_media.c +++ b/drivers/amlogic/clk/tl1/tl1_clk_media.c @@ -437,9 +437,16 @@ static struct meson_composite m_composite[] = { &vpu_clkb_tmp_gate.hw, 0 },/*vpu_clkb_tmp*/ + /* + * add CLK_SET_RATE_PARENT for vpu_clkb_composite clock + * vpu_clkb_composite's rate can set to 285714281HZ/400MHZ + * 500MHZ/667MHZ or less than them. + * No one use the vpu_clkb_tmp_composite, So we can change + * its rate to get the best rate for vpu_clkb_composite. + */ {CLKID_VPU_CLKB_COMP, "vpu_clkb_composite", vpu_clkb_nomux_parent_names, ARRAY_SIZE(vpu_clkb_nomux_parent_names), - NULL, &vpu_clkb_div.hw, &vpu_clkb_gate.hw, 0 + NULL, &vpu_clkb_div.hw, &vpu_clkb_gate.hw, CLK_SET_RATE_PARENT },/*vpu_clkb*/ {CLKID_VDIN_MEAS_COMP, "vdin_meas_composite", -- 2.7.4