1 // SPDX-License-Identifier: GPL-2.0 OR MIT
3 * Copyright (C) 2021 StarFive Technology Co., Ltd.
4 * Copyright (C) 2021 Emil Renner Berthing <kernel@esmil.dk>
9 #include <dt-bindings/gpio/gpio.h>
10 #include <dt-bindings/leds/common.h>
11 #include <dt-bindings/pinctrl/pinctrl-starfive-jh7100.h>
21 stdout-path = "serial0:115200n8";
25 timebase-frequency = <6250000>;
29 device_type = "memory";
30 reg = <0x0 0x80000000 0x2 0x0>;
34 compatible = "gpio-leds";
37 gpios = <&gpio 43 GPIO_ACTIVE_HIGH>;
38 color = <LED_COLOR_ID_GREEN>;
39 function = LED_FUNCTION_HEARTBEAT;
40 linux,default-trigger = "heartbeat";
50 dma-reserved@fa000000 {
51 reg = <0x0 0xfa000000 0x0 0x1000000>;
55 linux,dma@107a000000 {
56 compatible = "shared-dma-pool";
57 reg = <0x10 0x7a000000 0x0 0x1000000>;
64 dma-ranges = <0x00 0x80000000 0x00 0x80000000 0x00 0x7a000000>,
65 <0x00 0xfa000000 0x10 0x7a000000 0x00 0x01000000>,
66 <0x00 0xfb000000 0x00 0xfb000000 0x07 0x85000000>;
69 wifi_pwrseq: wifi-pwrseq {
70 compatible = "mmc-pwrseq-simple";
71 reset-gpios = <&gpio 37 GPIO_ACTIVE_LOW>;
76 pinctrl-names = "default";
77 pinctrl-0 = <&gmac_pins>;
78 phy-mode = "rgmii-id";
84 compatible = "snps,dwmac-mdio";
91 pins = <PAD_FUNC_SHARE(115)>;
93 drive-strength = <35>;
99 pins = <PAD_FUNC_SHARE(116)>;
101 drive-strength = <14>;
103 input-schmitt-disable;
107 pins = <PAD_FUNC_SHARE(117)>,
108 <PAD_FUNC_SHARE(119)>,
109 <PAD_FUNC_SHARE(120)>,
110 <PAD_FUNC_SHARE(121)>,
111 <PAD_FUNC_SHARE(122)>,
112 <PAD_FUNC_SHARE(123)>,
113 <PAD_FUNC_SHARE(124)>,
114 <PAD_FUNC_SHARE(125)>,
115 <PAD_FUNC_SHARE(126)>;
117 drive-strength = <35>;
119 input-schmitt-disable;
123 pins = <PAD_FUNC_SHARE(127)>;
125 drive-strength = <14>;
127 input-schmitt-disable;
131 pins = <PAD_FUNC_SHARE(129)>;
133 drive-strength = <14>;
135 input-schmitt-disable;
139 pins = <PAD_FUNC_SHARE(128)>,
140 <PAD_FUNC_SHARE(130)>,
141 <PAD_FUNC_SHARE(131)>,
142 <PAD_FUNC_SHARE(132)>,
143 <PAD_FUNC_SHARE(133)>,
144 <PAD_FUNC_SHARE(134)>,
145 <PAD_FUNC_SHARE(135)>,
146 <PAD_FUNC_SHARE(136)>,
147 <PAD_FUNC_SHARE(137)>,
148 <PAD_FUNC_SHARE(138)>,
149 <PAD_FUNC_SHARE(139)>,
150 <PAD_FUNC_SHARE(140)>,
151 <PAD_FUNC_SHARE(141)>;
153 drive-strength = <14>;
155 input-schmitt-enable;
162 pinmux = <GPIOMUX(62, GPO_LOW,
163 GPO_I2C0_PAD_SCK_OEN,
164 GPI_I2C0_PAD_SCK_IN)>,
165 <GPIOMUX(61, GPO_LOW,
166 GPO_I2C0_PAD_SDA_OEN,
167 GPI_I2C0_PAD_SDA_IN)>;
168 bias-disable; /* external pull-up */
170 input-schmitt-enable;
176 pinmux = <GPIOMUX(47, GPO_LOW,
177 GPO_I2C1_PAD_SCK_OEN,
178 GPI_I2C1_PAD_SCK_IN)>,
179 <GPIOMUX(48, GPO_LOW,
180 GPO_I2C1_PAD_SDA_OEN,
181 GPI_I2C1_PAD_SDA_IN)>;
184 input-schmitt-enable;
190 pinmux = <GPIOMUX(60, GPO_LOW,
191 GPO_I2C2_PAD_SCK_OEN,
192 GPI_I2C2_PAD_SCK_IN)>,
193 <GPIOMUX(59, GPO_LOW,
194 GPO_I2C2_PAD_SDA_OEN,
195 GPI_I2C2_PAD_SDA_IN)>;
196 bias-disable; /* external pull-up */
198 input-schmitt-enable;
205 GPO_PWM_PAD_OUT_BIT0,
206 GPO_PWM_PAD_OE_N_BIT0,
209 GPO_PWM_PAD_OUT_BIT1,
210 GPO_PWM_PAD_OE_N_BIT1,
213 drive-strength = <35>;
215 input-schmitt-disable;
220 sdio0_pins: sdio0-0 {
222 pinmux = <GPIOMUX(54, GPO_SDIO0_PAD_CCLK_OUT,
223 GPO_ENABLE, GPI_NONE)>;
226 input-schmitt-disable;
229 pinmux = <GPIOMUX(55, GPO_LOW, GPO_DISABLE,
230 GPI_SDIO0_PAD_CARD_DETECT_N)>,
232 GPO_SDIO0_PAD_CCMD_OUT,
233 GPO_SDIO0_PAD_CCMD_OEN,
234 GPI_SDIO0_PAD_CCMD_IN)>,
236 GPO_SDIO0_PAD_CDATA_OUT_BIT0,
237 GPO_SDIO0_PAD_CDATA_OEN_BIT0,
238 GPI_SDIO0_PAD_CDATA_IN_BIT0)>,
240 GPO_SDIO0_PAD_CDATA_OUT_BIT1,
241 GPO_SDIO0_PAD_CDATA_OEN_BIT1,
242 GPI_SDIO0_PAD_CDATA_IN_BIT1)>,
244 GPO_SDIO0_PAD_CDATA_OUT_BIT2,
245 GPO_SDIO0_PAD_CDATA_OEN_BIT2,
246 GPI_SDIO0_PAD_CDATA_IN_BIT2)>,
248 GPO_SDIO0_PAD_CDATA_OUT_BIT3,
249 GPO_SDIO0_PAD_CDATA_OEN_BIT3,
250 GPI_SDIO0_PAD_CDATA_IN_BIT3)>;
253 input-schmitt-enable;
257 sdio1_pins: sdio1-0 {
259 pinmux = <GPIOMUX(33, GPO_SDIO1_PAD_CCLK_OUT,
260 GPO_ENABLE, GPI_NONE)>;
263 input-schmitt-disable;
266 pinmux = <GPIOMUX(29,
267 GPO_SDIO1_PAD_CCMD_OUT,
268 GPO_SDIO1_PAD_CCMD_OEN,
269 GPI_SDIO1_PAD_CCMD_IN)>,
271 GPO_SDIO1_PAD_CDATA_OUT_BIT0,
272 GPO_SDIO1_PAD_CDATA_OEN_BIT0,
273 GPI_SDIO1_PAD_CDATA_IN_BIT0)>,
275 GPO_SDIO1_PAD_CDATA_OUT_BIT1,
276 GPO_SDIO1_PAD_CDATA_OEN_BIT1,
277 GPI_SDIO1_PAD_CDATA_IN_BIT1)>,
279 GPO_SDIO1_PAD_CDATA_OUT_BIT2,
280 GPO_SDIO1_PAD_CDATA_OEN_BIT2,
281 GPI_SDIO1_PAD_CDATA_IN_BIT2)>,
283 GPO_SDIO1_PAD_CDATA_OUT_BIT3,
284 GPO_SDIO1_PAD_CDATA_OEN_BIT3,
285 GPI_SDIO1_PAD_CDATA_IN_BIT3)>;
288 input-schmitt-enable;
292 uart3_pins: uart3-0 {
294 pinmux = <GPIOMUX(13, GPO_LOW, GPO_DISABLE,
297 drive-strength = <14>;
299 input-schmitt-enable;
303 pinmux = <GPIOMUX(14, GPO_UART3_PAD_SOUT,
304 GPO_ENABLE, GPI_NONE)>;
306 drive-strength = <35>;
308 input-schmitt-disable;
315 clock-frequency = <100000>;
316 i2c-sda-hold-time-ns = <300>;
317 i2c-sda-falling-time-ns = <500>;
318 i2c-scl-falling-time-ns = <500>;
319 pinctrl-names = "default";
320 pinctrl-0 = <&i2c0_pins>;
324 compatible = "ti,tps65086";
335 clock-frequency = <400000>;
336 i2c-sda-hold-time-ns = <300>;
337 i2c-sda-falling-time-ns = <100>;
338 i2c-scl-falling-time-ns = <100>;
339 pinctrl-names = "default";
340 pinctrl-0 = <&i2c1_pins>;
345 clock-frequency = <100000>;
346 i2c-sda-hold-time-ns = <300>;
347 i2c-sda-falling-time-ns = <500>;
348 i2c-scl-falling-time-ns = <500>;
349 pinctrl-names = "default";
350 pinctrl-0 = <&i2c2_pins>;
355 clock-frequency = <25000000>;
359 clock-frequency = <27000000>;
363 pinctrl-names = "default";
364 pinctrl-0 = <&pwm_pins>;
372 pinctrl-names = "default";
373 pinctrl-0 = <&sdio0_pins>;
378 #address-cells = <1>;
384 mmc-pwrseq = <&wifi_pwrseq>;
386 pinctrl-names = "default";
387 pinctrl-0 = <&sdio1_pins>;
391 compatible = "brcm,bcm4329-fmac";
397 pinctrl-names = "default";
398 pinctrl-0 = <&uart3_pins>;