xref: /linux/scripts/dtc/include-prefixes/arm64/qcom/sm8250-samsung-common.dtsi (revision 4f38da1f027ea2c9f01bb71daa7a299c191b6940)
1// SPDX-License-Identifier: GPL-2.0-only
2
3/dts-v1/;
4
5#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
6#include "sm8250.dtsi"
7#include "pm8150.dtsi"
8
9/ {
10	chosen {
11		#address-cells = <2>;
12		#size-cells = <2>;
13		ranges;
14
15		framebuffer: framebuffer@9c000000 {
16			compatible = "simple-framebuffer";
17			reg = <0x0 0x9c000000 0x0 0x2300000>;
18			width = <1080>;
19			height = <2400>;
20			stride = <(1080 * 4)>;
21			format = "a8r8g8b8";
22		};
23	};
24
25	gpio_keys: gpio-keys {
26		compatible = "gpio-keys";
27
28		pinctrl-names = "default";
29		pinctrl-0 = <&vol_up_n>;
30
31		key-vol-up {
32			label = "Volume Up";
33			gpios = <&pm8150_gpios 3 GPIO_ACTIVE_LOW>;
34			linux,code = <KEY_VOLUMEUP>;
35			debounce-interval = <15>;
36			linux,can-disable;
37			wakeup-source;
38		};
39	};
40
41	reserved-memory {
42		cont_splash_mem: memory@9c000000 {
43			reg = <0x0 0x9c000000 0x0 0x2300000>;
44			no-map;
45		};
46
47		ramoops@9fa00000 {
48			compatible = "ramoops";
49			reg = <0x0 0x9fa00000 0x0 0x100000>;
50			record-size = <0x4000>;
51			console-size = <0x40000>;
52			ftrace-size = <0x40000>;
53			pmsg-size = <0x40000>;
54			no-map;
55		};
56	};
57
58	vph_pwr: vph-pwr-regulator {
59		compatible = "regulator-fixed";
60		regulator-name = "vph_pwr";
61		regulator-min-microvolt = <3700000>;
62		regulator-max-microvolt = <3700000>;
63	};
64};
65
66&apps_rsc {
67	regulators-0 {
68		compatible = "qcom,pm8150-rpmh-regulators";
69		qcom,pmic-id = "a";
70
71		vdd-s1-supply = <&vph_pwr>;
72		vdd-s2-supply = <&vph_pwr>;
73		vdd-s3-supply = <&vph_pwr>;
74		vdd-s4-supply = <&vph_pwr>;
75		vdd-s5-supply = <&vph_pwr>;
76		vdd-s6-supply = <&vph_pwr>;
77		vdd-s7-supply = <&vph_pwr>;
78		vdd-s8-supply = <&vph_pwr>;
79		vdd-s9-supply = <&vph_pwr>;
80		vdd-s10-supply = <&vph_pwr>;
81
82		vreg_s4a_1p8: smps4 {
83			regulator-name = "vreg_s4a_1p8";
84			regulator-min-microvolt = <1800000>;
85			regulator-max-microvolt = <1920000>;
86			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
87			regulator-allow-set-load;
88			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
89						   RPMH_REGULATOR_MODE_HPM>;
90		};
91
92		vreg_l2a_3p1: ldo2 {
93			regulator-name = "vreg_l2a_3p1";
94			regulator-min-microvolt = <3072000>;
95			regulator-max-microvolt = <3072000>;
96			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
97		};
98
99		vreg_l5a_0p88: ldo5 {
100			regulator-name = "vreg_l5a_0p88";
101			regulator-min-microvolt = <880000>;
102			regulator-max-microvolt = <880000>;
103			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
104		};
105
106		vreg_l6a_1p2: ldo6 {
107			regulator-name = "vreg_l6a_1p2";
108			regulator-min-microvolt = <1200000>;
109			regulator-max-microvolt = <1200000>;
110			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
111			regulator-allow-set-load;
112			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
113						   RPMH_REGULATOR_MODE_HPM>;
114		};
115
116		vreg_l9a_1p2: ldo9 {
117			regulator-name = "vreg_l9a_1p2";
118			regulator-min-microvolt = <1200000>;
119			regulator-max-microvolt = <1200000>;
120			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
121		};
122
123		vreg_l12a_1p8: ldo12 {
124			regulator-name = "vreg_l12a_1p8";
125			regulator-min-microvolt = <1800000>;
126			regulator-max-microvolt = <1800000>;
127			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
128		};
129
130		vreg_l17a_3p0: ldo17 {
131			regulator-name = "vreg_l17a_3p0";
132			regulator-min-microvolt = <2496000>;
133			regulator-max-microvolt = <3008000>;
134			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
135			regulator-allow-set-load;
136			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
137						   RPMH_REGULATOR_MODE_HPM>;
138		};
139	};
140};
141
142&pm8150_gpios {
143	vol_up_n: vol-up-n-state {
144		pins = "gpio3";
145		function = "normal";
146		power-source = <0>;
147		input-enable;
148		bias-pull-up;
149	};
150};
151
152&pon_pwrkey {
153	status = "okay";
154};
155
156&pon_resin {
157	linux,code = <KEY_VOLUMEDOWN>;
158	status = "okay";
159};
160
161&tlmm {
162	gpio-reserved-ranges = <40 4>; /* I2C (Unused) */
163};
164
165&usb_1 {
166	/* Limit to USB 2.0 for now */
167	qcom,select-utmi-as-pipe-clk;
168
169	status = "okay";
170};
171
172&usb_1_dwc3 {
173	dr_mode = "peripheral";
174	maximum-speed = "high-speed";
175	/* Remove USB3 phy */
176	phys = <&usb_1_hsphy>;
177	phy-names = "usb2-phy";
178};
179
180&usb_1_hsphy {
181	vdda-pll-supply = <&vreg_l5a_0p88>;
182	vdda18-supply = <&vreg_l12a_1p8>;
183	vdda33-supply = <&vreg_l2a_3p1>;
184
185	status = "okay";
186};
187
188&ufs_mem_hc {
189	vcc-supply = <&vreg_l17a_3p0>;
190	vcc-max-microamp = <800000>;
191	vccq-supply = <&vreg_l6a_1p2>;
192	vccq-max-microamp = <800000>;
193	vccq2-supply = <&vreg_s4a_1p8>;
194	vccq2-max-microamp = <800000>;
195
196	status = "okay";
197};
198
199&ufs_mem_phy {
200	vdda-phy-supply = <&vreg_l5a_0p88>;
201	vdda-pll-supply = <&vreg_l9a_1p2>;
202
203	status = "okay";
204};
205