ipq4019: add support for ZTE MF287 Pro aka DreiNeo Pro
[openwrt/staging/jow.git] / target / linux / ipq40xx / files / arch / arm / boot / dts / qcom-ipq4018-mf287plus.dts
1 // SPDX-License-Identifier: GPL-2.0-or-later OR MIT
2 // Copyright (c) 2022, Pawel Dembicki <paweldembicki@gmail.com>.
3 // Copyright (c) 2022, Giammarco Marzano <stich86@gmail.com>.
4 // Copyright (c) 2023, Andreas Böhler <dev@aboehler.at>
5
6 #include "qcom-ipq4018-mf287.dtsi"
7
8 / {
9 model = "ZTE MF287Plus";
10 compatible = "zte,mf287plus";
11
12 /*
13 * This node is used to restart modem module to avoid anomalous
14 * behaviours on initial communication.
15 */
16 gpio-restart {
17 compatible = "gpio-restart";
18 gpios = <&tlmm 5 GPIO_ACTIVE_HIGH>;
19 };
20 };
21
22 &key_reset {
23 gpios = <&tlmm 63 GPIO_ACTIVE_LOW>;
24 };
25
26 &key_wps {
27 gpios = <&tlmm 2 GPIO_ACTIVE_LOW>;
28 };
29
30 &led_status {
31 gpios = <&tlmm 0 GPIO_ACTIVE_LOW>;
32 };
33
34 &blsp1_spi1 {
35 pinctrl-0 = <&spi_0_pins>;
36 pinctrl-names = "default";
37 status = "okay";
38 cs-gpios = <&tlmm 54 GPIO_ACTIVE_HIGH>,
39 <&tlmm 59 GPIO_ACTIVE_HIGH>,
40 <&tlmm 1 GPIO_ACTIVE_HIGH>;
41
42 flash@0 {
43 compatible = "jedec,spi-nor";
44 #address-cells = <1>;
45 #size-cells = <1>;
46 reg = <0>;
47 spi-max-frequency = <24000000>;
48
49 partitions {
50 compatible = "fixed-partitions";
51 #address-cells = <1>;
52 #size-cells = <1>;
53
54 partition@0 {
55 label = "0:SBL1";
56 reg = <0x0 0x40000>;
57 read-only;
58 };
59
60 partition@40000 {
61 label = "0:MIBIB";
62 reg = <0x40000 0x20000>;
63 read-only;
64 };
65
66 partition@60000 {
67 label = "0:QSEE";
68 reg = <0x60000 0x60000>;
69 read-only;
70 };
71
72 partition@c0000 {
73 label = "0:CDT";
74 reg = <0xc0000 0x10000>;
75 read-only;
76 };
77
78 partition@d0000 {
79 label = "0:DDRPARAMS";
80 reg = <0xd0000 0x10000>;
81 read-only;
82 };
83
84 partition@e0000 {
85 label = "0:APPSBLENV";
86 reg = <0xe0000 0x10000>;
87 read-only;
88 };
89
90 partition@f0000 {
91 label = "0:APPSBL";
92 reg = <0xf0000 0xc0000>;
93 read-only;
94 };
95
96 partition@1b0000 {
97 label = "0:reserved1";
98 reg = <0x1b0000 0x50000>;
99 read-only;
100 };
101 };
102 };
103
104 spi-nand@1 { /* flash@1 ? */
105 compatible = "spi-nand";
106 reg = <1>;
107 spi-max-frequency = <24000000>;
108
109 partitions {
110 compatible = "fixed-partitions";
111 #address-cells = <1>;
112 #size-cells = <1>;
113
114 partition@0 {
115 label = "fota-flag";
116 reg = <0x0 0x140000>;
117 read-only;
118 };
119
120 partition@140000 {
121 label = "ART";
122 reg = <0x140000 0x140000>;
123 read-only;
124 compatible = "nvmem-cells";
125 #address-cells = <1>;
126 #size-cells = <1>;
127
128 precal_art_1000: precal@1000 {
129 reg = <0x1000 0x2f20>;
130 };
131
132 precal_art_5000: precal@5000 {
133 reg = <0x5000 0x2f20>;
134 };
135 };
136
137 partition@280000 {
138 label = "mac";
139 reg = <0x280000 0x140000>;
140 read-only;
141 compatible = "nvmem-cells";
142 #address-cells = <1>;
143 #size-cells = <1>;
144
145 macaddr_mac_0: macaddr@0 {
146 reg = <0x0 0x6>;
147 };
148 };
149
150 partition@3c0000 {
151 label = "cfg-param";
152 reg = <0x3c0000 0x600000>;
153 read-only;
154 };
155
156 partition@9c0000 {
157 label = "oops";
158 reg = <0x9c0000 0x140000>;
159 };
160
161 partition@b00000 {
162 label = "web";
163 reg = <0xb00000 0x800000>;
164 };
165
166 partition@1300000 {
167 label = "rootfs";
168 reg = <0x1300000 0x2200000>;
169 };
170
171 partition@3500000 {
172 label = "data";
173 reg = <0x3500000 0x1900000>;
174 };
175
176 partition@4e00000 {
177 label = "fota";
178 reg = <0x4e00000 0x3200000>;
179 };
180 };
181 };
182
183 zigbee@2 {
184 #address-cells = <1>;
185 #size-cells = <0>;
186
187 compatible = "silabs,em3581";
188 reg = <2>;
189 spi-max-frequency = <12000000>;
190 };
191 };
192
193 &tlmm {
194 serial_pins: serial_pinmux {
195 mux {
196 pins = "gpio60", "gpio61";
197 function = "blsp_uart0";
198 bias-disable;
199 };
200 };
201
202 spi_0_pins: spi_0_pinmux {
203 pinmux {
204 function = "blsp_spi0";
205 pins = "gpio55", "gpio56", "gpio57";
206 drive-strength = <12>;
207 bias-disable;
208 };
209
210 pinmux_cs {
211 function = "gpio";
212 pins = "gpio54", "gpio59", "gpio1";
213 drive-strength = <2>;
214 bias-disable;
215 output-high;
216 };
217 };
218 };