Loading Documentation/devicetree/bindings/clock/qcom,debugcc.txt +1 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,7 @@ Required properties : - compatible : shall contain only one of the following: "qcom,debugcc-sdm845" "qcom,debugcc-sdxpoorwills" "qcom,debugcc-sdxpoorwills-v2" - clock-names: Shall contain "xo_clk_src" - clocks: phandle + clock reference to the CXO clock. Loading Documentation/devicetree/bindings/clock/qcom,gcc.txt +1 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ Required properties : "qcom,gcc-sdm845-v2.1" "qcom,gcc-sdm670" "qcom,gcc-sdxpoorwills" "qcom,gcc-sdxpoorwills-v2" - reg : shall contain base register location and length - #clock-cells : shall contain 1 Loading drivers/clk/qcom/debugcc-sdxpoorwills.c +10 −1 Original line number Diff line number Diff line Loading @@ -219,13 +219,15 @@ static struct clk_debug_mux gcc_debug_mux = { static const struct of_device_id clk_debug_match_table[] = { { .compatible = "qcom,debugcc-sdxpoorwills" }, { .compatible = "qcom,debugcc-sdxpoorwills-v2" }, { } }; static int clk_debug_sdxpoorwills_probe(struct platform_device *pdev) { struct clk *clk; int ret = 0; int ret = 0, compatlen; const char *compat = NULL; clk = devm_clk_get(&pdev->dev, "xo_clk_src"); if (IS_ERR(clk)) { Loading @@ -234,6 +236,13 @@ static int clk_debug_sdxpoorwills_probe(struct platform_device *pdev) return PTR_ERR(clk); } compat = of_get_property(pdev->dev.of_node, "compatible", &compatlen); if (!compat || (compatlen <= 0)) return -EINVAL; if (!strcmp(compat, "qcom,debugcc-sdxpoorwills-v2")) debug_mux_priv.xo_div4_cbcr = 0x22010; debug_mux_priv.cxo = clk; gcc_debug_mux.regmap = devm_kcalloc(&pdev->dev, MAX_NUM_CC, Loading drivers/clk/qcom/gcc-sdxpoorwills.c +16 −1 Original line number Diff line number Diff line Loading @@ -1839,15 +1839,23 @@ static const struct qcom_cc_desc gcc_sdxpoorwills_desc = { static const struct of_device_id gcc_sdxpoorwills_match_table[] = { { .compatible = "qcom,gcc-sdxpoorwills" }, { .compatible = "qcom,gcc-sdxpoorwills-v2" }, { } }; MODULE_DEVICE_TABLE(of, gcc_sdxpoorwills_match_table); static void gcc_fixup_sdxpoorwillsv2(void) { gcc_blsp1_ahb_clk.clkr.enable_mask = BIT(14); gcc_blsp1_sleep_clk.clkr.enable_mask = BIT(15); } static int gcc_sdxpoorwills_probe(struct platform_device *pdev) { int i, ret = 0; int i, ret = 0, compatlen; struct clk *clk; struct regmap *regmap; const char *compat = NULL; regmap = qcom_cc_map(pdev, &gcc_sdxpoorwills_desc); if (IS_ERR(regmap)) Loading @@ -1869,6 +1877,13 @@ static int gcc_sdxpoorwills_probe(struct platform_device *pdev) return PTR_ERR(vdd_cx_ao.regulator[0]); } compat = of_get_property(pdev->dev.of_node, "compatible", &compatlen); if (!compat || (compatlen <= 0)) return -EINVAL; if (!strcmp(compat, "qcom,gcc-sdxpoorwills-v2")) gcc_fixup_sdxpoorwillsv2(); /* Register the dummy measurement clocks */ for (i = 0; i < ARRAY_SIZE(gcc_sdxpoorwills_hws); i++) { clk = devm_clk_register(&pdev->dev, gcc_sdxpoorwills_hws[i]); Loading Loading
Documentation/devicetree/bindings/clock/qcom,debugcc.txt +1 −0 Original line number Diff line number Diff line Loading @@ -5,6 +5,7 @@ Required properties : - compatible : shall contain only one of the following: "qcom,debugcc-sdm845" "qcom,debugcc-sdxpoorwills" "qcom,debugcc-sdxpoorwills-v2" - clock-names: Shall contain "xo_clk_src" - clocks: phandle + clock reference to the CXO clock. Loading
Documentation/devicetree/bindings/clock/qcom,gcc.txt +1 −0 Original line number Diff line number Diff line Loading @@ -21,6 +21,7 @@ Required properties : "qcom,gcc-sdm845-v2.1" "qcom,gcc-sdm670" "qcom,gcc-sdxpoorwills" "qcom,gcc-sdxpoorwills-v2" - reg : shall contain base register location and length - #clock-cells : shall contain 1 Loading
drivers/clk/qcom/debugcc-sdxpoorwills.c +10 −1 Original line number Diff line number Diff line Loading @@ -219,13 +219,15 @@ static struct clk_debug_mux gcc_debug_mux = { static const struct of_device_id clk_debug_match_table[] = { { .compatible = "qcom,debugcc-sdxpoorwills" }, { .compatible = "qcom,debugcc-sdxpoorwills-v2" }, { } }; static int clk_debug_sdxpoorwills_probe(struct platform_device *pdev) { struct clk *clk; int ret = 0; int ret = 0, compatlen; const char *compat = NULL; clk = devm_clk_get(&pdev->dev, "xo_clk_src"); if (IS_ERR(clk)) { Loading @@ -234,6 +236,13 @@ static int clk_debug_sdxpoorwills_probe(struct platform_device *pdev) return PTR_ERR(clk); } compat = of_get_property(pdev->dev.of_node, "compatible", &compatlen); if (!compat || (compatlen <= 0)) return -EINVAL; if (!strcmp(compat, "qcom,debugcc-sdxpoorwills-v2")) debug_mux_priv.xo_div4_cbcr = 0x22010; debug_mux_priv.cxo = clk; gcc_debug_mux.regmap = devm_kcalloc(&pdev->dev, MAX_NUM_CC, Loading
drivers/clk/qcom/gcc-sdxpoorwills.c +16 −1 Original line number Diff line number Diff line Loading @@ -1839,15 +1839,23 @@ static const struct qcom_cc_desc gcc_sdxpoorwills_desc = { static const struct of_device_id gcc_sdxpoorwills_match_table[] = { { .compatible = "qcom,gcc-sdxpoorwills" }, { .compatible = "qcom,gcc-sdxpoorwills-v2" }, { } }; MODULE_DEVICE_TABLE(of, gcc_sdxpoorwills_match_table); static void gcc_fixup_sdxpoorwillsv2(void) { gcc_blsp1_ahb_clk.clkr.enable_mask = BIT(14); gcc_blsp1_sleep_clk.clkr.enable_mask = BIT(15); } static int gcc_sdxpoorwills_probe(struct platform_device *pdev) { int i, ret = 0; int i, ret = 0, compatlen; struct clk *clk; struct regmap *regmap; const char *compat = NULL; regmap = qcom_cc_map(pdev, &gcc_sdxpoorwills_desc); if (IS_ERR(regmap)) Loading @@ -1869,6 +1877,13 @@ static int gcc_sdxpoorwills_probe(struct platform_device *pdev) return PTR_ERR(vdd_cx_ao.regulator[0]); } compat = of_get_property(pdev->dev.of_node, "compatible", &compatlen); if (!compat || (compatlen <= 0)) return -EINVAL; if (!strcmp(compat, "qcom,gcc-sdxpoorwills-v2")) gcc_fixup_sdxpoorwillsv2(); /* Register the dummy measurement clocks */ for (i = 0; i < ARRAY_SIZE(gcc_sdxpoorwills_hws); i++) { clk = devm_clk_register(&pdev->dev, gcc_sdxpoorwills_hws[i]); Loading