diff --git a/boards/arm/s32z270dc2_r52/s32z270dc2_r52-pinctrl.dtsi b/boards/arm/s32z270dc2_r52/s32z270dc2_r52-pinctrl.dtsi index 98fd3dcbbbd..58d29e3f0d5 100644 --- a/boards/arm/s32z270dc2_r52/s32z270dc2_r52-pinctrl.dtsi +++ b/boards/arm/s32z270dc2_r52/s32z270dc2_r52-pinctrl.dtsi @@ -52,4 +52,26 @@ output-enable; }; }; + + can0_default: can0_default { + group1 { + pinmux = ; + input-enable; + }; + group2 { + pinmux = ; + output-enable; + }; + }; + + can1_default: can1_default { + group1 { + pinmux = ; + input-enable; + }; + group2 { + pinmux = ; + output-enable; + }; + }; }; diff --git a/boards/arm/s32z270dc2_r52/s32z270dc2_r52.dtsi b/boards/arm/s32z270dc2_r52/s32z270dc2_r52.dtsi index c9391e9a0a0..1471d56a338 100644 --- a/boards/arm/s32z270dc2_r52/s32z270dc2_r52.dtsi +++ b/boards/arm/s32z270dc2_r52/s32z270dc2_r52.dtsi @@ -112,3 +112,28 @@ phy-dev = <&phy0>; status = "okay"; }; + +&can0 { + pinctrl-0 = <&can0_default>; + pinctrl-names = "default"; + clock-frequency = <80000000>; + bus-speed = <125000>; + sample-point = <875>; + sjw = <1>; + bus-speed-data = <1000000>; + sample-point-data = <875>; + sjw-data = <1>; + status = "okay"; +}; + +&can1 { + pinctrl-0 = <&can1_default>; + pinctrl-names = "default"; + clock-frequency = <80000000>; + bus-speed = <125000>; + sample-point = <875>; + sjw = <1>; + bus-speed-data = <1000000>; + sample-point-data = <875>; + sjw-data = <1>; +}; diff --git a/boards/arm/s32z270dc2_r52/s32z270dc2_rtu0_r52.dts b/boards/arm/s32z270dc2_r52/s32z270dc2_rtu0_r52.dts index a47ede04d4a..5370a212fa3 100644 --- a/boards/arm/s32z270dc2_r52/s32z270dc2_rtu0_r52.dts +++ b/boards/arm/s32z270dc2_r52/s32z270dc2_rtu0_r52.dts @@ -16,6 +16,7 @@ zephyr,sram = &sram0; zephyr,console = &uart0; zephyr,shell-uart = &uart0; + zephyr,canbus = &can0; }; aliases { diff --git a/boards/arm/s32z270dc2_r52/s32z270dc2_rtu0_r52.yaml b/boards/arm/s32z270dc2_r52/s32z270dc2_rtu0_r52.yaml index f82f4147174..9d229e27b98 100644 --- a/boards/arm/s32z270dc2_r52/s32z270dc2_rtu0_r52.yaml +++ b/boards/arm/s32z270dc2_r52/s32z270dc2_rtu0_r52.yaml @@ -13,3 +13,4 @@ supported: - gpio - watchdog - netif:eth + - can diff --git a/boards/arm/s32z270dc2_r52/s32z270dc2_rtu1_r52.dts b/boards/arm/s32z270dc2_r52/s32z270dc2_rtu1_r52.dts index d7beacd9fba..1f74fe4a3a9 100644 --- a/boards/arm/s32z270dc2_r52/s32z270dc2_rtu1_r52.dts +++ b/boards/arm/s32z270dc2_r52/s32z270dc2_rtu1_r52.dts @@ -16,6 +16,7 @@ zephyr,sram = &sram1; zephyr,console = &uart0; zephyr,shell-uart = &uart0; + zephyr,canbus = &can0; }; aliases { diff --git a/boards/arm/s32z270dc2_r52/s32z270dc2_rtu1_r52.yaml b/boards/arm/s32z270dc2_r52/s32z270dc2_rtu1_r52.yaml index 6b1f2e5c8a1..845d7b09291 100644 --- a/boards/arm/s32z270dc2_r52/s32z270dc2_rtu1_r52.yaml +++ b/boards/arm/s32z270dc2_r52/s32z270dc2_rtu1_r52.yaml @@ -13,3 +13,4 @@ supported: - gpio - watchdog - netif:eth + - can diff --git a/dts/arm/nxp/nxp_s32z27x_r52.dtsi b/dts/arm/nxp/nxp_s32z27x_r52.dtsi index 320fabc4f54..fdbdeaae4da 100644 --- a/dts/arm/nxp/nxp_s32z27x_r52.dtsi +++ b/dts/arm/nxp/nxp_s32z27x_r52.dtsi @@ -658,5 +658,29 @@ status = "disabled"; }; }; + + can0: can@4741b000 { + compatible = "nxp,s32-canxl"; + reg = <0x4741b000 0x4000>, + <0x47426000 0x4000>, + <0x47424000 0x4000>; + reg-names = "sic", "grp_ctrl", "dsc_ctrl"; + status = "disabled"; + interrupts = , + ; + interrupt-names = "RX_TX_DATA_IRQ", "INT_ERROR_IRQ"; + }; + + can1: can@4751b000 { + compatible = "nxp,s32-canxl"; + reg = <0x4751b000 0x4000>, + <0x47526000 0x4000>, + <0x47524000 0x4000>; + reg-names = "sic", "grp_ctrl", "dsc_ctrl"; + status = "disabled"; + interrupts = , + ; + interrupt-names = "RX_TX_DATA_IRQ", "INT_ERROR_IRQ"; + }; }; };