Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: (GPL-2.0+ OR MIT)
0002 // Copyright (C) 2018 Amarula Solutions
0003 // Author: Jagan Teki <jagan@amarulasolutions.com>
0004 
0005 /dts-v1/;
0006 
0007 #include "sun50i-h6.dtsi"
0008 
0009 #include <dt-bindings/gpio/gpio.h>
0010 
0011 / {
0012         model = "OrangePi One Plus";
0013         compatible = "xunlong,orangepi-one-plus", "allwinner,sun50i-h6";
0014 
0015         aliases {
0016                 serial0 = &uart0;
0017         };
0018 
0019         chosen {
0020                 stdout-path = "serial0:115200n8";
0021         };
0022 
0023         connector {
0024                 compatible = "hdmi-connector";
0025                 type = "a";
0026                 ddc-en-gpios = <&pio 7 2 GPIO_ACTIVE_HIGH>; /* PH2 */
0027 
0028                 port {
0029                         hdmi_con_in: endpoint {
0030                                 remote-endpoint = <&hdmi_out_con>;
0031                         };
0032                 };
0033         };
0034 
0035         ext_osc32k: ext_osc32k_clk {
0036                 #clock-cells = <0>;
0037                 compatible = "fixed-clock";
0038                 clock-frequency = <32768>;
0039                 clock-output-names = "ext_osc32k";
0040         };
0041 
0042         leds {
0043                 compatible = "gpio-leds";
0044 
0045                 led-0 {
0046                         label = "orangepi:red:power";
0047                         gpios = <&r_pio 0 4 GPIO_ACTIVE_HIGH>; /* PL4 */
0048                         default-state = "on";
0049                 };
0050 
0051                 led-1 {
0052                         label = "orangepi:green:status";
0053                         gpios = <&r_pio 0 7 GPIO_ACTIVE_HIGH>; /* PL7 */
0054                 };
0055         };
0056 
0057         reg_vcc5v: vcc5v {
0058                 /* board wide 5V supply directly from the DC jack */
0059                 compatible = "regulator-fixed";
0060                 regulator-name = "vcc-5v";
0061                 regulator-min-microvolt = <5000000>;
0062                 regulator-max-microvolt = <5000000>;
0063                 regulator-always-on;
0064         };
0065 };
0066 
0067 &de {
0068         status = "okay";
0069 };
0070 
0071 &ehci0 {
0072         status = "okay";
0073 };
0074 
0075 &ehci3 {
0076         status = "okay";
0077 };
0078 
0079 &gpu {
0080         mali-supply = <&reg_dcdcc>;
0081         status = "okay";
0082 };
0083 
0084 &hdmi {
0085         status = "okay";
0086 };
0087 
0088 &hdmi_out {
0089         hdmi_out_con: endpoint {
0090                 remote-endpoint = <&hdmi_con_in>;
0091         };
0092 };
0093 
0094 &mmc0 {
0095         vmmc-supply = <&reg_cldo1>;
0096         cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>;
0097         bus-width = <4>;
0098         status = "okay";
0099 };
0100 
0101 &ohci0 {
0102         status = "okay";
0103 };
0104 
0105 &ohci3 {
0106         status = "okay";
0107 };
0108 
0109 &pio {
0110         vcc-pc-supply = <&reg_bldo2>;
0111         vcc-pd-supply = <&reg_cldo1>;
0112         vcc-pg-supply = <&reg_aldo1>;
0113 };
0114 
0115 &r_ir {
0116         status = "okay";
0117 };
0118 
0119 &r_pio {
0120         vcc-pm-supply = <&reg_bldo3>;
0121 };
0122 
0123 &r_rsb {
0124         status = "okay";
0125 
0126         axp805: pmic@745 {
0127                 compatible = "x-powers,axp805", "x-powers,axp806";
0128                 reg = <0x745>;
0129                 interrupt-parent = <&r_intc>;
0130                 interrupts = <GIC_SPI 96 IRQ_TYPE_LEVEL_LOW>;
0131                 interrupt-controller;
0132                 #interrupt-cells = <1>;
0133                 x-powers,self-working-mode;
0134                 vina-supply = <&reg_vcc5v>;
0135                 vinb-supply = <&reg_vcc5v>;
0136                 vinc-supply = <&reg_vcc5v>;
0137                 vind-supply = <&reg_vcc5v>;
0138                 vine-supply = <&reg_vcc5v>;
0139                 aldoin-supply = <&reg_vcc5v>;
0140                 bldoin-supply = <&reg_vcc5v>;
0141                 cldoin-supply = <&reg_vcc5v>;
0142 
0143                 regulators {
0144                         reg_aldo1: aldo1 {
0145                                 regulator-always-on;
0146                                 regulator-min-microvolt = <3300000>;
0147                                 regulator-max-microvolt = <3300000>;
0148                                 regulator-name = "vcc-pl";
0149                         };
0150 
0151                         reg_aldo2: aldo2 {
0152                                 regulator-min-microvolt = <3300000>;
0153                                 regulator-max-microvolt = <3300000>;
0154                                 regulator-name = "vcc-ac200";
0155                         };
0156 
0157                         reg_aldo3: aldo3 {
0158                                 regulator-always-on;
0159                                 regulator-min-microvolt = <3300000>;
0160                                 regulator-max-microvolt = <3300000>;
0161                                 regulator-name = "vcc25-dram";
0162                         };
0163 
0164                         reg_bldo1: bldo1 {
0165                                 regulator-always-on;
0166                                 regulator-min-microvolt = <1800000>;
0167                                 regulator-max-microvolt = <1800000>;
0168                                 regulator-name = "vcc-bias-pll";
0169                         };
0170 
0171                         reg_bldo2: bldo2 {
0172                                 regulator-always-on;
0173                                 regulator-min-microvolt = <1800000>;
0174                                 regulator-max-microvolt = <1800000>;
0175                                 regulator-name = "vcc-efuse-pcie-hdmi-io";
0176                         };
0177 
0178                         reg_bldo3: bldo3 {
0179                                 regulator-always-on;
0180                                 regulator-min-microvolt = <1800000>;
0181                                 regulator-max-microvolt = <1800000>;
0182                                 regulator-name = "vcc-dcxoio";
0183                         };
0184 
0185                         bldo4 {
0186                                 /* unused */
0187                         };
0188 
0189                         reg_cldo1: cldo1 {
0190                                 regulator-always-on;
0191                                 regulator-min-microvolt = <3300000>;
0192                                 regulator-max-microvolt = <3300000>;
0193                                 regulator-name = "vcc-3v3";
0194                         };
0195 
0196                         reg_cldo2: cldo2 {
0197                                 regulator-min-microvolt = <3300000>;
0198                                 regulator-max-microvolt = <3300000>;
0199                                 regulator-name = "vcc-wifi-1";
0200                         };
0201 
0202                         reg_cldo3: cldo3 {
0203                                 regulator-min-microvolt = <3300000>;
0204                                 regulator-max-microvolt = <3300000>;
0205                                 regulator-name = "vcc-wifi-2";
0206                         };
0207 
0208                         reg_dcdca: dcdca {
0209                                 regulator-always-on;
0210                                 regulator-min-microvolt = <810000>;
0211                                 regulator-max-microvolt = <1080000>;
0212                                 regulator-name = "vdd-cpu";
0213                         };
0214 
0215                         reg_dcdcc: dcdcc {
0216                                 regulator-enable-ramp-delay = <32000>;
0217                                 regulator-min-microvolt = <810000>;
0218                                 regulator-max-microvolt = <1080000>;
0219                                 regulator-name = "vdd-gpu";
0220                         };
0221 
0222                         reg_dcdcd: dcdcd {
0223                                 regulator-always-on;
0224                                 regulator-min-microvolt = <960000>;
0225                                 regulator-max-microvolt = <960000>;
0226                                 regulator-name = "vdd-sys";
0227                         };
0228 
0229                         reg_dcdce: dcdce {
0230                                 regulator-always-on;
0231                                 regulator-min-microvolt = <1200000>;
0232                                 regulator-max-microvolt = <1200000>;
0233                                 regulator-name = "vcc-dram";
0234                         };
0235 
0236                         sw {
0237                                 /* unused */
0238                         };
0239                 };
0240         };
0241 };
0242 
0243 &rtc {
0244         clocks = <&ext_osc32k>;
0245 };
0246 
0247 &uart0 {
0248         pinctrl-names = "default";
0249         pinctrl-0 = <&uart0_ph_pins>;
0250         status = "okay";
0251 };
0252 
0253 &usb2otg {
0254         /*
0255          * OrangePi Lite 2 and One Plus, where this DT is used, don't
0256          * have a controllable VBUS even though they do have an ID pin.
0257          * Using it as anything but a USB host is unsafe.
0258          */
0259         dr_mode = "host";
0260         status = "okay";
0261 };
0262 
0263 &usb2phy {
0264         usb0_id_det-gpios = <&pio 2 6 GPIO_ACTIVE_HIGH>; /* PC6 */
0265         usb0_vbus-supply = <&reg_vcc5v>;
0266         usb3_vbus-supply = <&reg_vcc5v>;
0267         status = "okay";
0268 };