[PATCH v11 2/2] memory: mtk-smi: mt8188: Add SMI reset and clamp
Krzysztof Kozlowski
krzk at kernel.org
Sat Oct 18 09:41:48 PDT 2025
On 17/09/2025 14:07, Friday Yang wrote:
> 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
More information about the linux-arm-kernel
mailing list