Thread (10 messages) 10 messages, 4 authors, 2025-10-31

Re: [PATCH v11 2/2] memory: mtk-smi: mt8188: Add SMI reset and clamp

From: Krzysztof Kozlowski <krzk@kernel.org>
Date: 2025-10-18 16:41:52
Also in: linux-devicetree, linux-mediatek, lkml

On 17/09/2025 14:07, Friday Yang wrote:
quoted hunk ↗ jump to hunk
 static int mtk_smi_device_link_common(struct device *dev, struct device **com_dev)
 {
 	struct platform_device *smi_com_pdev;
@@ -638,6 +711,46 @@ static int mtk_smi_dts_clk_init(struct device *dev, struct mtk_smi *smi,
 	return ret;
 }

+static int mtk_smi_larb_parse_syscon(struct mtk_smi_larb *larb, int larbid)
+{
+	struct device *dev = larb->dev;
+	const struct mtk_smi_larb_gen *larb_gen = larb->larb_gen;
+	int ret;
+
+	larb->smi_comm_in_port_id = larb_gen->clamp_port[larbid];
+	larb->smi_comm_syscon = syscon_regmap_lookup_by_phandle(dev->of_node,
+								"mediatek,smi");
The code already parses this phandle (in other place). Why do you need
second time?
+	if (IS_ERR(larb->smi_comm_syscon)) {
+		ret = PTR_ERR(larb->smi_comm_syscon);
+		larb->smi_comm_syscon = NULL;
+		return dev_err_probe(dev, ret,
+				     "Failed to get smi syscon for larb %d\n", larbid);
+	}
+
+	return 0;
+}
+
+static int mtk_smi_larb_parse_reset(struct mtk_smi_larb *larb)
+{
+	struct device *dev = larb->dev;
+	int ret;
+
+	larb->rst_con = devm_reset_control_get_exclusive(dev, "larb");
+	if (IS_ERR(larb->rst_con))
+		return dev_err_probe(dev, PTR_ERR(larb->rst_con),
+				     "Failed to get reset controller\n");

This looks like ABI break. Aren't all devices affected?
+
+	larb->nb.notifier_call = mtk_smi_genpd_callback;
+	ret = dev_pm_genpd_add_notifier(dev, &larb->nb);
+	if (ret) {
+		larb->nb.notifier_call = NULL;
+		return dev_err_probe(dev, ret,
+				     "Failed to add genpd callback\n");
+	}
+
+	return 0;
+}
+
Best regards,
Krzysztof
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help