[PATCH v3 06/17] arm64: dts: imx93-14x14-evk: Add board muxes to select between FlexCAN1 and MQS1

From: Chancel Liu

Date: Sun Aug 23 2026 - 22:26:04 EST


From: Chancel Liu <chancel.liu@xxxxxxx>

FlexCAN1 has pin conflict with MQS1. Add GPIO-controlled board muxes to
route shared signals between FlexCAN1 and MQS1.

Signed-off-by: Chancel Liu <chancel.liu@xxxxxxx>
---
.../boot/dts/freescale/imx93-14x14-evk.dts | 21 ++++++++++++++++++-
1 file changed, 20 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts b/arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts
index ec78c03f4788..e35946bc3ddf 100644
--- a/arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx93-14x14-evk.dts
@@ -37,6 +37,25 @@ chosen {
stdout-path = &lpuart1;
};

+ can1_mqs1_mux: mux-controller-0 {
+ compatible = "gpio-mux";
+ #mux-control-cells = <0>;
+ #mux-state-cells = <1>;
+ mux-gpios = <&pcal6524_2 2 GPIO_ACTIVE_HIGH>;
+ };
+
+ pinctrl-gpiomux {
+ compatible = "pinctrl-multiplexer";
+
+ can1_fun: can1-grp {
+ mux-states = <&can1_mqs1_mux 0>;
+ };
+
+ mqs1_fun: mqs1-grp {
+ mux-states = <&can1_mqs1_mux 1>;
+ };
+ };
+
reserved-memory {
#address-cells = <2>;
#size-cells = <2>;
@@ -254,7 +273,7 @@ ethphy2: ethernet-phy@2 {

&flexcan1 {
pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_flexcan1>;
+ pinctrl-0 = <&pinctrl_flexcan1>, <&can1_fun>;
xceiver-supply = <&reg_can1_stby>;
status = "okay";
};
--
2.50.1