[PATCH v2 0/2] pinctrl: scmi: support i.MX95 OEM extensions

From: Peng Fan (OSS)
Date: Wed Apr 17 2024 - 22:45:30 EST


ARM SCMI v3.2 Table 24 Pin Configuration Type and Enumerations:
'192 -255 OEM specific units'.

i.MX95 System Manager FW supports SCMI PINCTRL protocol, but uses
OEM Pin Configuration type, so extend the driver to support custom
params.

The node will be as below:
pinctrl_usdhc1: usdhc1-pins {
sd1cmd { ==> this is needed, so there is a patterProperties in nxp,imx95-scmi-pinctrl.yaml
pins = "sd1cmd";
nxp,func-id = <0>;
nxp,pin-conf = <0x138e>;
};
sd1data {
pins = "sd1data";
nxp,func-id = <0>;
nxp,pin-conf = <0x138e>;
};
};

This patchset depends on [1].

[1] https://lore.kernel.org/all/20240418-pinctrl-scmi-v11-0-499dca9864a7@xxxxxxx/

Signed-off-by: Peng Fan <peng.fan@xxxxxxx>
---
Changes in v2:
- Rename nxp,imx95-pinctrl.yaml to nxp,imx95-scmi-pinctrl.yaml and move
to firmware
- Merged patch [1,2]/3 v1 into patch 1/2 v2.
- nxp,imx95-scmi-pinctrl.yaml only has patterProperties for subnode
The pinctrl will be as below for i.MX95.
pinctrl_usdhc1: usdhc1-pins {
sd1cmd {
pins = "sd1cmd";
nxp,func-id = <0>;
nxp,pin-conf = <0x138e>;
};
sd1data {
pins = "sd1data";
nxp,func-id = <0>;
nxp,pin-conf = <0x138e>;
};
};
- Add pins enum, correct description.
- Link to v1: https://lore.kernel.org/r/20240412-pinctrl-scmi-oem-v1-v1-0-704f242544c1@xxxxxxx

---
Peng Fan (2):
dt-bindings: firmware: arm,scmi: Add properties for i.MX95 Pinctrl OEM extensions
pinctrl: scmi: support i.MX OEM pin configuration type

.../devicetree/bindings/firmware/arm,scmi.yaml | 9 ++-
.../bindings/firmware/nxp,imx95-scmi-pinctrl.yaml | 66 ++++++++++++++++++++++
drivers/pinctrl/pinctrl-scmi.c | 23 ++++++++
drivers/pinctrl/pinctrl-scmi.h | 15 +++++
4 files changed, 110 insertions(+), 3 deletions(-)
---
base-commit: eb2d3938aa00d2ef504176b77db1735b68763652
change-id: 20240412-pinctrl-scmi-oem-v1-494ca2ab1480

Best regards,
--
Peng Fan <peng.fan@xxxxxxx>