blob: 817fe400db87e90117fcc7651af81e902423316f [file] [log] [blame]
developer3f7834c2023-07-19 17:17:54 +08001// SPDX-License-Identifier: GPL-2.0
2/*
3 * Copyright (c) 2022 MediaTek Inc.
4 * Author: Sam Shih <sam.shih@mediatek.com>
5 */
6
7/dts-v1/;
8#include "mt7988.dtsi"
9#include <dt-bindings/gpio/gpio.h>
10
11/ {
12 model = "mt7988-rfb";
13 compatible = "mediatek,mt7988-rfb";
14
15 chosen {
16 stdout-path = &uart0;
17 };
18
19 memory@40000000 {
20 device_type = "memory";
21 reg = <0 0x40000000 0 0x10000000>;
22 };
23
24 reg_3p3v: regulator-3p3v {
25 compatible = "regulator-fixed";
26 regulator-name = "fixed-3.3V";
27 regulator-min-microvolt = <3300000>;
28 regulator-max-microvolt = <3300000>;
29 regulator-boot-on;
30 regulator-always-on;
31 };
32
33 reg_1p8v: regulator-1p8v {
34 compatible = "regulator-fixed";
35 regulator-name = "fixed-1.8V";
36 regulator-min-microvolt = <1800000>;
37 regulator-max-microvolt = <1800000>;
38 regulator-boot-on;
39 regulator-always-on;
40 };
41};
42
43&uart0 {
44 status = "okay";
45};
46
47&i2c1 {
48 pinctrl-names = "default";
49 pinctrl-0 = <&i2c1_pins>;
50 status = "okay";
51};
52
developer3831fef2025-01-17 17:18:27 +080053&eth0 {
developer3f7834c2023-07-19 17:17:54 +080054 status = "okay";
developer3f7834c2023-07-19 17:17:54 +080055 phy-mode = "usxgmii";
56 mediatek,switch = "mt7988";
57
58 fixed-link {
developer540a4da2025-01-17 17:18:22 +080059 speed = <10000>;
developer3f7834c2023-07-19 17:17:54 +080060 full-duplex;
61 pause;
62 };
63};
64
developer8e4a8ca2025-01-17 17:18:17 +080065&pcie0 {
66 status = "okay";
67};
68
69&pcie1 {
70 status = "okay";
71};
72
73/* PCIE2 not working in u-boot */
74&pcie2 {
75 status = "disabled";
76};
77
78/* PCIE3 not working in u-boot */
79&pcie3 {
80 status = "disabled";
81};
82
developer3f7834c2023-07-19 17:17:54 +080083&pinctrl {
84 i2c1_pins: i2c1-pins {
85 mux {
86 function = "i2c";
87 groups = "i2c1_0";
88 };
89 };
90
91 pwm_pins: pwm-pins {
92 mux {
93 function = "pwm";
94 groups = "pwm0", "pwm1", "pwm2", "pwm3", "pwm4",
95 "pwm5", "pwm6", "pwm7";
96 };
97 };
98
99 spi0_pins: spi0-pins {
100 mux {
101 function = "spi";
102 groups = "spi0", "spi0_wp_hold";
103 };
104 };
105
106 spi2_pins: spi2-pins {
107 mux {
108 function = "spi";
109 groups = "spi2", "spi2_wp_hold";
110 };
111 };
112
113 mmc0_pins_default: mmc0default {
114 mux {
115 function = "flash";
116 groups = "emmc_51";
117 };
118
119 conf-cmd-dat {
120 pins = "EMMC_DATA_0", "EMMC_DATA_1", "EMMC_DATA_2",
121 "EMMC_DATA_3", "EMMC_DATA_4", "EMMC_DATA_5",
122 "EMMC_DATA_6", "EMMC_DATA_7", "EMMC_CMD";
123 input-enable;
124 };
125
126 conf-clk {
127 pins = "EMMC_CK";
128 };
129
130 conf-dsl {
131 pins = "EMMC_DSL";
132 };
133
134 conf-rst {
135 pins = "EMMC_RSTB";
136 };
137 };
138};
139
140&pwm {
141 pinctrl-names = "default";
142 pinctrl-0 = <&pwm_pins>;
143 status = "okay";
144};
145
146&spi0 {
147 pinctrl-names = "default";
148 pinctrl-0 = <&spi0_pins>;
149 #address-cells = <1>;
150 #size-cells = <0>;
151 status = "okay";
152 must_tx;
153 enhance_timing;
154 dma_ext;
155 ipm_design;
156 support_quad;
157 tick_dly = <2>;
158 sample_sel = <0>;
159
160 spi_nand@0 {
161 compatible = "spi-nand";
162 reg = <0>;
163 spi-max-frequency = <52000000>;
developer2c98ba82025-01-17 17:18:01 +0800164 spi-rx-bus-width = <4>;
165 spi-tx-bus-width = <4>;
developer3f7834c2023-07-19 17:17:54 +0800166 };
167};
168
169&spi2 {
170 pinctrl-names = "default";
171 pinctrl-0 = <&spi2_pins>;
172 #address-cells = <1>;
173 #size-cells = <0>;
174 status = "okay";
175 must_tx;
176 enhance_timing;
177 dma_ext;
178 ipm_design;
179 support_quad;
180 tick_dly = <2>;
181 sample_sel = <0>;
182
183 spi_nor@0 {
184 compatible = "jedec,spi-nor";
185 reg = <0>;
186 spi-max-frequency = <52000000>;
developer2c98ba82025-01-17 17:18:01 +0800187 spi-rx-bus-width = <4>;
188 spi-tx-bus-width = <4>;
developer3f7834c2023-07-19 17:17:54 +0800189 };
190};
191
192&mmc0 {
193 pinctrl-names = "default";
194 pinctrl-0 = <&mmc0_pins_default>;
195 max-frequency = <52000000>;
196 bus-width = <8>;
197 cap-mmc-highspeed;
198 cap-mmc-hw-reset;
199 vmmc-supply = <&reg_3p3v>;
200 vqmmc-supply = <&reg_1p8v>;
201 non-removable;
202 status = "okay";
203};