[PATCH v1 03/12] pinctrl: nxp: Add i.MX952 support

alice.guo
2026-02-05T15:15:50Z

From: Ye Li <ye.li@nxp.com>

Multiple pads can drive the same module input pin, and a daisy chain
register is used to select the active input path. This patch defines
DAISY_OFFSET_IMX952 (0x460) and allows binding on i.MX952.

Signed-off-by: Ye Li <ye.li@nxp.com>
Signed-off-by: Alice Guo <alice.guo@nxp.com>
---
drivers/pinctrl/nxp/pinctrl-imx-scmi.c | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/pinctrl/nxp/pinctrl-imx-scmi.c b/drivers/pinctrl/nxp/pinctrl-imx-scmi.c
index 781835c6852..3cc2b85e151 100644
--- a/drivers/pinctrl/nxp/pinctrl-imx-scmi.c
+++ b/drivers/pinctrl/nxp/pinctrl-imx-scmi.c
@@ -17,6 +17,7 @@

#define DAISY_OFFSET_IMX95 0x408
#define DAISY_OFFSET_IMX94 0x608
+#define DAISY_OFFSET_IMX952 0x460

/* SCMI pin control types */
#define PINCTRL_TYPE_MUX 192
@@ -136,6 +137,8 @@ static int imx_scmi_pinctrl_probe(struct udevice *dev)
priv->daisy_offset = DAISY_OFFSET_IMX95;
else if (IS_ENABLED(CONFIG_IMX94))
priv->daisy_offset = DAISY_OFFSET_IMX94;
+ else if (IS_ENABLED(CONFIG_IMX952))
+ priv->daisy_offset = DAISY_OFFSET_IMX952;
else
return -EINVAL;

@@ -144,7 +147,8 @@ static int imx_scmi_pinctrl_probe(struct udevice *dev)

static int imx_scmi_pinctrl_bind(struct udevice *dev)
{
- if (IS_ENABLED(CONFIG_IMX95) || IS_ENABLED(CONFIG_IMX94))
+ if (IS_ENABLED(CONFIG_IMX95) || IS_ENABLED(CONFIG_IMX94) ||
+ IS_ENABLED(CONFIG_IMX952))
return 0;

return -ENODEV;

--
2.43.0