1 // SPDX-License-Identifier: GPL-2.0 OR MIT
3 * Copyright (C) 2022 StarFive Technology Co., Ltd.
4 * Copyright (C) 2022 Emil Renner Berthing <kernel@esmil.dk>
9 #include "jh7110-pinfunc.h"
10 #include <dt-bindings/gpio/gpio.h>
26 stdout-path = "serial0:115200n8";
30 timebase-frequency = <4000000>;
34 device_type = "memory";
35 reg = <0x0 0x40000000 0x1 0x0>;
39 compatible = "gpio-restart";
40 gpios = <&sysgpio 35 GPIO_ACTIVE_HIGH>;
46 clock-frequency = <74250000>;
50 clock-frequency = <125000000>;
54 clock-frequency = <50000000>;
58 clock-frequency = <125000000>;
62 clock-frequency = <50000000>;
66 clock-frequency = <297000000>;
70 clock-frequency = <12288000>;
74 clock-frequency = <192000>;
78 clock-frequency = <12288000>;
82 clock-frequency = <192000>;
86 clock-frequency = <12288000>;
90 clock-frequency = <24000000>;
94 clock-frequency = <32768>;
98 clock-frequency = <49152000>;
102 phy-handle = <&phy0>;
103 phy-mode = "rgmii-id";
107 #address-cells = <1>;
109 compatible = "snps,dwmac-mdio";
111 phy0: ethernet-phy@0 {
118 phy-handle = <&phy1>;
119 phy-mode = "rgmii-id";
123 #address-cells = <1>;
125 compatible = "snps,dwmac-mdio";
127 phy1: ethernet-phy@1 {
134 clock-frequency = <100000>;
135 i2c-sda-hold-time-ns = <300>;
136 i2c-sda-falling-time-ns = <510>;
137 i2c-scl-falling-time-ns = <510>;
138 pinctrl-names = "default";
139 pinctrl-0 = <&i2c0_pins>;
144 clock-frequency = <100000>;
145 i2c-sda-hold-time-ns = <300>;
146 i2c-sda-falling-time-ns = <510>;
147 i2c-scl-falling-time-ns = <510>;
148 pinctrl-names = "default";
149 pinctrl-0 = <&i2c2_pins>;
154 clock-frequency = <100000>;
155 i2c-sda-hold-time-ns = <300>;
156 i2c-sda-falling-time-ns = <510>;
157 i2c-scl-falling-time-ns = <510>;
158 pinctrl-names = "default";
159 pinctrl-0 = <&i2c5_pins>;
163 compatible = "x-powers,axp15060";
166 interrupt-controller;
167 #interrupt-cells = <1>;
173 regulator-min-microvolt = <3300000>;
174 regulator-max-microvolt = <3300000>;
175 regulator-name = "vcc_3v3";
180 regulator-min-microvolt = <500000>;
181 regulator-max-microvolt = <1540000>;
182 regulator-name = "vdd-cpu";
188 regulator-min-microvolt = <1800000>;
189 regulator-max-microvolt = <1800000>;
190 regulator-name = "emmc_vdd";
197 clock-frequency = <100000>;
198 i2c-sda-hold-time-ns = <300>;
199 i2c-sda-falling-time-ns = <510>;
200 i2c-scl-falling-time-ns = <510>;
201 pinctrl-names = "default";
202 pinctrl-0 = <&i2c6_pins>;
207 max-frequency = <100000000>;
214 post-power-on-delay-ms = <200>;
215 pinctrl-names = "default";
216 pinctrl-0 = <&mmc0_pins>;
217 vmmc-supply = <&vcc_3v3>;
218 vqmmc-supply = <&emmc_vdd>;
223 max-frequency = <100000000>;
229 post-power-on-delay-ms = <200>;
230 pinctrl-names = "default";
231 pinctrl-0 = <&mmc1_pins>;
236 #address-cells = <1>;
241 compatible = "jedec,spi-nor";
243 cdns,read-delay = <5>;
244 spi-max-frequency = <12000000>;
251 compatible = "fixed-partitions";
252 #address-cells = <1>;
259 reg = <0xf0000 0x10000>;
262 reg = <0x100000 0x400000>;
264 reserved-data@600000 {
265 reg = <0x600000 0x1000000>;
272 pinctrl-names = "default";
273 pinctrl-0 = <&spi0_pins>;
277 compatible = "rohm,dh2228fv";
279 spi-max-frequency = <10000000>;
286 pinmux = <GPIOMUX(57, GPOUT_LOW,
289 <GPIOMUX(58, GPOUT_LOW,
292 bias-disable; /* external pull-up */
294 input-schmitt-enable;
300 pinmux = <GPIOMUX(3, GPOUT_LOW,
303 <GPIOMUX(2, GPOUT_LOW,
306 bias-disable; /* external pull-up */
308 input-schmitt-enable;
314 pinmux = <GPIOMUX(19, GPOUT_LOW,
317 <GPIOMUX(20, GPOUT_LOW,
320 bias-disable; /* external pull-up */
322 input-schmitt-enable;
328 pinmux = <GPIOMUX(16, GPOUT_LOW,
331 <GPIOMUX(17, GPOUT_LOW,
334 bias-disable; /* external pull-up */
336 input-schmitt-enable;
342 pinmux = <GPIOMUX(62, GPOUT_SYS_SDIO0_RST,
346 drive-strength = <12>;
348 input-schmitt-disable;
353 pinmux = <PINMUX(64, 0)>,
364 drive-strength = <12>;
371 pinmux = <GPIOMUX(10, GPOUT_SYS_SDIO1_CLK,
375 drive-strength = <12>;
377 input-schmitt-disable;
382 pinmux = <GPIOMUX(9, GPOUT_SYS_SDIO1_CMD,
385 <GPIOMUX(11, GPOUT_SYS_SDIO1_DATA0,
386 GPOEN_SYS_SDIO1_DATA0,
387 GPI_SYS_SDIO1_DATA0)>,
388 <GPIOMUX(12, GPOUT_SYS_SDIO1_DATA1,
389 GPOEN_SYS_SDIO1_DATA1,
390 GPI_SYS_SDIO1_DATA1)>,
391 <GPIOMUX(7, GPOUT_SYS_SDIO1_DATA2,
392 GPOEN_SYS_SDIO1_DATA2,
393 GPI_SYS_SDIO1_DATA2)>,
394 <GPIOMUX(8, GPOUT_SYS_SDIO1_DATA3,
395 GPOEN_SYS_SDIO1_DATA3,
396 GPI_SYS_SDIO1_DATA3)>;
398 drive-strength = <12>;
400 input-schmitt-enable;
407 pinmux = <GPIOMUX(52, GPOUT_SYS_SPI0_TXD,
412 input-schmitt-disable;
416 pinmux = <GPIOMUX(53, GPOUT_LOW,
421 input-schmitt-enable;
425 pinmux = <GPIOMUX(48, GPOUT_SYS_SPI0_CLK,
430 input-schmitt-disable;
434 pinmux = <GPIOMUX(48, GPOUT_SYS_SPI0_FSS,
439 input-schmitt-disable;
443 uart0_pins: uart0-0 {
445 pinmux = <GPIOMUX(5, GPOUT_SYS_UART0_TX,
449 drive-strength = <12>;
451 input-schmitt-disable;
456 pinmux = <GPIOMUX(6, GPOUT_LOW,
459 bias-disable; /* external pull-up */
460 drive-strength = <2>;
462 input-schmitt-enable;
469 pinmux = <GPIOMUX(44, GPOUT_SYS_TDM_TXD,
473 drive-strength = <2>;
475 input-schmitt-disable;
480 pinmux = <GPIOMUX(61, GPOUT_HIGH,
487 pinmux = <GPIOMUX(63, GPOUT_HIGH,
494 pinmux = <GPIOMUX(38, GPOUT_HIGH,
503 pinctrl-names = "default";
504 pinctrl-0 = <&tdm_pins>;
509 pinctrl-names = "default";
510 pinctrl-0 = <&uart0_pins>;
515 dr_mode = "peripheral";
519 cpu-supply = <&vdd_cpu>;
523 cpu-supply = <&vdd_cpu>;
527 cpu-supply = <&vdd_cpu>;
531 cpu-supply = <&vdd_cpu>;