Thread (6 messages) 6 messages, 4 authors, 2022-01-26

Re: [PATCH 2/2] clk: qcom: Add MSM8226 Multimedia Clock Controller support

From: Bjorn Andersson <hidden>
Date: 2021-12-06 16:16:11
Also in: linux-arm-msm, linux-clk, lkml

On Fri 12 Nov 19:58 CST 2021, Bartosz Dudziak wrote:
quoted hunk ↗ jump to hunk
diff --git a/drivers/clk/qcom/mmcc-msm8974.c b/drivers/clk/qcom/mmcc-msm8974.c
[..]
 static int mmcc_msm8974_probe(struct platform_device *pdev)
 {
 	struct regmap *regmap;
+	const struct of_device_id *match;
+
+	match = of_match_device(mmcc_msm8974_match_table, &pdev->dev);
Could you please use of_device_get_match_data() instead?
+	if (!match)
As a general suggestion; I don't see how we would end up here with
!match, but if we somehow do it would be during development and you
would have an easier time debugging this by hitting a NULL pointer
dereference with a callstack, than tracking down why your clocks are
missing...

Thanks,
Bjorn
+		return -ENODEV;
 
-	regmap = qcom_cc_map(pdev, &mmcc_msm8974_desc);
+	regmap = qcom_cc_map(pdev, match->data);
 	if (IS_ERR(regmap))
 		return PTR_ERR(regmap);
 
-	clk_pll_configure_sr_hpm_lp(&mmpll1, regmap, &mmpll1_config, true);
-	clk_pll_configure_sr_hpm_lp(&mmpll3, regmap, &mmpll3_config, false);
+	if (match->data == &mmcc_msm8974_desc) {
+		clk_pll_configure_sr_hpm_lp(&mmpll1, regmap, &mmpll1_config, true);
+		clk_pll_configure_sr_hpm_lp(&mmpll3, regmap, &mmpll3_config, false);
+	} else {
+		msm8226_clock_override();
+	}
 
-	return qcom_cc_really_probe(pdev, &mmcc_msm8974_desc, regmap);
+	return qcom_cc_really_probe(pdev, match->data, regmap);
 }
 
 static struct platform_driver mmcc_msm8974_driver = {
-- 
2.25.1
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help