OSDN Git Service

clk: qcom: gcc-sc8280xp: add cxo as parent for three ufs ref clks
authorShazad Hussain <quic_shazhuss@quicinc.com>
Tue, 15 Nov 2022 15:29:56 +0000 (20:59 +0530)
committerStephen Boyd <sboyd@kernel.org>
Wed, 23 Nov 2022 02:27:07 +0000 (18:27 -0800)
The three UFS reference clocks, gcc_ufs_ref_clkref_clk for external
UFS devices, gcc_ufs_card_clkref_clk and gcc_ufs_1_card_clkref_clk for
two PHYs are all sourced from CXO.

Added parent_data for all three reference clocks described above to
reflect that all three clocks are sourced from CXO to have valid
frequency for the ref clock needed by UFS controller driver.

Fixes: d65d005f9a6c ("clk: qcom: add sc8280xp GCC driver")
Link: https://lore.kernel.org/lkml/Y2Tber39cHuOSR%2FW@hovoldconsulting.com/
Signed-off-by: Shazad Hussain <quic_shazhuss@quicinc.com>
Tested-by: Johan Hovold <johan+linaro@kernel.org>
Reviewed-by: Johan Hovold <johan+linaro@kernel.org>
Tested-by: Andrew Halaney <ahalaney@redhat.com>
Reviewed-by: Andrew Halaney <ahalaney@redhat.com>
Reviewed-by: Brian Masney <bmasney@redhat.com>
Link: https://lore.kernel.org/r/20221115152956.21677-1-quic_shazhuss@quicinc.com
Reviewed-by: Bjorn Andersson <andersson@kernel.org>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
drivers/clk/qcom/gcc-sc8280xp.c

index a18ed88..b319878 100644 (file)
@@ -5364,6 +5364,8 @@ static struct clk_branch gcc_ufs_1_card_clkref_clk = {
                .enable_mask = BIT(0),
                .hw.init = &(const struct clk_init_data) {
                        .name = "gcc_ufs_1_card_clkref_clk",
+                       .parent_data = &gcc_parent_data_tcxo,
+                       .num_parents = 1,
                        .ops = &clk_branch2_ops,
                },
        },
@@ -5432,6 +5434,8 @@ static struct clk_branch gcc_ufs_card_clkref_clk = {
                .enable_mask = BIT(0),
                .hw.init = &(const struct clk_init_data) {
                        .name = "gcc_ufs_card_clkref_clk",
+                       .parent_data = &gcc_parent_data_tcxo,
+                       .num_parents = 1,
                        .ops = &clk_branch2_ops,
                },
        },
@@ -5848,6 +5852,8 @@ static struct clk_branch gcc_ufs_ref_clkref_clk = {
                .enable_mask = BIT(0),
                .hw.init = &(const struct clk_init_data) {
                        .name = "gcc_ufs_ref_clkref_clk",
+                       .parent_data = &gcc_parent_data_tcxo,
+                       .num_parents = 1,
                        .ops = &clk_branch2_ops,
                },
        },