2 * Copyright (c) 2016 MediaTek Inc.
3 * Author: John Crispin <blogic@openwrt.org>
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License version 2 as
7 * published by the Free Software Foundation.
9 * This program is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
17 #include "_mt7623.dtsi"
18 #include <dt-bindings/gpio/gpio.h>
21 model = "MediaTek MT7623 NAND reference board";
22 compatible = "mediatek,mt7623-rfb-nand", "mediatek,mt7623";
29 reg = <0 0x80000000 0 0x20000000>;
32 usb_p1_vbus: regulator@0 {
33 compatible = "regulator-fixed";
34 regulator-name = "usb_vbus";
35 regulator-min-microvolt = <5000000>;
36 regulator-max-microvolt = <5000000>;
37 gpio = <&pio 135 GPIO_ACTIVE_HIGH>;
43 proc-supply = <&mt6323_vproc_reg>;
47 proc-supply = <&mt6323_vproc_reg>;
51 proc-supply = <&mt6323_vproc_reg>;
55 proc-supply = <&mt6323_vproc_reg>;
60 compatible = "mediatek,mt6323";
61 interrupt-parent = <&pio>;
62 interrupts = <150 IRQ_TYPE_LEVEL_HIGH>;
64 #interrupt-cells = <2>;
66 mt6323regulator: mt6323regulator{
67 compatible = "mediatek,mt6323-regulator";
69 mt6323_vproc_reg: buck_vproc{
70 regulator-name = "vproc";
71 regulator-min-microvolt = < 700000>;
72 regulator-max-microvolt = <1350000>;
73 regulator-ramp-delay = <12500>;
78 mt6323_vsys_reg: buck_vsys{
79 regulator-name = "vsys";
80 regulator-min-microvolt = <1400000>;
81 regulator-max-microvolt = <2987500>;
82 regulator-ramp-delay = <25000>;
87 mt6323_vpa_reg: buck_vpa{
88 regulator-name = "vpa";
89 regulator-min-microvolt = < 500000>;
90 regulator-max-microvolt = <3650000>;
93 mt6323_vtcxo_reg: ldo_vtcxo{
94 regulator-name = "vtcxo";
95 regulator-min-microvolt = <2800000>;
96 regulator-max-microvolt = <2800000>;
97 regulator-enable-ramp-delay = <90>;
102 mt6323_vcn28_reg: ldo_vcn28{
103 regulator-name = "vcn28";
104 regulator-min-microvolt = <2800000>;
105 regulator-max-microvolt = <2800000>;
106 regulator-enable-ramp-delay = <185>;
109 mt6323_vcn33_bt_reg: ldo_vcn33_bt{
110 regulator-name = "vcn33_bt";
111 regulator-min-microvolt = <3300000>;
112 regulator-max-microvolt = <3600000>;
113 regulator-enable-ramp-delay = <185>;
116 mt6323_vcn33_wifi_reg: ldo_vcn33_wifi{
117 regulator-name = "vcn33_wifi";
118 regulator-min-microvolt = <3300000>;
119 regulator-max-microvolt = <3600000>;
120 regulator-enable-ramp-delay = <185>;
123 mt6323_va_reg: ldo_va{
124 regulator-name = "va";
125 regulator-min-microvolt = <2800000>;
126 regulator-max-microvolt = <2800000>;
127 regulator-enable-ramp-delay = <216>;
132 mt6323_vcama_reg: ldo_vcama{
133 regulator-name = "vcama";
134 regulator-min-microvolt = <1500000>;
135 regulator-max-microvolt = <2800000>;
136 regulator-enable-ramp-delay = <216>;
139 mt6323_vio28_reg: ldo_vio28{
140 regulator-name = "vio28";
141 regulator-min-microvolt = <2800000>;
142 regulator-max-microvolt = <2800000>;
143 regulator-enable-ramp-delay = <216>;
148 mt6323_vusb_reg: ldo_vusb{
149 regulator-name = "vusb";
150 regulator-min-microvolt = <3300000>;
151 regulator-max-microvolt = <3300000>;
152 regulator-enable-ramp-delay = <216>;
156 mt6323_vmc_reg: ldo_vmc{
157 regulator-name = "vmc";
158 regulator-min-microvolt = <1800000>;
159 regulator-max-microvolt = <3300000>;
160 regulator-enable-ramp-delay = <36>;
164 mt6323_vmch_reg: ldo_vmch{
165 regulator-name = "vmch";
166 regulator-min-microvolt = <3000000>;
167 regulator-max-microvolt = <3300000>;
168 regulator-enable-ramp-delay = <36>;
172 mt6323_vemc3v3_reg: ldo_vemc3v3{
173 regulator-name = "vemc3v3";
174 regulator-min-microvolt = <3000000>;
175 regulator-max-microvolt = <3300000>;
176 regulator-enable-ramp-delay = <36>;
180 mt6323_vgp1_reg: ldo_vgp1{
181 regulator-name = "vgp1";
182 regulator-min-microvolt = <1200000>;
183 regulator-max-microvolt = <3300000>;
184 regulator-enable-ramp-delay = <216>;
187 mt6323_vgp2_reg: ldo_vgp2{
188 regulator-name = "vgp2";
189 regulator-min-microvolt = <1200000>;
190 regulator-max-microvolt = <3000000>;
191 regulator-enable-ramp-delay = <216>;
194 mt6323_vgp3_reg: ldo_vgp3{
195 regulator-name = "vgp3";
196 regulator-min-microvolt = <1200000>;
197 regulator-max-microvolt = <1800000>;
198 regulator-enable-ramp-delay = <216>;
201 mt6323_vcn18_reg: ldo_vcn18{
202 regulator-name = "vcn18";
203 regulator-min-microvolt = <1800000>;
204 regulator-max-microvolt = <1800000>;
205 regulator-enable-ramp-delay = <216>;
208 mt6323_vsim1_reg: ldo_vsim1{
209 regulator-name = "vsim1";
210 regulator-min-microvolt = <1800000>;
211 regulator-max-microvolt = <3000000>;
212 regulator-enable-ramp-delay = <216>;
215 mt6323_vsim2_reg: ldo_vsim2{
216 regulator-name = "vsim2";
217 regulator-min-microvolt = <1800000>;
218 regulator-max-microvolt = <3000000>;
219 regulator-enable-ramp-delay = <216>;
222 mt6323_vrtc_reg: ldo_vrtc{
223 regulator-name = "vrtc";
224 regulator-min-microvolt = <2800000>;
225 regulator-max-microvolt = <2800000>;
230 mt6323_vcamaf_reg: ldo_vcamaf{
231 regulator-name = "vcamaf";
232 regulator-min-microvolt = <1200000>;
233 regulator-max-microvolt = <3300000>;
234 regulator-enable-ramp-delay = <216>;
237 mt6323_vibr_reg: ldo_vibr{
238 regulator-name = "vibr";
239 regulator-min-microvolt = <1200000>;
240 regulator-max-microvolt = <3300000>;
241 regulator-enable-ramp-delay = <36>;
244 mt6323_vrf18_reg: ldo_vrf18{
245 regulator-name = "vrf18";
246 regulator-min-microvolt = <1825000>;
247 regulator-max-microvolt = <1825000>;
248 regulator-enable-ramp-delay = <187>;
251 mt6323_vm_reg: ldo_vm{
252 regulator-name = "vm";
253 regulator-min-microvolt = <1200000>;
254 regulator-max-microvolt = <1800000>;
255 regulator-enable-ramp-delay = <216>;
260 mt6323_vio18_reg: ldo_vio18{
261 regulator-name = "vio18";
262 regulator-min-microvolt = <1800000>;
263 regulator-max-microvolt = <1800000>;
264 regulator-enable-ramp-delay = <216>;
269 mt6323_vcamd_reg: ldo_vcamd{
270 regulator-name = "vcamd";
271 regulator-min-microvolt = <1200000>;
272 regulator-max-microvolt = <1800000>;
273 regulator-enable-ramp-delay = <216>;
276 mt6323_vcamio_reg: ldo_vcamio{
277 regulator-name = "vcamio";
278 regulator-min-microvolt = <1800000>;
279 regulator-max-microvolt = <1800000>;
280 regulator-enable-ramp-delay = <216>;
285 compatible = "mediatek,mt6323-led";
286 #address-cells = <1>;
292 linux,default-trigger = "timer";
293 default-state = "on";
298 default-state = "off";
303 default-state = "on";
308 default-state = "on";
319 nand_pins_default: nanddefault {
321 pinmux = <MT7623_PIN_111_MSDC0_DAT7_FUNC_NLD7>,
322 <MT7623_PIN_112_MSDC0_DAT6_FUNC_NLD6>,
323 <MT7623_PIN_114_MSDC0_DAT4_FUNC_NLD4>,
324 <MT7623_PIN_118_MSDC0_DAT3_FUNC_NLD3>,
325 <MT7623_PIN_121_MSDC0_DAT0_FUNC_NLD0>,
326 <MT7623_PIN_120_MSDC0_DAT1_FUNC_NLD1>,
327 <MT7623_PIN_113_MSDC0_DAT5_FUNC_NLD5>,
328 <MT7623_PIN_115_MSDC0_RSTB_FUNC_NLD8>,
329 <MT7623_PIN_119_MSDC0_DAT2_FUNC_NLD2>;
331 drive-strength = <MTK_DRIVE_8mA>;
336 pinmux = <MT7623_PIN_117_MSDC0_CLK_FUNC_NWEB>;
337 drive-strength = <MTK_DRIVE_8mA>;
338 bias-pull-up = <MTK_PUPD_SET_R1R0_10>;
342 pinmux = <MT7623_PIN_116_MSDC0_CMD_FUNC_NALE>;
343 drive-strength = <MTK_DRIVE_8mA>;
344 bias-pull-down = <MTK_PUPD_SET_R1R0_10>;
350 pinmux = <MT7623_PIN_275_G2_MDC_FUNC_MDC>,
351 <MT7623_PIN_276_G2_MDIO_FUNC_MDIO>,
352 <MT7623_PIN_262_G2_TXEN_FUNC_G2_TXEN>,
353 <MT7623_PIN_263_G2_TXD3_FUNC_G2_TXD3>,
354 <MT7623_PIN_264_G2_TXD2_FUNC_G2_TXD2>,
355 <MT7623_PIN_265_G2_TXD1_FUNC_G2_TXD1>,
356 <MT7623_PIN_266_G2_TXD0_FUNC_G2_TXD0>,
357 <MT7623_PIN_267_G2_TXCLK_FUNC_G2_TXC>,
358 <MT7623_PIN_268_G2_RXCLK_FUNC_G2_RXC>,
359 <MT7623_PIN_269_G2_RXD0_FUNC_G2_RXD0>,
360 <MT7623_PIN_270_G2_RXD1_FUNC_G2_RXD1>,
361 <MT7623_PIN_271_G2_RXD2_FUNC_G2_RXD2>,
362 <MT7623_PIN_272_G2_RXD3_FUNC_G2_RXD3>,
363 <MT7623_PIN_274_G2_RXDV_FUNC_G2_RXDV>;
367 pinmux = <MT7623_PIN_273_ESW_INT_FUNC_ESW_INT>;
369 drive-strength = <MTK_DRIVE_8mA>;
374 pinmux = <MT7623_PIN_15_GPIO15_FUNC_GPIO15>;
381 pinmux = <MT7623_PIN_204_PWM1_FUNC_PWM1>;
385 pinmux = <MT7623_PIN_205_PWM2_FUNC_PWM2>;
392 pinctrl-names = "default";
393 pinctrl-0 = <&nand_pins_default>;
396 spare_per_sector = <64>;
397 nand-ecc-mode = "hw";
398 nand-ecc-strength = <12>;
399 nand-ecc-step-size = <1024>;
401 compatible = "fixed-partitions";
402 #address-cells = <1>;
407 reg = <0xC0000 0x40000>;
412 reg = <0x100000 0x40000>;
417 reg = <0x140000 0x2000000>;
422 reg = <0x2140000 0x2000000>;
427 reg = <0x4140000 0x1000000>;
437 vusb33-supply = <&mt6323_vusb_reg>;
438 vbus-supply = <&usb_p1_vbus>;
455 mac-address = [00 11 22 33 44 56];
468 mac-address = [00 11 22 33 44 55];
482 compatible = "mediatek,mt7530";
483 #address-cells = <1>;
487 pinctrl-names = "default";
488 pinctrl-0 = <ð_default>;
490 core-supply = <&mt6323_vpa_reg>;
491 io-supply = <&mt6323_vemc3v3_reg>;
492 reset-gpios = <&pio 33 0>;
495 #address-cells = <1>;
554 pinctrl-names = "default";
555 pinctrl-0 = <&pwm_pins>;