blob: b059e20813bdff18070601e661efcaa1029ebe1f [file] [log] [blame]
Chen-Yu Tsaib5fe5232020-01-12 23:36:13 +08001// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2// Copyright (C) 2017 Icenowy Zheng <icenowy@aosc.io>
Jagan Teki2b1a3322017-05-30 17:41:15 +00003
4/dts-v1/;
Jagan Teki2b1a3322017-05-30 17:41:15 +00005#include "sun50i-h5.dtsi"
6
7#include <dt-bindings/gpio/gpio.h>
8
9/ {
10 model = "FriendlyARM NanoPi NEO 2";
11 compatible = "friendlyarm,nanopi-neo2", "allwinner,sun50i-h5";
12
13 aliases {
Andre Przywara1caeae32018-07-04 14:16:37 +010014 ethernet0 = &emac;
Jagan Teki2b1a3322017-05-30 17:41:15 +000015 serial0 = &uart0;
16 };
17
18 chosen {
19 stdout-path = "serial0:115200n8";
20 };
21
Andre Przywara1caeae32018-07-04 14:16:37 +010022 leds {
23 compatible = "gpio-leds";
24
25 pwr {
26 label = "nanopi:green:pwr";
27 gpios = <&r_pio 0 10 GPIO_ACTIVE_HIGH>;
28 default-state = "on";
29 };
30
31 status {
32 label = "nanopi:blue:status";
33 gpios = <&pio 0 10 GPIO_ACTIVE_HIGH>;
34 };
35 };
36
37 reg_gmac_3v3: gmac-3v3 {
38 compatible = "regulator-fixed";
39 regulator-name = "gmac-3v3";
40 regulator-min-microvolt = <3300000>;
41 regulator-max-microvolt = <3300000>;
42 startup-delay-us = <100000>;
43 enable-active-high;
44 gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>;
45 };
46
Jagan Teki2b1a3322017-05-30 17:41:15 +000047 reg_vcc3v3: vcc3v3 {
48 compatible = "regulator-fixed";
49 regulator-name = "vcc3v3";
50 regulator-min-microvolt = <3300000>;
51 regulator-max-microvolt = <3300000>;
52 };
Andre Przywara1caeae32018-07-04 14:16:37 +010053
54 reg_usb0_vbus: usb0-vbus {
55 compatible = "regulator-fixed";
56 regulator-name = "usb0-vbus";
57 regulator-min-microvolt = <5000000>;
58 regulator-max-microvolt = <5000000>;
59 enable-active-high;
60 gpio = <&r_pio 0 2 GPIO_ACTIVE_HIGH>; /* PL2 */
61 status = "okay";
62 };
63};
64
65&ehci0 {
66 status = "okay";
67};
68
69&ehci3 {
70 status = "okay";
71};
72
73&emac {
74 pinctrl-names = "default";
75 pinctrl-0 = <&emac_rgmii_pins>;
76 phy-supply = <&reg_gmac_3v3>;
77 phy-handle = <&ext_rgmii_phy>;
78 phy-mode = "rgmii";
79 status = "okay";
80};
81
82&external_mdio {
83 ext_rgmii_phy: ethernet-phy@7 {
84 compatible = "ethernet-phy-ieee802.3-c22";
85 reg = <7>;
86 };
Jagan Teki2b1a3322017-05-30 17:41:15 +000087};
88
89&mmc0 {
Jagan Teki2b1a3322017-05-30 17:41:15 +000090 vmmc-supply = <&reg_vcc3v3>;
91 bus-width = <4>;
92 cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
93 status = "okay";
94};
95
Andre Przywara1caeae32018-07-04 14:16:37 +010096&ohci0 {
97 status = "okay";
98};
99
100&ohci3 {
101 status = "okay";
102};
103
Jagan Teki2b1a3322017-05-30 17:41:15 +0000104&uart0 {
105 pinctrl-names = "default";
Chen-Yu Tsaib5fe5232020-01-12 23:36:13 +0800106 pinctrl-0 = <&uart0_pa_pins>;
Jagan Teki2b1a3322017-05-30 17:41:15 +0000107 status = "okay";
108};
Andre Przywara1caeae32018-07-04 14:16:37 +0100109
110&usb_otg {
111 dr_mode = "otg";
112 status = "okay";
113};
114
115&usbphy {
116 /* USB Type-A port's VBUS is always on */
117 usb0_id_det-gpios = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */
118 usb0_vbus-supply = <&reg_usb0_vbus>;
119 status = "okay";
120};