Skip to content

Commit 8782ab9

Browse files
lucien-nxpnashif
authored andcommitted
dts: arm: nxp: add dts files for RT1180
The offset of the peripheral is abstracted so that the peripheral can be defined in RT118x.dtsi,that is a common dtsi file for RT1180. Due to cm33 core, add ns/s files which are served on different status for cm33 core. Add rt118x_cm7 dtsi file Signed-off-by: Lucien Zhao <[email protected]>
1 parent d7c9bd8 commit 8782ab9

File tree

4 files changed

+446
-0
lines changed

4 files changed

+446
-0
lines changed

dts/arm/nxp/nxp_rt118x.dtsi

Lines changed: 102 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,102 @@
1+
/*
2+
* Copyright 2024 NXP
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
#include <dt-bindings/clock/imx_ccm_rev2.h>
8+
#include <dt-bindings/gpio/gpio.h>
9+
#include <dt-bindings/i2c/i2c.h>
10+
11+
/ {
12+
cpus {
13+
#address-cells = <1>;
14+
#size-cells = <0>;
15+
16+
cpu@0 {
17+
device_type = "cpu";
18+
compatible = "arm,cortex-m33f";
19+
reg = <0>;
20+
21+
#address-cells = <1>;
22+
#size-cells = <1>;
23+
24+
mpu: mpu@e000ed90 {
25+
compatible = "arm,armv8m-mpu";
26+
reg = <0xe000ed90 0x40>;
27+
};
28+
};
29+
cpu@1 {
30+
device_type = "cpu";
31+
compatible = "arm,cortex-m7";
32+
reg = <1>;
33+
34+
#address-cells = <1>;
35+
#size-cells = <1>;
36+
};
37+
};
38+
};
39+
40+
&peripheral {
41+
#address-cells = <1>;
42+
#size-cells = <1>;
43+
/*
44+
* Note that the offsets here are relative to the base address
45+
* defined in either nxp_rt118x_cm33_ns.dtsi, nxp_rt118x_cm33.dtsi
46+
* or nxp_rt118x_cm7.dtsi. The base addresses on cm33 core differ
47+
* between non-secure (0x40000000) and secure modes (0x50000000).
48+
*/
49+
iomuxc: iomuxc@2A10000 {
50+
compatible = "nxp,imx-iomuxc";
51+
reg = <0x2A10000 0x4000>;
52+
pinctrl: pinctrl {
53+
status = "okay";
54+
compatible = "nxp,mcux-rt11xx-pinctrl";
55+
};
56+
};
57+
58+
iomuxc_aon: iomuxc@43C0000 {
59+
compatible = "nxp,mcux-rt-pinctrl";
60+
reg = <0x43C0000 0x4000>;
61+
status = "okay";
62+
};
63+
64+
ccm: ccm@4450000 {
65+
compatible = "nxp,imx-ccm-rev2";
66+
reg = <0x4450000 0x4000>;
67+
#clock-cells = <3>;
68+
};
69+
70+
lpuart1: uart@4380000 {
71+
compatible = "nxp,kinetis-lpuart";
72+
reg = <0x4380000 0x4000>;
73+
interrupts = <19 0>;
74+
clocks = <&ccm IMX_CCM_LPUART0102_CLK 0x7c 24>;
75+
status = "disabled";
76+
};
77+
78+
gpio1: gpio@7400000 {
79+
compatible = "nxp,imx-rgpio";
80+
reg = <0x7400000 0x4000>;
81+
interrupts = <10 0>, <11 0>;
82+
gpio-controller;
83+
#gpio-cells = <2>;
84+
};
85+
86+
gpio4: gpio@3830000 {
87+
compatible = "nxp,imx-rgpio";
88+
reg = <0x3830000 0x4000>;
89+
interrupts = <232 0>;
90+
gpio-controller;
91+
#gpio-cells = <2>;
92+
};
93+
};
94+
95+
&flexspi1 {
96+
compatible = "nxp,imx-flexspi";
97+
interrupts = <55 0>;
98+
#address-cells = <1>;
99+
#size-cells = <0>;
100+
status = "disabled";
101+
clocks = <&ccm IMX_CCM_FLEXSPI_CLK 0x0 0>;
102+
};

dts/arm/nxp/nxp_rt118x_cm33.dtsi

Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
/*
2+
* Copyright 2024 NXP
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
#include <arm/armv8-m.dtsi>
8+
#include <mem.h>
9+
#include <zephyr/dt-bindings/memory-attr/memory-attr-arm.h>
10+
11+
/ {
12+
soc {
13+
itcm: itcm@1FFE0000 {
14+
compatible = "nxp,imx-itcm";
15+
reg = <0x1FFE0000 DT_SIZE_K(128)>;
16+
};
17+
18+
dtcm: dtcm@30000000 {
19+
compatible = "nxp,imx-dtcm";
20+
reg = <0x30000000 DT_SIZE_K(128)>;
21+
};
22+
23+
peripheral: peripheral@50000000 {
24+
ranges = <0x0 0x50000000 0x10000000>;
25+
};
26+
27+
flexspi1: spi@525e0000 {
28+
reg = <0x525e0000 0x4000>,<0x38000000 DT_SIZE_M(128)>;
29+
};
30+
};
31+
};
32+
33+
#include <nxp/nxp_rt118x.dtsi>
34+
35+
/ {
36+
cpus {
37+
/delete-node/ cpu@1;
38+
};
39+
};
40+
41+
&nvic {
42+
arm,num-irq-priority-bits = <3>;
43+
};
44+
45+
/*
46+
* GPIO pinmux options. These options define the pinmux settings
47+
* for GPIO ports on the package, so that the GPIO driver can
48+
* select GPIO mux options during GPIO configuration.
49+
*/
50+
51+
&gpio1{
52+
pinmux = <&iomuxc_aon_gpio_aon_00_gpio1_io00>,
53+
<&iomuxc_aon_gpio_aon_01_gpio1_io01>,
54+
<&iomuxc_aon_gpio_aon_02_gpio1_io02>,
55+
<&iomuxc_aon_gpio_aon_03_gpio1_io03>,
56+
<&iomuxc_aon_gpio_aon_04_gpio1_io04>,
57+
<&iomuxc_aon_gpio_aon_05_gpio1_io05>,
58+
<&iomuxc_aon_gpio_aon_06_gpio1_io06>,
59+
<&iomuxc_aon_gpio_aon_07_gpio1_io07>,
60+
<&iomuxc_aon_gpio_aon_08_gpio1_io08>,
61+
<&iomuxc_aon_gpio_aon_09_gpio1_io09>,
62+
<&iomuxc_aon_gpio_aon_10_gpio1_io10>,
63+
<&iomuxc_aon_gpio_aon_11_gpio1_io11>,
64+
<&iomuxc_aon_gpio_aon_12_gpio1_io12>,
65+
<&iomuxc_aon_gpio_aon_13_gpio1_io13>,
66+
<&iomuxc_aon_gpio_aon_14_gpio1_io14>,
67+
<&iomuxc_aon_gpio_aon_15_gpio1_io15>,
68+
<&iomuxc_aon_gpio_aon_16_gpio1_io16>,
69+
<&iomuxc_aon_gpio_aon_17_gpio1_io17>,
70+
<&iomuxc_aon_gpio_aon_18_gpio1_io18>,
71+
<&iomuxc_aon_gpio_aon_19_gpio1_io19>,
72+
<&iomuxc_aon_gpio_aon_20_gpio1_io20>,
73+
<&iomuxc_aon_gpio_aon_21_gpio1_io21>,
74+
<&iomuxc_aon_gpio_aon_22_gpio1_io22>,
75+
<&iomuxc_aon_gpio_aon_23_gpio1_io23>,
76+
<&iomuxc_aon_gpio_aon_24_gpio1_io24>,
77+
<&iomuxc_aon_gpio_aon_25_gpio1_io25>,
78+
<&iomuxc_aon_gpio_aon_26_gpio1_io26>,
79+
<&iomuxc_aon_gpio_aon_27_gpio1_io27>;
80+
};
81+
82+
&gpio4{
83+
pinmux = <&iomuxc_gpio_ad_00_gpio4_io00>,
84+
<&iomuxc_gpio_ad_01_gpio4_io01>,
85+
<&iomuxc_gpio_ad_02_gpio4_io02>,
86+
<&iomuxc_gpio_ad_03_gpio4_io03>,
87+
<&iomuxc_gpio_ad_04_gpio4_io04>,
88+
<&iomuxc_gpio_ad_05_gpio4_io05>,
89+
<&iomuxc_gpio_ad_06_gpio4_io06>,
90+
<&iomuxc_gpio_ad_07_gpio4_io07>,
91+
<&iomuxc_gpio_ad_08_gpio4_io08>,
92+
<&iomuxc_gpio_ad_09_gpio4_io09>,
93+
<&iomuxc_gpio_ad_10_gpio4_io10>,
94+
<&iomuxc_gpio_ad_11_gpio4_io11>,
95+
<&iomuxc_gpio_ad_12_gpio4_io12>,
96+
<&iomuxc_gpio_ad_13_gpio4_io13>,
97+
<&iomuxc_gpio_ad_14_gpio4_io14>,
98+
<&iomuxc_gpio_ad_15_gpio4_io15>,
99+
<&iomuxc_gpio_ad_16_gpio4_io16>,
100+
<&iomuxc_gpio_ad_17_gpio4_io17>,
101+
<&iomuxc_gpio_ad_18_gpio4_io18>,
102+
<&iomuxc_gpio_ad_19_gpio4_io19>,
103+
<&iomuxc_gpio_ad_20_gpio4_io20>,
104+
<&iomuxc_gpio_ad_21_gpio4_io21>,
105+
<&iomuxc_gpio_ad_22_gpio4_io22>,
106+
<&iomuxc_gpio_ad_23_gpio4_io23>,
107+
<&iomuxc_gpio_ad_24_gpio4_io24>,
108+
<&iomuxc_gpio_ad_25_gpio4_io25>,
109+
<&iomuxc_gpio_ad_26_gpio4_io26>,
110+
<&iomuxc_gpio_ad_27_gpio4_io27>,
111+
<&iomuxc_gpio_ad_28_gpio4_io28>,
112+
<&iomuxc_gpio_ad_29_gpio4_io29>,
113+
<&iomuxc_gpio_ad_30_gpio4_io30>,
114+
<&iomuxc_gpio_ad_31_gpio4_io31>;
115+
};

dts/arm/nxp/nxp_rt118x_cm33_ns.dtsi

Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
/*
2+
* Copyright 2024 NXP
3+
*
4+
* SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
#include <arm/armv8-m.dtsi>
8+
#include <mem.h>
9+
#include <zephyr/dt-bindings/memory-attr/memory-attr-arm.h>
10+
11+
/ {
12+
soc {
13+
itcm: itcm@FFE0000 {
14+
compatible = "nxp,imx-itcm";
15+
reg = <0xFFE0000 DT_SIZE_K(128)>;
16+
};
17+
18+
dtcm: dtcm@20000000 {
19+
compatible = "nxp,imx-dtcm";
20+
reg = <0x20000000 DT_SIZE_K(128)>;
21+
};
22+
23+
peripheral: peripheral@40000000 {
24+
ranges = <0x0 0x40000000 0x10000000>;
25+
};
26+
27+
flexspi1: spi@425e0000 {
28+
reg = <0x425e0000 0x4000>,<0x28000000 DT_SIZE_M(128)>;
29+
};
30+
31+
};
32+
};
33+
34+
#include <nxp/nxp_rt118x.dtsi>
35+
36+
/ {
37+
cpus {
38+
/delete-node/ cpu@1;
39+
};
40+
};
41+
42+
&nvic {
43+
arm,num-irq-priority-bits = <3>;
44+
};
45+
46+
/*
47+
* GPIO pinmux options. These options define the pinmux settings
48+
* for GPIO ports on the package, so that the GPIO driver can
49+
* select GPIO mux options during GPIO configuration.
50+
*/
51+
52+
&gpio1{
53+
pinmux = <&iomuxc_aon_gpio_aon_00_gpio1_io00>,
54+
<&iomuxc_aon_gpio_aon_01_gpio1_io01>,
55+
<&iomuxc_aon_gpio_aon_02_gpio1_io02>,
56+
<&iomuxc_aon_gpio_aon_03_gpio1_io03>,
57+
<&iomuxc_aon_gpio_aon_04_gpio1_io04>,
58+
<&iomuxc_aon_gpio_aon_05_gpio1_io05>,
59+
<&iomuxc_aon_gpio_aon_06_gpio1_io06>,
60+
<&iomuxc_aon_gpio_aon_07_gpio1_io07>,
61+
<&iomuxc_aon_gpio_aon_08_gpio1_io08>,
62+
<&iomuxc_aon_gpio_aon_09_gpio1_io09>,
63+
<&iomuxc_aon_gpio_aon_10_gpio1_io10>,
64+
<&iomuxc_aon_gpio_aon_11_gpio1_io11>,
65+
<&iomuxc_aon_gpio_aon_12_gpio1_io12>,
66+
<&iomuxc_aon_gpio_aon_13_gpio1_io13>,
67+
<&iomuxc_aon_gpio_aon_14_gpio1_io14>,
68+
<&iomuxc_aon_gpio_aon_15_gpio1_io15>,
69+
<&iomuxc_aon_gpio_aon_16_gpio1_io16>,
70+
<&iomuxc_aon_gpio_aon_17_gpio1_io17>,
71+
<&iomuxc_aon_gpio_aon_18_gpio1_io18>,
72+
<&iomuxc_aon_gpio_aon_19_gpio1_io19>,
73+
<&iomuxc_aon_gpio_aon_20_gpio1_io20>,
74+
<&iomuxc_aon_gpio_aon_21_gpio1_io21>,
75+
<&iomuxc_aon_gpio_aon_22_gpio1_io22>,
76+
<&iomuxc_aon_gpio_aon_23_gpio1_io23>,
77+
<&iomuxc_aon_gpio_aon_24_gpio1_io24>,
78+
<&iomuxc_aon_gpio_aon_25_gpio1_io25>,
79+
<&iomuxc_aon_gpio_aon_26_gpio1_io26>,
80+
<&iomuxc_aon_gpio_aon_27_gpio1_io27>;
81+
};
82+
83+
&gpio4{
84+
pinmux = <&iomuxc_gpio_ad_00_gpio4_io00>,
85+
<&iomuxc_gpio_ad_01_gpio4_io01>,
86+
<&iomuxc_gpio_ad_02_gpio4_io02>,
87+
<&iomuxc_gpio_ad_03_gpio4_io03>,
88+
<&iomuxc_gpio_ad_04_gpio4_io04>,
89+
<&iomuxc_gpio_ad_05_gpio4_io05>,
90+
<&iomuxc_gpio_ad_06_gpio4_io06>,
91+
<&iomuxc_gpio_ad_07_gpio4_io07>,
92+
<&iomuxc_gpio_ad_08_gpio4_io08>,
93+
<&iomuxc_gpio_ad_09_gpio4_io09>,
94+
<&iomuxc_gpio_ad_10_gpio4_io10>,
95+
<&iomuxc_gpio_ad_11_gpio4_io11>,
96+
<&iomuxc_gpio_ad_12_gpio4_io12>,
97+
<&iomuxc_gpio_ad_13_gpio4_io13>,
98+
<&iomuxc_gpio_ad_14_gpio4_io14>,
99+
<&iomuxc_gpio_ad_15_gpio4_io15>,
100+
<&iomuxc_gpio_ad_16_gpio4_io16>,
101+
<&iomuxc_gpio_ad_17_gpio4_io17>,
102+
<&iomuxc_gpio_ad_18_gpio4_io18>,
103+
<&iomuxc_gpio_ad_19_gpio4_io19>,
104+
<&iomuxc_gpio_ad_20_gpio4_io20>,
105+
<&iomuxc_gpio_ad_21_gpio4_io21>,
106+
<&iomuxc_gpio_ad_22_gpio4_io22>,
107+
<&iomuxc_gpio_ad_23_gpio4_io23>,
108+
<&iomuxc_gpio_ad_24_gpio4_io24>,
109+
<&iomuxc_gpio_ad_25_gpio4_io25>,
110+
<&iomuxc_gpio_ad_26_gpio4_io26>,
111+
<&iomuxc_gpio_ad_27_gpio4_io27>,
112+
<&iomuxc_gpio_ad_28_gpio4_io28>,
113+
<&iomuxc_gpio_ad_29_gpio4_io29>,
114+
<&iomuxc_gpio_ad_30_gpio4_io30>,
115+
<&iomuxc_gpio_ad_31_gpio4_io31>;
116+
};

0 commit comments

Comments
 (0)