xref: /linux/scripts/dtc/include-prefixes/arm/qcom/qcom-apq8064-asus-nexus7-flo.dts (revision 3a39d672e7f48b8d6b91a09afa4b55352773b4b5)
1724ba675SRob Herring// SPDX-License-Identifier: GPL-2.0
2724ba675SRob Herring#include <dt-bindings/gpio/gpio.h>
3724ba675SRob Herring#include <dt-bindings/input/input.h>
4724ba675SRob Herring#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
52308f2dfSDmitry Baryshkov
62308f2dfSDmitry Baryshkov#include "qcom-apq8064-v2.0.dtsi"
72308f2dfSDmitry Baryshkov#include "pm8821.dtsi"
82308f2dfSDmitry Baryshkov#include "pm8921.dtsi"
92308f2dfSDmitry Baryshkov
10724ba675SRob Herring/ {
11724ba675SRob Herring	model = "Asus Nexus7(flo)";
12724ba675SRob Herring	compatible = "asus,nexus7-flo", "qcom,apq8064";
13724ba675SRob Herring	chassis-type = "tablet";
14724ba675SRob Herring
15724ba675SRob Herring	aliases {
16724ba675SRob Herring		serial0 = &gsbi7_serial;
17724ba675SRob Herring		serial1 = &gsbi6_serial;
18724ba675SRob Herring	};
19724ba675SRob Herring
20724ba675SRob Herring	chosen {
21724ba675SRob Herring		stdout-path = "serial0:115200n8";
22724ba675SRob Herring	};
23724ba675SRob Herring
24724ba675SRob Herring	reserved-memory {
25724ba675SRob Herring		#address-cells = <1>;
26724ba675SRob Herring		#size-cells = <1>;
27724ba675SRob Herring		ranges;
28724ba675SRob Herring
29724ba675SRob Herring		ramoops@88d00000 {
30724ba675SRob Herring			compatible = "ramoops";
31724ba675SRob Herring			reg = <0x88d00000 0x100000>;
32724ba675SRob Herring			record-size = <0x00020000>;
33724ba675SRob Herring			console-size = <0x00020000>;
34724ba675SRob Herring			ftrace-size = <0x00020000>;
35724ba675SRob Herring		};
36724ba675SRob Herring	};
37724ba675SRob Herring
38724ba675SRob Herring	ext_3p3v: regulator-ext-3p3v {
39724ba675SRob Herring		compatible = "regulator-fixed";
40724ba675SRob Herring		regulator-min-microvolt = <3300000>;
41724ba675SRob Herring		regulator-max-microvolt = <3300000>;
42724ba675SRob Herring		regulator-name = "ext_3p3v";
43724ba675SRob Herring		startup-delay-us = <0>;
44724ba675SRob Herring		gpio = <&tlmm_pinmux 77 GPIO_ACTIVE_HIGH>;
45724ba675SRob Herring		enable-active-high;
46724ba675SRob Herring		regulator-boot-on;
47724ba675SRob Herring	};
48724ba675SRob Herring
49724ba675SRob Herring	gpio-keys {
50724ba675SRob Herring		compatible = "gpio-keys";
51724ba675SRob Herring		key-volume-up {
52724ba675SRob Herring			label = "Volume Up";
53724ba675SRob Herring			gpios = <&pm8921_gpio 4 GPIO_ACTIVE_HIGH>;
54724ba675SRob Herring			linux,code = <KEY_VOLUMEUP>;
55724ba675SRob Herring		};
56724ba675SRob Herring		key-volume-down {
57724ba675SRob Herring			label = "Volume Down";
58724ba675SRob Herring			gpios = <&pm8921_gpio 38 GPIO_ACTIVE_HIGH>;
59724ba675SRob Herring			linux,code = <KEY_VOLUMEDOWN>;
60724ba675SRob Herring		};
61724ba675SRob Herring	};
62724ba675SRob Herring
63724ba675SRob Herring	soc {
64724ba675SRob Herring		sram@2a03f000 {
65724ba675SRob Herring			compatible = "qcom,apq8064-imem", "syscon", "simple-mfd";
66724ba675SRob Herring			reg = <0x2a03f000 0x1000>;
67724ba675SRob Herring
68724ba675SRob Herring			reboot-mode {
69724ba675SRob Herring				compatible = "syscon-reboot-mode";
70724ba675SRob Herring				offset = <0x65c>;
71724ba675SRob Herring
72724ba675SRob Herring				mode-normal = <0x77665501>;
73724ba675SRob Herring				mode-bootloader = <0x77665500>;
74724ba675SRob Herring				mode-recovery = <0x77665502>;
75724ba675SRob Herring			};
76724ba675SRob Herring		};
77724ba675SRob Herring	};
78724ba675SRob Herring};
79724ba675SRob Herring
80724ba675SRob Herring&dsi0 {
81724ba675SRob Herring	vdda-supply = <&pm8921_l2>;/*VDD_MIPI1 to 4*/
82724ba675SRob Herring	vdd-supply = <&pm8921_l8>;
83724ba675SRob Herring	vddio-supply = <&pm8921_lvs7>;
84724ba675SRob Herring	avdd-supply = <&pm8921_l11>;
85724ba675SRob Herring	status = "okay";
86724ba675SRob Herring
87724ba675SRob Herring	panel@0 {
88724ba675SRob Herring		reg = <0>;
89724ba675SRob Herring		compatible = "jdi,lt070me05000";
90724ba675SRob Herring
91724ba675SRob Herring		vddp-supply = <&pm8921_l17>;
92724ba675SRob Herring		iovcc-supply = <&pm8921_lvs7>;
93724ba675SRob Herring
94724ba675SRob Herring		enable-gpios = <&pm8921_gpio 36 GPIO_ACTIVE_HIGH>;
95724ba675SRob Herring		reset-gpios = <&tlmm_pinmux 54 GPIO_ACTIVE_LOW>;
96724ba675SRob Herring		dcdc-en-gpios = <&pm8921_gpio 23 GPIO_ACTIVE_HIGH>;
97724ba675SRob Herring
98724ba675SRob Herring		port {
99724ba675SRob Herring			panel_in: endpoint {
100724ba675SRob Herring				remote-endpoint = <&dsi0_out>;
101724ba675SRob Herring			};
102724ba675SRob Herring		};
103724ba675SRob Herring	};
104724ba675SRob Herring};
105724ba675SRob Herring
106724ba675SRob Herring&dsi0_in {
107724ba675SRob Herring	remote-endpoint = <&mdp_dsi1_out>;
108724ba675SRob Herring};
109724ba675SRob Herring
110724ba675SRob Herring&dsi0_out {
111724ba675SRob Herring	remote-endpoint = <&panel_in>;
112724ba675SRob Herring	data-lanes = <0 1 2 3>;
113724ba675SRob Herring};
114724ba675SRob Herring
115724ba675SRob Herring&dsi0_phy {
116724ba675SRob Herring	vddio-supply = <&pm8921_lvs7>;/*VDD_PLL2_1 to 7*/
117724ba675SRob Herring	status = "okay";
118724ba675SRob Herring};
119724ba675SRob Herring
120724ba675SRob Herring&gsbi1 {
121724ba675SRob Herring	qcom,mode = <GSBI_PROT_I2C>;
122724ba675SRob Herring	status = "okay";
123724ba675SRob Herring};
124724ba675SRob Herring
125724ba675SRob Herring&gsbi1_i2c {
126724ba675SRob Herring	status = "okay";
127724ba675SRob Herring	clock-frequency = <200000>;
128724ba675SRob Herring
129724ba675SRob Herring	eeprom@52 {
130724ba675SRob Herring		compatible = "atmel,24c128";
131724ba675SRob Herring		reg = <0x52>;
132724ba675SRob Herring		pagesize = <32>;
133724ba675SRob Herring	};
134724ba675SRob Herring
135724ba675SRob Herring	bq27541@55 {
136724ba675SRob Herring		compatible = "ti,bq27541";
137724ba675SRob Herring		reg = <0x55>;
138724ba675SRob Herring	};
139724ba675SRob Herring
140724ba675SRob Herring};
141724ba675SRob Herring
142724ba675SRob Herring&gsbi3 {
143724ba675SRob Herring	qcom,mode = <GSBI_PROT_I2C>;
144724ba675SRob Herring	status = "okay";
145724ba675SRob Herring};
146724ba675SRob Herring
147724ba675SRob Herring&gsbi3_i2c {
148724ba675SRob Herring	clock-frequency = <200000>;
149724ba675SRob Herring	status = "okay";
150724ba675SRob Herring
151724ba675SRob Herring	trackpad@10 {
152724ba675SRob Herring		compatible = "elan,ekth3500";
153724ba675SRob Herring		reg = <0x10>;
154724ba675SRob Herring		interrupt-parent = <&tlmm_pinmux>;
155724ba675SRob Herring		interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
156724ba675SRob Herring	};
157724ba675SRob Herring};
158724ba675SRob Herring
159724ba675SRob Herring&gsbi6 {
160724ba675SRob Herring	qcom,mode = <GSBI_PROT_I2C_UART>;
161724ba675SRob Herring	status = "okay";
162724ba675SRob Herring};
163724ba675SRob Herring
164724ba675SRob Herring&gsbi6_serial {
165724ba675SRob Herring	pinctrl-names = "default";
166724ba675SRob Herring	pinctrl-0 = <&gsbi6_uart_4pins>;
167724ba675SRob Herring	status = "okay";
168724ba675SRob Herring};
169724ba675SRob Herring
170724ba675SRob Herring&gsbi7 {
171724ba675SRob Herring	qcom,mode = <GSBI_PROT_I2C_UART>;
172724ba675SRob Herring	status = "okay";
173724ba675SRob Herring};
174724ba675SRob Herring
175724ba675SRob Herring&gsbi7_serial {
176724ba675SRob Herring	status = "okay";
177724ba675SRob Herring};
178724ba675SRob Herring
179724ba675SRob Herring&mdp {
180724ba675SRob Herring	status = "okay";
181724ba675SRob Herring};
182724ba675SRob Herring
183724ba675SRob Herring&mdp_dsi1_out {
184724ba675SRob Herring	remote-endpoint = <&dsi0_in>;
185724ba675SRob Herring};
186724ba675SRob Herring
1877b22923cSDmitry Baryshkov&pm8821 {
1887b22923cSDmitry Baryshkov	interrupts-extended = <&tlmm_pinmux 76 IRQ_TYPE_LEVEL_LOW>;
1897b22923cSDmitry Baryshkov};
1907b22923cSDmitry Baryshkov
1917b22923cSDmitry Baryshkov&pm8921 {
1927b22923cSDmitry Baryshkov	interrupts-extended = <&tlmm_pinmux 74 IRQ_TYPE_LEVEL_LOW>;
1937b22923cSDmitry Baryshkov};
1947b22923cSDmitry Baryshkov
195724ba675SRob Herring&rpm {
196724ba675SRob Herring	regulators {
197*d2576209SDmitry Baryshkov		compatible = "qcom,rpm-pm8921-regulators";
198*d2576209SDmitry Baryshkov
199724ba675SRob Herring		vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
200724ba675SRob Herring		vin_lvs1_3_6-supply = <&pm8921_s4>;
201724ba675SRob Herring		vin_lvs4_5_7-supply = <&pm8921_s4>;
202724ba675SRob Herring
203724ba675SRob Herring		vdd_l24-supply = <&pm8921_s1>;
204724ba675SRob Herring		vdd_l25-supply = <&pm8921_s1>;
205724ba675SRob Herring		vin_lvs2-supply = <&pm8921_s1>;
206724ba675SRob Herring
207724ba675SRob Herring		vdd_l26-supply = <&pm8921_s7>;
208724ba675SRob Herring		vdd_l27-supply = <&pm8921_s7>;
209724ba675SRob Herring		vdd_l28-supply = <&pm8921_s7>;
210724ba675SRob Herring
211724ba675SRob Herring		vdd_ncp-supply = <&pm8921_l6>;
212724ba675SRob Herring
213724ba675SRob Herring		/* Buck SMPS */
214*d2576209SDmitry Baryshkov		pm8921_s1: s1 {
215724ba675SRob Herring			regulator-always-on;
216724ba675SRob Herring			regulator-min-microvolt = <1225000>;
217724ba675SRob Herring			regulator-max-microvolt = <1225000>;
218724ba675SRob Herring			qcom,switch-mode-frequency = <3200000>;
219724ba675SRob Herring			bias-pull-down;
220724ba675SRob Herring		};
221724ba675SRob Herring
222724ba675SRob Herring		/* msm otg HSUSB_VDDCX */
223*d2576209SDmitry Baryshkov		pm8921_s3: s3 {
224724ba675SRob Herring			regulator-min-microvolt = <500000>;
225724ba675SRob Herring			regulator-max-microvolt = <1150000>;
226724ba675SRob Herring			qcom,switch-mode-frequency = <4800000>;
227724ba675SRob Herring		};
228724ba675SRob Herring
229724ba675SRob Herring		/*
230724ba675SRob Herring		 * msm_sdcc.1-sdc-vdd_io
231724ba675SRob Herring		 * tabla2x-slim-CDC_VDDA_RX
232724ba675SRob Herring		 * tabla2x-slim-CDC_VDDA_TX
233724ba675SRob Herring		 * tabla2x-slim-CDC_VDD_CP
234724ba675SRob Herring		 * tabla2x-slim-VDDIO_CDC
235724ba675SRob Herring		 */
236*d2576209SDmitry Baryshkov		pm8921_s4: s4 {
237724ba675SRob Herring			regulator-min-microvolt = <1800000>;
238724ba675SRob Herring			regulator-max-microvolt = <1800000>;
239724ba675SRob Herring			qcom,switch-mode-frequency = <3200000>;
240724ba675SRob Herring			regulator-always-on;
241724ba675SRob Herring		};
242724ba675SRob Herring
243*d2576209SDmitry Baryshkov		pm8921_s7: s7 {
244724ba675SRob Herring			regulator-min-microvolt = <1300000>;
245724ba675SRob Herring			regulator-max-microvolt = <1300000>;
246724ba675SRob Herring			qcom,switch-mode-frequency = <3200000>;
247724ba675SRob Herring		};
248724ba675SRob Herring
249724ba675SRob Herring		/* mipi_dsi.1-dsi1_pll_vdda */
250*d2576209SDmitry Baryshkov		pm8921_l2: l2 {
251724ba675SRob Herring			regulator-min-microvolt = <1200000>;
252724ba675SRob Herring			regulator-max-microvolt = <1200000>;
253724ba675SRob Herring			regulator-always-on;
254724ba675SRob Herring		};
255724ba675SRob Herring
256724ba675SRob Herring		/* msm_otg-HSUSB_3p3 */
257*d2576209SDmitry Baryshkov		pm8921_l3: l3 {
258724ba675SRob Herring			regulator-min-microvolt = <3075000>;
259724ba675SRob Herring			regulator-max-microvolt = <3075000>;
260724ba675SRob Herring			bias-pull-down;
261724ba675SRob Herring		};
262724ba675SRob Herring
263724ba675SRob Herring		/* msm_otg-HSUSB_1p8 */
264*d2576209SDmitry Baryshkov		pm8921_l4: l4 {
265724ba675SRob Herring			regulator-min-microvolt = <1800000>;
266724ba675SRob Herring			regulator-max-microvolt = <1800000>;
267724ba675SRob Herring			bias-pull-down;
268724ba675SRob Herring		};
269724ba675SRob Herring
270724ba675SRob Herring		/* msm_sdcc.1-sdc_vdd */
271*d2576209SDmitry Baryshkov		pm8921_l5: l5 {
272724ba675SRob Herring			regulator-min-microvolt = <2950000>;
273724ba675SRob Herring			regulator-max-microvolt = <2950000>;
274724ba675SRob Herring			regulator-always-on;
275724ba675SRob Herring			bias-pull-down;
276724ba675SRob Herring		};
277724ba675SRob Herring
278*d2576209SDmitry Baryshkov		pm8921_l6: l6 {
279724ba675SRob Herring			regulator-min-microvolt = <2950000>;
280724ba675SRob Herring			regulator-max-microvolt = <2950000>;
281724ba675SRob Herring		};
282724ba675SRob Herring
283*d2576209SDmitry Baryshkov		pm8921_l8: l8 {
284*d2576209SDmitry Baryshkov		};
285*d2576209SDmitry Baryshkov
286724ba675SRob Herring		/* mipi_dsi.1-dsi1_avdd */
287*d2576209SDmitry Baryshkov		pm8921_l11: l11 {
288724ba675SRob Herring			regulator-min-microvolt = <3000000>;
289724ba675SRob Herring			regulator-max-microvolt = <3000000>;
290724ba675SRob Herring			bias-pull-down;
291724ba675SRob Herring			regulator-always-on;
292724ba675SRob Herring		};
293724ba675SRob Herring
294724ba675SRob Herring		/* pwm_power for backlight */
295*d2576209SDmitry Baryshkov		pm8921_l17: l17 {
296724ba675SRob Herring			regulator-min-microvolt = <3000000>;
297724ba675SRob Herring			regulator-max-microvolt = <3000000>;
298724ba675SRob Herring			regulator-always-on;
299724ba675SRob Herring		};
300724ba675SRob Herring
301724ba675SRob Herring		/* camera, qdsp6 */
302*d2576209SDmitry Baryshkov		pm8921_l23: l23 {
303724ba675SRob Herring			regulator-min-microvolt = <1800000>;
304724ba675SRob Herring			regulator-max-microvolt = <1800000>;
305724ba675SRob Herring			bias-pull-down;
306724ba675SRob Herring		};
307724ba675SRob Herring
308724ba675SRob Herring		/*
309724ba675SRob Herring		 * tabla2x-slim-CDC_VDDA_A_1P2V
310724ba675SRob Herring		 * tabla2x-slim-VDDD_CDC_D
311724ba675SRob Herring		 */
312*d2576209SDmitry Baryshkov		pm8921_l25: l25 {
313724ba675SRob Herring			regulator-min-microvolt = <1250000>;
314724ba675SRob Herring			regulator-max-microvolt = <1250000>;
315724ba675SRob Herring			bias-pull-down;
316724ba675SRob Herring		};
317724ba675SRob Herring
318*d2576209SDmitry Baryshkov		pm8921_lvs1: lvs1 {
319724ba675SRob Herring			bias-pull-down;
320724ba675SRob Herring		};
321724ba675SRob Herring
322*d2576209SDmitry Baryshkov		pm8921_lvs4: lvs4 {
323724ba675SRob Herring			bias-pull-down;
324724ba675SRob Herring		};
325724ba675SRob Herring
326*d2576209SDmitry Baryshkov		pm8921_lvs5: lvs5 {
327724ba675SRob Herring			bias-pull-down;
328724ba675SRob Herring		};
329724ba675SRob Herring
330*d2576209SDmitry Baryshkov		pm8921_lvs6: lvs6 {
331724ba675SRob Herring			bias-pull-down;
332724ba675SRob Herring		};
333724ba675SRob Herring		/*
334724ba675SRob Herring		 * mipi_dsi.1-dsi1_vddio
335724ba675SRob Herring		 * pil_riva-pll_vdd
336724ba675SRob Herring		 */
337*d2576209SDmitry Baryshkov		pm8921_lvs7: lvs7 {
338724ba675SRob Herring			bias-pull-down;
339724ba675SRob Herring		};
340724ba675SRob Herring	};
341724ba675SRob Herring};
342724ba675SRob Herring
3430802de33SDmitry Baryshkov/* eMMC */
3440802de33SDmitry Baryshkov&sdcc1 {
3450802de33SDmitry Baryshkov	vmmc-supply = <&pm8921_l5>;
3460802de33SDmitry Baryshkov	vqmmc-supply = <&pm8921_s4>;
3470802de33SDmitry Baryshkov	status = "okay";
3480802de33SDmitry Baryshkov};
3490802de33SDmitry Baryshkov
350724ba675SRob Herring&usb_hs1_phy {
351724ba675SRob Herring	v3p3-supply = <&pm8921_l3>;
352724ba675SRob Herring	v1p8-supply = <&pm8921_l4>;
353724ba675SRob Herring};
354724ba675SRob Herring
355724ba675SRob Herring/* OTG */
356724ba675SRob Herring&usb1 {
357724ba675SRob Herring	dr_mode = "otg";
358724ba675SRob Herring	status = "okay";
359724ba675SRob Herring};
360