arch/arm64/boot/dts/freescale/imx943-evk.dts | 43 ++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+)
Add flexcan2 and flexcan4, and related phys support.
Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
---
Changes in v3:
- make all the changes in alperbate order
- Link to v2: https://lore.kernel.org/r/20251119-dts-v2-1-e8f8d91280dd@nxp.com
Changes in v2:
- move the can-phy0/1 before dmic, use nodename order.
- Link to v1: https://lore.kernel.org/r/20251118-dts-v1-1-81b6249f455f@nxp.com
---
arch/arm64/boot/dts/freescale/imx943-evk.dts | 43 ++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)
diff --git a/arch/arm64/boot/dts/freescale/imx943-evk.dts b/arch/arm64/boot/dts/freescale/imx943-evk.dts
index c8c3eff9df1a23c52e74bf2bc5d4ba543bb5a65b..9f68f491fea07312be595fd6829617fb59413616 100644
--- a/arch/arm64/boot/dts/freescale/imx943-evk.dts
+++ b/arch/arm64/boot/dts/freescale/imx943-evk.dts
@@ -25,6 +25,22 @@ bt_sco_codec: bt-sco-codec {
#sound-dai-cells = <1>;
};
+ flexcan2_phy: can-phy0 {
+ compatible = "nxp,tjr1443";
+ #phy-cells = <0>;
+ enable-gpios = <&pcal6416_i2c6_u50 3 GPIO_ACTIVE_HIGH>;
+ max-bitrate = <8000000>;
+ standby-gpios = <&pcal6416_i2c6_u50 4 GPIO_ACTIVE_LOW>;
+ };
+
+ flexcan4_phy: can-phy1 {
+ compatible = "nxp,tjr1443";
+ #phy-cells = <0>;
+ enable-gpios = <&pcal6416_i2c3_u171 0 GPIO_ACTIVE_HIGH>;
+ max-bitrate = <8000000>;
+ standby-gpios = <&pcal6416_i2c3_u171 1 GPIO_ACTIVE_LOW>;
+ };
+
chosen {
stdout-path = &lpuart1;
};
@@ -127,6 +143,20 @@ memory@80000000 {
};
};
+&flexcan2 {
+ phys = <&flexcan2_phy>;
+ pinctrl-0 = <&pinctrl_flexcan2>;
+ pinctrl-names = "default";
+ status = "okay";
+};
+
+&flexcan4 {
+ phys = <&flexcan4_phy>;
+ pinctrl-0 = <&pinctrl_flexcan4>;
+ pinctrl-names = "default";
+ status = "okay";
+};
+
&lpi2c3 {
clock-frequency = <400000>;
pinctrl-0 = <&pinctrl_lpi2c3>;
@@ -431,6 +461,19 @@ &sai3 {
};
&scmi_iomuxc {
+ pinctrl_flexcan2: flexcan2grp {
+ fsl,pins = <
+ IMX94_PAD_GPIO_IO34__CAN2_TX 0x39e
+ IMX94_PAD_GPIO_IO35__CAN2_RX 0x39e
+ >;
+ };
+
+ pinctrl_flexcan4: flexcan4grp {
+ fsl,pins = <
+ IMX94_PAD_GPIO_IO36__CAN4_TX 0x39e
+ IMX94_PAD_GPIO_IO37__CAN4_RX 0x39e
+ >;
+ };
pinctrl_ioexpander_int2: ioexpanderint2grp {
fsl,pins = <
---
base-commit: 187dac290bfd0741b9d7d5490af825c33fd9baa4
change-id: 20251118-dts-ad4bd4fdacd6
Best regards,
--
Haibo Chen <haibo.chen@nxp.com>
On Wed, Nov 26, 2025 at 04:06:44PM +0800, Haibo Chen wrote:
> Add flexcan2 and flexcan4, and related phys support.
>
> Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
> ---
Reviewed-by: Frank Li <Frank.Li@nxp.com>
> Changes in v3:
> - make all the changes in alperbate order
> - Link to v2: https://lore.kernel.org/r/20251119-dts-v2-1-e8f8d91280dd@nxp.com
>
> Changes in v2:
> - move the can-phy0/1 before dmic, use nodename order.
> - Link to v1: https://lore.kernel.org/r/20251118-dts-v1-1-81b6249f455f@nxp.com
> ---
> arch/arm64/boot/dts/freescale/imx943-evk.dts | 43 ++++++++++++++++++++++++++++
> 1 file changed, 43 insertions(+)
>
> diff --git a/arch/arm64/boot/dts/freescale/imx943-evk.dts b/arch/arm64/boot/dts/freescale/imx943-evk.dts
> index c8c3eff9df1a23c52e74bf2bc5d4ba543bb5a65b..9f68f491fea07312be595fd6829617fb59413616 100644
> --- a/arch/arm64/boot/dts/freescale/imx943-evk.dts
> +++ b/arch/arm64/boot/dts/freescale/imx943-evk.dts
> @@ -25,6 +25,22 @@ bt_sco_codec: bt-sco-codec {
> #sound-dai-cells = <1>;
> };
>
> + flexcan2_phy: can-phy0 {
> + compatible = "nxp,tjr1443";
> + #phy-cells = <0>;
> + enable-gpios = <&pcal6416_i2c6_u50 3 GPIO_ACTIVE_HIGH>;
> + max-bitrate = <8000000>;
> + standby-gpios = <&pcal6416_i2c6_u50 4 GPIO_ACTIVE_LOW>;
> + };
> +
> + flexcan4_phy: can-phy1 {
> + compatible = "nxp,tjr1443";
> + #phy-cells = <0>;
> + enable-gpios = <&pcal6416_i2c3_u171 0 GPIO_ACTIVE_HIGH>;
> + max-bitrate = <8000000>;
> + standby-gpios = <&pcal6416_i2c3_u171 1 GPIO_ACTIVE_LOW>;
> + };
> +
> chosen {
> stdout-path = &lpuart1;
> };
> @@ -127,6 +143,20 @@ memory@80000000 {
> };
> };
>
> +&flexcan2 {
> + phys = <&flexcan2_phy>;
> + pinctrl-0 = <&pinctrl_flexcan2>;
> + pinctrl-names = "default";
> + status = "okay";
> +};
> +
> +&flexcan4 {
> + phys = <&flexcan4_phy>;
> + pinctrl-0 = <&pinctrl_flexcan4>;
> + pinctrl-names = "default";
> + status = "okay";
> +};
> +
> &lpi2c3 {
> clock-frequency = <400000>;
> pinctrl-0 = <&pinctrl_lpi2c3>;
> @@ -431,6 +461,19 @@ &sai3 {
> };
>
> &scmi_iomuxc {
> + pinctrl_flexcan2: flexcan2grp {
> + fsl,pins = <
> + IMX94_PAD_GPIO_IO34__CAN2_TX 0x39e
> + IMX94_PAD_GPIO_IO35__CAN2_RX 0x39e
> + >;
> + };
> +
> + pinctrl_flexcan4: flexcan4grp {
> + fsl,pins = <
> + IMX94_PAD_GPIO_IO36__CAN4_TX 0x39e
> + IMX94_PAD_GPIO_IO37__CAN4_RX 0x39e
> + >;
> + };
>
> pinctrl_ioexpander_int2: ioexpanderint2grp {
> fsl,pins = <
>
> ---
> base-commit: 187dac290bfd0741b9d7d5490af825c33fd9baa4
> change-id: 20251118-dts-ad4bd4fdacd6
>
> Best regards,
> --
> Haibo Chen <haibo.chen@nxp.com>
>
© 2016 - 2025 Red Hat, Inc.