1f0c083b8SJagan Teki// SPDX-License-Identifier: (GPL-2.0+ or MIT)
2f0c083b8SJagan Teki/*
3f0c083b8SJagan Teki * Copyright (C) 2018 Amarula Solutions
4f0c083b8SJagan Teki * Author: Jagan Teki <jagan@amarulasolutions.com>
5f0c083b8SJagan Teki */
6f0c083b8SJagan Teki
7f0c083b8SJagan Teki/dts-v1/;
8f0c083b8SJagan Teki
9f0c083b8SJagan Teki#include "sun50i-h6.dtsi"
10f0c083b8SJagan Teki
11f0c083b8SJagan Teki#include <dt-bindings/gpio/gpio.h>
12f0c083b8SJagan Teki
13f0c083b8SJagan Teki/ {
14f0c083b8SJagan Teki	model = "OrangePi One Plus";
15f0c083b8SJagan Teki	compatible = "xunlong,orangepi-one-plus", "allwinner,sun50i-h6";
16f0c083b8SJagan Teki
17f0c083b8SJagan Teki	aliases {
18f0c083b8SJagan Teki		serial0 = &uart0;
19f0c083b8SJagan Teki	};
20f0c083b8SJagan Teki
21f0c083b8SJagan Teki	chosen {
22f0c083b8SJagan Teki		stdout-path = "serial0:115200n8";
23f0c083b8SJagan Teki	};
24919d2514SChen-Yu Tsai
25919d2514SChen-Yu Tsai	reg_vcc5v: vcc5v {
26919d2514SChen-Yu Tsai		/* board wide 5V supply directly from the DC jack */
27919d2514SChen-Yu Tsai		compatible = "regulator-fixed";
28919d2514SChen-Yu Tsai		regulator-name = "vcc-5v";
29919d2514SChen-Yu Tsai		regulator-min-microvolt = <5000000>;
30919d2514SChen-Yu Tsai		regulator-max-microvolt = <5000000>;
31919d2514SChen-Yu Tsai		regulator-always-on;
32919d2514SChen-Yu Tsai	};
33f0c083b8SJagan Teki};
34f0c083b8SJagan Teki
35f0c083b8SJagan Teki&mmc0 {
36f0c083b8SJagan Teki	pinctrl-names = "default";
37f0c083b8SJagan Teki	pinctrl-0 = <&mmc0_pins>;
38f0c083b8SJagan Teki	vmmc-supply = <&reg_cldo1>;
39f0c083b8SJagan Teki	cd-gpios = <&pio 5 6 GPIO_ACTIVE_LOW>;
40f0c083b8SJagan Teki	bus-width = <4>;
41f0c083b8SJagan Teki	status = "okay";
42f0c083b8SJagan Teki};
43f0c083b8SJagan Teki
44f0c083b8SJagan Teki&r_i2c {
45f0c083b8SJagan Teki	status = "okay";
46f0c083b8SJagan Teki
47f0c083b8SJagan Teki	axp805: pmic@36 {
48f0c083b8SJagan Teki		compatible = "x-powers,axp805", "x-powers,axp806";
49f0c083b8SJagan Teki		reg = <0x36>;
50f0c083b8SJagan Teki		interrupt-parent = <&r_intc>;
51f0c083b8SJagan Teki		interrupts = <0 IRQ_TYPE_LEVEL_LOW>;
52f0c083b8SJagan Teki		interrupt-controller;
53f0c083b8SJagan Teki		#interrupt-cells = <1>;
54f0c083b8SJagan Teki		x-powers,self-working-mode;
55919d2514SChen-Yu Tsai		vina-supply = <&reg_vcc5v>;
56919d2514SChen-Yu Tsai		vinb-supply = <&reg_vcc5v>;
57919d2514SChen-Yu Tsai		vinc-supply = <&reg_vcc5v>;
58919d2514SChen-Yu Tsai		vind-supply = <&reg_vcc5v>;
59919d2514SChen-Yu Tsai		vine-supply = <&reg_vcc5v>;
60919d2514SChen-Yu Tsai		aldoin-supply = <&reg_vcc5v>;
61919d2514SChen-Yu Tsai		bldoin-supply = <&reg_vcc5v>;
62919d2514SChen-Yu Tsai		cldoin-supply = <&reg_vcc5v>;
63f0c083b8SJagan Teki
64f0c083b8SJagan Teki		regulators {
65f0c083b8SJagan Teki			reg_aldo1: aldo1 {
66f0c083b8SJagan Teki				regulator-always-on;
67f0c083b8SJagan Teki				regulator-min-microvolt = <3300000>;
68f0c083b8SJagan Teki				regulator-max-microvolt = <3300000>;
69f0c083b8SJagan Teki				regulator-name = "vcc-pl";
70f0c083b8SJagan Teki			};
71f0c083b8SJagan Teki
72f0c083b8SJagan Teki			reg_aldo2: aldo2 {
73f0c083b8SJagan Teki				regulator-min-microvolt = <3300000>;
74f0c083b8SJagan Teki				regulator-max-microvolt = <3300000>;
75f0c083b8SJagan Teki				regulator-name = "vcc-ac200";
76f0c083b8SJagan Teki			};
77f0c083b8SJagan Teki
78f0c083b8SJagan Teki			reg_aldo3: aldo3 {
79f0c083b8SJagan Teki				regulator-always-on;
80f0c083b8SJagan Teki				regulator-min-microvolt = <3300000>;
81f0c083b8SJagan Teki				regulator-max-microvolt = <3300000>;
82f0c083b8SJagan Teki				regulator-name = "vcc25-dram";
83f0c083b8SJagan Teki			};
84f0c083b8SJagan Teki
85f0c083b8SJagan Teki			reg_bldo1: bldo1 {
86f0c083b8SJagan Teki				regulator-always-on;
87f0c083b8SJagan Teki				regulator-min-microvolt = <1800000>;
88f0c083b8SJagan Teki				regulator-max-microvolt = <1800000>;
89f0c083b8SJagan Teki				regulator-name = "vcc-bias-pll";
90f0c083b8SJagan Teki			};
91f0c083b8SJagan Teki
92f0c083b8SJagan Teki			reg_bldo2: bldo2 {
93f0c083b8SJagan Teki				regulator-always-on;
94f0c083b8SJagan Teki				regulator-min-microvolt = <1800000>;
95f0c083b8SJagan Teki				regulator-max-microvolt = <1800000>;
96f0c083b8SJagan Teki				regulator-name = "vcc-efuse-pcie-hdmi-io";
97f0c083b8SJagan Teki			};
98f0c083b8SJagan Teki
99f0c083b8SJagan Teki			reg_bldo3: bldo3 {
100f0c083b8SJagan Teki				regulator-always-on;
101f0c083b8SJagan Teki				regulator-min-microvolt = <1800000>;
102f0c083b8SJagan Teki				regulator-max-microvolt = <1800000>;
103f0c083b8SJagan Teki				regulator-name = "vcc-dcxoio";
104f0c083b8SJagan Teki			};
105f0c083b8SJagan Teki
106f0c083b8SJagan Teki			bldo4 {
107f0c083b8SJagan Teki				/* unused */
108f0c083b8SJagan Teki			};
109f0c083b8SJagan Teki
110f0c083b8SJagan Teki			reg_cldo1: cldo1 {
111f0c083b8SJagan Teki				regulator-always-on;
112f0c083b8SJagan Teki				regulator-min-microvolt = <3300000>;
113f0c083b8SJagan Teki				regulator-max-microvolt = <3300000>;
114f0c083b8SJagan Teki				regulator-name = "vcc-3v3";
115f0c083b8SJagan Teki			};
116f0c083b8SJagan Teki
117f0c083b8SJagan Teki			reg_cldo2: cldo2 {
118f0c083b8SJagan Teki				regulator-min-microvolt = <3300000>;
119f0c083b8SJagan Teki				regulator-max-microvolt = <3300000>;
120f0c083b8SJagan Teki				regulator-name = "vcc-wifi-1";
121f0c083b8SJagan Teki			};
122f0c083b8SJagan Teki
123f0c083b8SJagan Teki			reg_cldo3: cldo3 {
124f0c083b8SJagan Teki				regulator-min-microvolt = <3300000>;
125f0c083b8SJagan Teki				regulator-max-microvolt = <3300000>;
126f0c083b8SJagan Teki				regulator-name = "vcc-wifi-2";
127f0c083b8SJagan Teki			};
128f0c083b8SJagan Teki
129f0c083b8SJagan Teki			reg_dcdca: dcdca {
130f0c083b8SJagan Teki				regulator-always-on;
131f0c083b8SJagan Teki				regulator-min-microvolt = <810000>;
132f0c083b8SJagan Teki				regulator-max-microvolt = <1080000>;
133f0c083b8SJagan Teki				regulator-name = "vdd-cpu";
134f0c083b8SJagan Teki			};
135f0c083b8SJagan Teki
136f0c083b8SJagan Teki			reg_dcdcc: dcdcc {
137f0c083b8SJagan Teki				regulator-min-microvolt = <810000>;
138f0c083b8SJagan Teki				regulator-max-microvolt = <1080000>;
139f0c083b8SJagan Teki				regulator-name = "vdd-gpu";
140f0c083b8SJagan Teki			};
141f0c083b8SJagan Teki
142f0c083b8SJagan Teki			reg_dcdcd: dcdcd {
143f0c083b8SJagan Teki				regulator-always-on;
144f0c083b8SJagan Teki				regulator-min-microvolt = <960000>;
145f0c083b8SJagan Teki				regulator-max-microvolt = <960000>;
146f0c083b8SJagan Teki				regulator-name = "vdd-sys";
147f0c083b8SJagan Teki			};
148f0c083b8SJagan Teki
149f0c083b8SJagan Teki			reg_dcdce: dcdce {
150f0c083b8SJagan Teki				regulator-always-on;
151f0c083b8SJagan Teki				regulator-min-microvolt = <1200000>;
152f0c083b8SJagan Teki				regulator-max-microvolt = <1200000>;
153f0c083b8SJagan Teki				regulator-name = "vcc-dram";
154f0c083b8SJagan Teki			};
155f0c083b8SJagan Teki
156f0c083b8SJagan Teki			sw {
157f0c083b8SJagan Teki				/* unused */
158f0c083b8SJagan Teki			};
159f0c083b8SJagan Teki		};
160f0c083b8SJagan Teki	};
161f0c083b8SJagan Teki};
162f0c083b8SJagan Teki
163f0c083b8SJagan Teki&uart0 {
164f0c083b8SJagan Teki	pinctrl-names = "default";
165f0c083b8SJagan Teki	pinctrl-0 = <&uart0_ph_pins>;
166f0c083b8SJagan Teki	status = "okay";
167f0c083b8SJagan Teki};
168