xref: /linux/scripts/dtc/include-prefixes/arm/qcom/qcom-apq8064-asus-nexus7-flo.dts (revision d25762097bc26394c8d88ebc9353497bdc67ec27)
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	pinctrl-0 = <&i2c1_pins>;
129724ba675SRob Herring	pinctrl-names = "default";
130724ba675SRob Herring
131724ba675SRob Herring	eeprom@52 {
132724ba675SRob Herring		compatible = "atmel,24c128";
133724ba675SRob Herring		reg = <0x52>;
134724ba675SRob Herring		pagesize = <32>;
135724ba675SRob Herring	};
136724ba675SRob Herring
137724ba675SRob Herring	bq27541@55 {
138724ba675SRob Herring		compatible = "ti,bq27541";
139724ba675SRob Herring		reg = <0x55>;
140724ba675SRob Herring	};
141724ba675SRob Herring
142724ba675SRob Herring};
143724ba675SRob Herring
144724ba675SRob Herring&gsbi3 {
145724ba675SRob Herring	qcom,mode = <GSBI_PROT_I2C>;
146724ba675SRob Herring	status = "okay";
147724ba675SRob Herring};
148724ba675SRob Herring
149724ba675SRob Herring&gsbi3_i2c {
150724ba675SRob Herring	clock-frequency = <200000>;
151724ba675SRob Herring	pinctrl-0 = <&i2c3_pins>;
152724ba675SRob Herring	pinctrl-names = "default";
153724ba675SRob Herring	status = "okay";
154724ba675SRob Herring
155724ba675SRob Herring	trackpad@10 {
156724ba675SRob Herring		compatible = "elan,ekth3500";
157724ba675SRob Herring		reg = <0x10>;
158724ba675SRob Herring		interrupt-parent = <&tlmm_pinmux>;
159724ba675SRob Herring		interrupts = <6 IRQ_TYPE_EDGE_FALLING>;
160724ba675SRob Herring	};
161724ba675SRob Herring};
162724ba675SRob Herring
163724ba675SRob Herring&gsbi6 {
164724ba675SRob Herring	qcom,mode = <GSBI_PROT_I2C_UART>;
165724ba675SRob Herring	status = "okay";
166724ba675SRob Herring};
167724ba675SRob Herring
168724ba675SRob Herring&gsbi6_serial {
169724ba675SRob Herring	pinctrl-names = "default";
170724ba675SRob Herring	pinctrl-0 = <&gsbi6_uart_4pins>;
171724ba675SRob Herring	status = "okay";
172724ba675SRob Herring};
173724ba675SRob Herring
174724ba675SRob Herring&gsbi7 {
175724ba675SRob Herring	qcom,mode = <GSBI_PROT_I2C_UART>;
176724ba675SRob Herring	status = "okay";
177724ba675SRob Herring};
178724ba675SRob Herring
179724ba675SRob Herring&gsbi7_serial {
180724ba675SRob Herring	status = "okay";
181724ba675SRob Herring};
182724ba675SRob Herring
183724ba675SRob Herring&mdp {
184724ba675SRob Herring	status = "okay";
185724ba675SRob Herring};
186724ba675SRob Herring
187724ba675SRob Herring&mdp_dsi1_out {
188724ba675SRob Herring	remote-endpoint = <&dsi0_in>;
189724ba675SRob Herring};
190724ba675SRob Herring
1917b22923cSDmitry Baryshkov&pm8821 {
1927b22923cSDmitry Baryshkov	interrupts-extended = <&tlmm_pinmux 76 IRQ_TYPE_LEVEL_LOW>;
1937b22923cSDmitry Baryshkov};
1947b22923cSDmitry Baryshkov
1957b22923cSDmitry Baryshkov&pm8921 {
1967b22923cSDmitry Baryshkov	interrupts-extended = <&tlmm_pinmux 74 IRQ_TYPE_LEVEL_LOW>;
1977b22923cSDmitry Baryshkov};
1987b22923cSDmitry Baryshkov
199724ba675SRob Herring&rpm {
200724ba675SRob Herring	regulators {
201*d2576209SDmitry Baryshkov		compatible = "qcom,rpm-pm8921-regulators";
202*d2576209SDmitry Baryshkov
203724ba675SRob Herring		vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
204724ba675SRob Herring		vin_lvs1_3_6-supply = <&pm8921_s4>;
205724ba675SRob Herring		vin_lvs4_5_7-supply = <&pm8921_s4>;
206724ba675SRob Herring
207724ba675SRob Herring		vdd_l24-supply = <&pm8921_s1>;
208724ba675SRob Herring		vdd_l25-supply = <&pm8921_s1>;
209724ba675SRob Herring		vin_lvs2-supply = <&pm8921_s1>;
210724ba675SRob Herring
211724ba675SRob Herring		vdd_l26-supply = <&pm8921_s7>;
212724ba675SRob Herring		vdd_l27-supply = <&pm8921_s7>;
213724ba675SRob Herring		vdd_l28-supply = <&pm8921_s7>;
214724ba675SRob Herring
215724ba675SRob Herring		vdd_ncp-supply = <&pm8921_l6>;
216724ba675SRob Herring
217724ba675SRob Herring		/* Buck SMPS */
218*d2576209SDmitry Baryshkov		pm8921_s1: s1 {
219724ba675SRob Herring			regulator-always-on;
220724ba675SRob Herring			regulator-min-microvolt = <1225000>;
221724ba675SRob Herring			regulator-max-microvolt = <1225000>;
222724ba675SRob Herring			qcom,switch-mode-frequency = <3200000>;
223724ba675SRob Herring			bias-pull-down;
224724ba675SRob Herring		};
225724ba675SRob Herring
226724ba675SRob Herring		/* msm otg HSUSB_VDDCX */
227*d2576209SDmitry Baryshkov		pm8921_s3: s3 {
228724ba675SRob Herring			regulator-min-microvolt = <500000>;
229724ba675SRob Herring			regulator-max-microvolt = <1150000>;
230724ba675SRob Herring			qcom,switch-mode-frequency = <4800000>;
231724ba675SRob Herring		};
232724ba675SRob Herring
233724ba675SRob Herring		/*
234724ba675SRob Herring		 * msm_sdcc.1-sdc-vdd_io
235724ba675SRob Herring		 * tabla2x-slim-CDC_VDDA_RX
236724ba675SRob Herring		 * tabla2x-slim-CDC_VDDA_TX
237724ba675SRob Herring		 * tabla2x-slim-CDC_VDD_CP
238724ba675SRob Herring		 * tabla2x-slim-VDDIO_CDC
239724ba675SRob Herring		 */
240*d2576209SDmitry Baryshkov		pm8921_s4: s4 {
241724ba675SRob Herring			regulator-min-microvolt = <1800000>;
242724ba675SRob Herring			regulator-max-microvolt = <1800000>;
243724ba675SRob Herring			qcom,switch-mode-frequency = <3200000>;
244724ba675SRob Herring			regulator-always-on;
245724ba675SRob Herring		};
246724ba675SRob Herring
247*d2576209SDmitry Baryshkov		pm8921_s7: s7 {
248724ba675SRob Herring			regulator-min-microvolt = <1300000>;
249724ba675SRob Herring			regulator-max-microvolt = <1300000>;
250724ba675SRob Herring			qcom,switch-mode-frequency = <3200000>;
251724ba675SRob Herring		};
252724ba675SRob Herring
253724ba675SRob Herring		/* mipi_dsi.1-dsi1_pll_vdda */
254*d2576209SDmitry Baryshkov		pm8921_l2: l2 {
255724ba675SRob Herring			regulator-min-microvolt = <1200000>;
256724ba675SRob Herring			regulator-max-microvolt = <1200000>;
257724ba675SRob Herring			regulator-always-on;
258724ba675SRob Herring		};
259724ba675SRob Herring
260724ba675SRob Herring		/* msm_otg-HSUSB_3p3 */
261*d2576209SDmitry Baryshkov		pm8921_l3: l3 {
262724ba675SRob Herring			regulator-min-microvolt = <3075000>;
263724ba675SRob Herring			regulator-max-microvolt = <3075000>;
264724ba675SRob Herring			bias-pull-down;
265724ba675SRob Herring		};
266724ba675SRob Herring
267724ba675SRob Herring		/* msm_otg-HSUSB_1p8 */
268*d2576209SDmitry Baryshkov		pm8921_l4: l4 {
269724ba675SRob Herring			regulator-min-microvolt = <1800000>;
270724ba675SRob Herring			regulator-max-microvolt = <1800000>;
271724ba675SRob Herring			bias-pull-down;
272724ba675SRob Herring		};
273724ba675SRob Herring
274724ba675SRob Herring		/* msm_sdcc.1-sdc_vdd */
275*d2576209SDmitry Baryshkov		pm8921_l5: l5 {
276724ba675SRob Herring			regulator-min-microvolt = <2950000>;
277724ba675SRob Herring			regulator-max-microvolt = <2950000>;
278724ba675SRob Herring			regulator-always-on;
279724ba675SRob Herring			bias-pull-down;
280724ba675SRob Herring		};
281724ba675SRob Herring
282*d2576209SDmitry Baryshkov		pm8921_l6: l6 {
283724ba675SRob Herring			regulator-min-microvolt = <2950000>;
284724ba675SRob Herring			regulator-max-microvolt = <2950000>;
285724ba675SRob Herring		};
286724ba675SRob Herring
287*d2576209SDmitry Baryshkov		pm8921_l8: l8 {
288*d2576209SDmitry Baryshkov		};
289*d2576209SDmitry Baryshkov
290724ba675SRob Herring		/* mipi_dsi.1-dsi1_avdd */
291*d2576209SDmitry Baryshkov		pm8921_l11: l11 {
292724ba675SRob Herring			regulator-min-microvolt = <3000000>;
293724ba675SRob Herring			regulator-max-microvolt = <3000000>;
294724ba675SRob Herring			bias-pull-down;
295724ba675SRob Herring			regulator-always-on;
296724ba675SRob Herring		};
297724ba675SRob Herring
298724ba675SRob Herring		/* pwm_power for backlight */
299*d2576209SDmitry Baryshkov		pm8921_l17: l17 {
300724ba675SRob Herring			regulator-min-microvolt = <3000000>;
301724ba675SRob Herring			regulator-max-microvolt = <3000000>;
302724ba675SRob Herring			regulator-always-on;
303724ba675SRob Herring		};
304724ba675SRob Herring
305724ba675SRob Herring		/* camera, qdsp6 */
306*d2576209SDmitry Baryshkov		pm8921_l23: l23 {
307724ba675SRob Herring			regulator-min-microvolt = <1800000>;
308724ba675SRob Herring			regulator-max-microvolt = <1800000>;
309724ba675SRob Herring			bias-pull-down;
310724ba675SRob Herring		};
311724ba675SRob Herring
312724ba675SRob Herring		/*
313724ba675SRob Herring		 * tabla2x-slim-CDC_VDDA_A_1P2V
314724ba675SRob Herring		 * tabla2x-slim-VDDD_CDC_D
315724ba675SRob Herring		 */
316*d2576209SDmitry Baryshkov		pm8921_l25: l25 {
317724ba675SRob Herring			regulator-min-microvolt = <1250000>;
318724ba675SRob Herring			regulator-max-microvolt = <1250000>;
319724ba675SRob Herring			bias-pull-down;
320724ba675SRob Herring		};
321724ba675SRob Herring
322*d2576209SDmitry Baryshkov		pm8921_lvs1: lvs1 {
323724ba675SRob Herring			bias-pull-down;
324724ba675SRob Herring		};
325724ba675SRob Herring
326*d2576209SDmitry Baryshkov		pm8921_lvs4: lvs4 {
327724ba675SRob Herring			bias-pull-down;
328724ba675SRob Herring		};
329724ba675SRob Herring
330*d2576209SDmitry Baryshkov		pm8921_lvs5: lvs5 {
331724ba675SRob Herring			bias-pull-down;
332724ba675SRob Herring		};
333724ba675SRob Herring
334*d2576209SDmitry Baryshkov		pm8921_lvs6: lvs6 {
335724ba675SRob Herring			bias-pull-down;
336724ba675SRob Herring		};
337724ba675SRob Herring		/*
338724ba675SRob Herring		 * mipi_dsi.1-dsi1_vddio
339724ba675SRob Herring		 * pil_riva-pll_vdd
340724ba675SRob Herring		 */
341*d2576209SDmitry Baryshkov		pm8921_lvs7: lvs7 {
342724ba675SRob Herring			bias-pull-down;
343724ba675SRob Herring		};
344724ba675SRob Herring	};
345724ba675SRob Herring};
346724ba675SRob Herring
3470802de33SDmitry Baryshkov/* eMMC */
3480802de33SDmitry Baryshkov&sdcc1 {
3490802de33SDmitry Baryshkov	vmmc-supply = <&pm8921_l5>;
3500802de33SDmitry Baryshkov	vqmmc-supply = <&pm8921_s4>;
3510802de33SDmitry Baryshkov	status = "okay";
3520802de33SDmitry Baryshkov};
3530802de33SDmitry Baryshkov
354724ba675SRob Herring&usb_hs1_phy {
355724ba675SRob Herring	v3p3-supply = <&pm8921_l3>;
356724ba675SRob Herring	v1p8-supply = <&pm8921_l4>;
357724ba675SRob Herring};
358724ba675SRob Herring
359724ba675SRob Herring/* OTG */
360724ba675SRob Herring&usb1 {
361724ba675SRob Herring	dr_mode = "otg";
362724ba675SRob Herring	status = "okay";
363724ba675SRob Herring};
364