WIP FPC-III support
[linux/fpc-iii.git] / arch / arm64 / boot / dts / allwinner / sun50i-h5-orangepi-pc2.dts
blob8bf2db9dcbda0b59c6a960277c9380d32d170fc5
1 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
2 // Copyright (C) 2016 ARM Ltd.
4 /dts-v1/;
5 #include "sun50i-h5.dtsi"
7 #include <dt-bindings/gpio/gpio.h>
8 #include <dt-bindings/input/input.h>
9 #include <dt-bindings/pinctrl/sun4i-a10.h>
11 / {
12         model = "Xunlong Orange Pi PC 2";
13         compatible = "xunlong,orangepi-pc2", "allwinner,sun50i-h5";
15         reg_vcc3v3: vcc3v3 {
16                 compatible = "regulator-fixed";
17                 regulator-name = "vcc3v3";
18                 regulator-min-microvolt = <3300000>;
19                 regulator-max-microvolt = <3300000>;
20         };
22         aliases {
23                 ethernet0 = &emac;
24                 serial0 = &uart0;
25         };
27         chosen {
28                 stdout-path = "serial0:115200n8";
29         };
31         connector {
32                 compatible = "hdmi-connector";
33                 type = "a";
35                 port {
36                         hdmi_con_in: endpoint {
37                                 remote-endpoint = <&hdmi_out_con>;
38                         };
39                 };
40         };
42         leds {
43                 compatible = "gpio-leds";
45                 pwr {
46                         label = "orangepi:green:pwr";
47                         gpios = <&r_pio 0 10 GPIO_ACTIVE_HIGH>;
48                         default-state = "on";
49                 };
51                 status {
52                         label = "orangepi:red:status";
53                         gpios = <&pio 0 20 GPIO_ACTIVE_HIGH>;
54                 };
55         };
57         r-gpio-keys {
58                 compatible = "gpio-keys";
60                 sw4 {
61                         label = "sw4";
62                         linux,code = <BTN_0>;
63                         gpios = <&r_pio 0 3 GPIO_ACTIVE_LOW>;
64                         wakeup-source;
65                 };
66         };
68         reg_gmac_3v3: gmac-3v3 {
69                 compatible = "regulator-fixed";
70                 regulator-name = "gmac-3v3";
71                 regulator-min-microvolt = <3300000>;
72                 regulator-max-microvolt = <3300000>;
73                 startup-delay-us = <100000>;
74                 enable-active-high;
75                 gpio = <&pio 3 6 GPIO_ACTIVE_HIGH>;
76         };
78         reg_usb0_vbus: usb0-vbus {
79                 compatible = "regulator-fixed";
80                 regulator-name = "usb0-vbus";
81                 regulator-min-microvolt = <5000000>;
82                 regulator-max-microvolt = <5000000>;
83                 enable-active-high;
84                 gpio = <&r_pio 0 2 GPIO_ACTIVE_HIGH>; /* PL2 */
85                 status = "okay";
86         };
89 &codec {
90         allwinner,audio-routing =
91                 "Line Out", "LINEOUT",
92                 "MIC1", "Mic",
93                 "Mic",  "MBIAS";
94         status = "okay";
97 &cpu0 {
98         cpu-supply = <&reg_vdd_cpux>;
101 &de {
102         status = "okay";
105 &ehci0 {
106         status = "okay";
109 &ehci1 {
110         status = "okay";
113 &ehci2 {
114         status = "okay";
117 &ehci3 {
118         status = "okay";
121 &emac {
122         pinctrl-names = "default";
123         pinctrl-0 = <&emac_rgmii_pins>;
124         phy-supply = <&reg_gmac_3v3>;
125         phy-handle = <&ext_rgmii_phy>;
126         phy-mode = "rgmii-id";
127         status = "okay";
130 &external_mdio {
131         ext_rgmii_phy: ethernet-phy@1 {
132                 compatible = "ethernet-phy-ieee802.3-c22";
133                 reg = <1>;
134         };
137 &hdmi {
138         status = "okay";
141 &hdmi_out {
142         hdmi_out_con: endpoint {
143                 remote-endpoint = <&hdmi_con_in>;
144         };
147 &ir {
148         pinctrl-names = "default";
149         pinctrl-0 = <&r_ir_rx_pin>;
150         status = "okay";
153 &mmc0 {
154         vmmc-supply = <&reg_vcc3v3>;
155         bus-width = <4>;
156         cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>; /* PF6 */
157         status = "okay";
160 &ohci0 {
161         status = "okay";
164 &ohci1 {
165         status = "okay";
168 &ohci2 {
169         status = "okay";
172 &ohci3 {
173         status = "okay";
176 &r_i2c {
177         status = "okay";
179         reg_vdd_cpux: regulator@65 {
180                 compatible = "silergy,sy8106a";
181                 reg = <0x65>;
182                 regulator-name = "vdd-cpux";
183                 silergy,fixed-microvolt = <1100000>;
184                 regulator-min-microvolt = <1000000>;
185                 regulator-max-microvolt = <1400000>;
186                 regulator-ramp-delay = <200>;
187                 regulator-boot-on;
188                 regulator-always-on;
189         };
192 &spi0  {
193         status = "okay";
195         flash@0 {
196                 #address-cells = <1>;
197                 #size-cells = <1>;
198                 compatible = "jedec,spi-nor";
199                 reg = <0>;
200                 spi-max-frequency = <40000000>;
201         };
204 &uart0 {
205         pinctrl-names = "default";
206         pinctrl-0 = <&uart0_pa_pins>;
207         status = "okay";
210 &uart1 {
211         pinctrl-names = "default";
212         pinctrl-0 = <&uart1_pins>;
213         status = "disabled";
216 &uart2 {
217         pinctrl-names = "default";
218         pinctrl-0 = <&uart2_pins>;
219         status = "disabled";
222 &usb_otg {
223         dr_mode = "otg";
224         status = "okay";
227 &usbphy {
228         /* USB Type-A ports' VBUS is always on */
229         usb0_id_det-gpios = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */
230         usb0_vbus-supply = <&reg_usb0_vbus>;
231         status = "okay";