17ec3e673SRob Clark// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
27ec3e673SRob Clark/*
37ec3e673SRob Clark * Google Trogdor device tree source (common between revisions)
47ec3e673SRob Clark *
57ec3e673SRob Clark * Copyright 2019 Google LLC.
67ec3e673SRob Clark */
77ec3e673SRob Clark
87ec3e673SRob Clark#include <dt-bindings/gpio/gpio.h>
97ec3e673SRob Clark#include <dt-bindings/input/input.h>
107ec3e673SRob Clark#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
117ec3e673SRob Clark
127ec3e673SRob Clark/* PMICs depend on spmi_bus label and so must come after SoC */
137ec3e673SRob Clark#include "pm6150.dtsi"
147ec3e673SRob Clark#include "pm6150l.dtsi"
157ec3e673SRob Clark
16bb06eb36SAntony Wang/ {
17bb06eb36SAntony Wang	thermal-zones {
18bb06eb36SAntony Wang		charger-thermal {
19bb06eb36SAntony Wang			polling-delay-passive = <0>;
20bb06eb36SAntony Wang			polling-delay = <0>;
21bb06eb36SAntony Wang
22bb06eb36SAntony Wang			thermal-sensors = <&pm6150_adc_tm 1>;
23bb06eb36SAntony Wang
24bb06eb36SAntony Wang			trips {
25bb06eb36SAntony Wang				temperature = <125000>;
26bb06eb36SAntony Wang				hysteresis = <1000>;
27bb06eb36SAntony Wang				type = "critical";
28bb06eb36SAntony Wang			};
29bb06eb36SAntony Wang		};
30bb06eb36SAntony Wang	};
31bb06eb36SAntony Wang};
32bb06eb36SAntony Wang
337ec3e673SRob Clark/*
347ec3e673SRob Clark * Reserved memory changes
357ec3e673SRob Clark *
367ec3e673SRob Clark * Delete all unused memory nodes and define the peripheral memory regions
377ec3e673SRob Clark * required by the board dts.
387ec3e673SRob Clark */
397ec3e673SRob Clark
407ec3e673SRob Clark/delete-node/ &hyp_mem;
417ec3e673SRob Clark/delete-node/ &xbl_mem;
427ec3e673SRob Clark/delete-node/ &aop_mem;
437ec3e673SRob Clark/delete-node/ &sec_apps_mem;
447ec3e673SRob Clark/delete-node/ &tz_mem;
457ec3e673SRob Clark
467ec3e673SRob Clark/* Increase the size from 2MB to 8MB */
477ec3e673SRob Clark&rmtfs_mem {
487ec3e673SRob Clark	reg = <0x0 0x84400000 0x0 0x800000>;
497ec3e673SRob Clark};
507ec3e673SRob Clark
517ec3e673SRob Clark/ {
527ec3e673SRob Clark	reserved-memory {
537ec3e673SRob Clark		atf_mem: memory@80b00000 {
547ec3e673SRob Clark			reg = <0x0 0x80b00000 0x0 0x100000>;
557ec3e673SRob Clark			no-map;
567ec3e673SRob Clark		};
577ec3e673SRob Clark
587ec3e673SRob Clark		mpss_mem: memory@86000000 {
59ef9a5d18SSibi Sankar			reg = <0x0 0x86000000 0x0 0x2000000>;
607ec3e673SRob Clark			no-map;
617ec3e673SRob Clark		};
627ec3e673SRob Clark
637ec3e673SRob Clark		camera_mem: memory@8ec00000 {
647ec3e673SRob Clark			reg = <0x0 0x8ec00000 0x0 0x500000>;
657ec3e673SRob Clark			no-map;
667ec3e673SRob Clark		};
677ec3e673SRob Clark
687ec3e673SRob Clark		venus_mem: memory@8f600000 {
697ec3e673SRob Clark			reg = <0 0x8f600000 0 0x500000>;
707ec3e673SRob Clark			no-map;
717ec3e673SRob Clark		};
727ec3e673SRob Clark
737ec3e673SRob Clark		wlan_mem: memory@94100000 {
747ec3e673SRob Clark			reg = <0x0 0x94100000 0x0 0x200000>;
757ec3e673SRob Clark			no-map;
767ec3e673SRob Clark		};
777ec3e673SRob Clark
787ec3e673SRob Clark		mba_mem: memory@94400000 {
797ec3e673SRob Clark			reg = <0x0 0x94400000 0x0 0x200000>;
807ec3e673SRob Clark			no-map;
817ec3e673SRob Clark		};
827ec3e673SRob Clark	};
837ec3e673SRob Clark
847ec3e673SRob Clark	aliases {
857ec3e673SRob Clark		bluetooth0 = &bluetooth;
867ec3e673SRob Clark		hsuart0 = &uart3;
877ec3e673SRob Clark		serial0 = &uart8;
887ec3e673SRob Clark		wifi0 = &wifi;
897ec3e673SRob Clark	};
907ec3e673SRob Clark
917ec3e673SRob Clark	chosen {
927ec3e673SRob Clark		stdout-path = "serial0:115200n8";
937ec3e673SRob Clark	};
947ec3e673SRob Clark
957ec3e673SRob Clark	/* FIXED REGULATORS - parents above children */
967ec3e673SRob Clark
977ec3e673SRob Clark	/* This is the top level supply and variable voltage */
987ec3e673SRob Clark	ppvar_sys: ppvar-sys-regulator {
997ec3e673SRob Clark		compatible = "regulator-fixed";
1007ec3e673SRob Clark		regulator-name = "ppvar_sys";
1017ec3e673SRob Clark		regulator-always-on;
1027ec3e673SRob Clark		regulator-boot-on;
1037ec3e673SRob Clark	};
1047ec3e673SRob Clark
1057ec3e673SRob Clark	/* This divides ppvar_sys by 2, so voltage is variable */
1067ec3e673SRob Clark	src_vph_pwr: src-vph-pwr-regulator {
1077ec3e673SRob Clark		compatible = "regulator-fixed";
1087ec3e673SRob Clark		regulator-name = "src_vph_pwr";
1097ec3e673SRob Clark
1107ec3e673SRob Clark		/* EC turns on with switchcap_on; always on for AP */
1117ec3e673SRob Clark		regulator-always-on;
1127ec3e673SRob Clark		regulator-boot-on;
1137ec3e673SRob Clark
1147ec3e673SRob Clark		vin-supply = <&ppvar_sys>;
1157ec3e673SRob Clark	};
1167ec3e673SRob Clark
1177ec3e673SRob Clark	pp5000_a: pp5000-a-regulator {
1187ec3e673SRob Clark		compatible = "regulator-fixed";
1197ec3e673SRob Clark		regulator-name = "pp5000_a";
1207ec3e673SRob Clark
1217ec3e673SRob Clark		/* EC turns on with en_pp5000_a; always on for AP */
1227ec3e673SRob Clark		regulator-always-on;
1237ec3e673SRob Clark		regulator-boot-on;
1247ec3e673SRob Clark		regulator-min-microvolt = <5000000>;
1257ec3e673SRob Clark		regulator-max-microvolt = <5000000>;
1267ec3e673SRob Clark
1277ec3e673SRob Clark		vin-supply = <&ppvar_sys>;
1287ec3e673SRob Clark	};
1297ec3e673SRob Clark
1307ec3e673SRob Clark	pp3300_a: pp3300-a-regulator {
1317ec3e673SRob Clark		compatible = "regulator-fixed";
1327ec3e673SRob Clark		regulator-name = "pp3300_a";
1337ec3e673SRob Clark
1347ec3e673SRob Clark		/* EC turns on with en_pp3300_a; always on for AP */
1357ec3e673SRob Clark		regulator-always-on;
1367ec3e673SRob Clark		regulator-boot-on;
1377ec3e673SRob Clark		regulator-min-microvolt = <3300000>;
1387ec3e673SRob Clark		regulator-max-microvolt = <3300000>;
1397ec3e673SRob Clark
1407ec3e673SRob Clark		/*
1417ec3e673SRob Clark		 * Actually should be pp3300 but that's practically an alias for
1427ec3e673SRob Clark		 * pp3300_a so we use pp3300's vin-supply here to avoid one more
1437ec3e673SRob Clark		 * node.
1447ec3e673SRob Clark		 */
1457ec3e673SRob Clark		vin-supply = <&ppvar_sys>;
1467ec3e673SRob Clark	};
1477ec3e673SRob Clark
1487ec3e673SRob Clark	pp3300_audio:
1497ec3e673SRob Clark	pp3300_codec: pp3300-codec-regulator {
1507ec3e673SRob Clark		compatible = "regulator-fixed";
1517ec3e673SRob Clark		regulator-name = "pp3300_codec";
1527ec3e673SRob Clark
1537ec3e673SRob Clark		regulator-min-microvolt = <3300000>;
1547ec3e673SRob Clark		regulator-max-microvolt = <3300000>;
1557ec3e673SRob Clark
1567ec3e673SRob Clark		gpio = <&tlmm 83 GPIO_ACTIVE_HIGH>;
1577ec3e673SRob Clark		enable-active-high;
1587ec3e673SRob Clark		pinctrl-names = "default";
1597ec3e673SRob Clark		pinctrl-0 = <&en_pp3300_codec>;
1607ec3e673SRob Clark
1617ec3e673SRob Clark		vin-supply = <&pp3300_a>;
1627ec3e673SRob Clark	};
1637ec3e673SRob Clark
1647ec3e673SRob Clark	pp3300_dx_edp:
1657ec3e673SRob Clark	pp3300_ts: pp3300-dx-edp-regulator {
1667ec3e673SRob Clark		compatible = "regulator-fixed";
1677ec3e673SRob Clark		regulator-name = "pp3300_dx_edp";
1687ec3e673SRob Clark
1697ec3e673SRob Clark		regulator-min-microvolt = <3300000>;
1707ec3e673SRob Clark		regulator-max-microvolt = <3300000>;
1717ec3e673SRob Clark
1727ec3e673SRob Clark		gpio = <&tlmm 30 GPIO_ACTIVE_HIGH>;
1737ec3e673SRob Clark		enable-active-high;
1747ec3e673SRob Clark		pinctrl-names = "default";
1757ec3e673SRob Clark		pinctrl-0 = <&en_pp3300_dx_edp>;
1767ec3e673SRob Clark
1777ec3e673SRob Clark		vin-supply = <&pp3300_a>;
1787ec3e673SRob Clark	};
1797ec3e673SRob Clark
1807ec3e673SRob Clark	pp3300_fp_tp: pp3300-fp-tp-regulator {
1817ec3e673SRob Clark		compatible = "regulator-fixed";
1827ec3e673SRob Clark		regulator-name = "pp3300_fp_tp";
1837ec3e673SRob Clark
1847ec3e673SRob Clark		regulator-min-microvolt = <3300000>;
1857ec3e673SRob Clark		regulator-max-microvolt = <3300000>;
1867ec3e673SRob Clark
1877ec3e673SRob Clark		/* AP turns on with PP1800_VIO_OUT; always on for AP */
1887ec3e673SRob Clark		regulator-always-on;
1897ec3e673SRob Clark		regulator-boot-on;
1907ec3e673SRob Clark
1917ec3e673SRob Clark		vin-supply = <&pp3300_a>;
1927ec3e673SRob Clark	};
1937ec3e673SRob Clark
194066c2a94SMatthias Kaehlcke	pp3300_hub: pp3300-hub {
195066c2a94SMatthias Kaehlcke		compatible = "regulator-fixed";
196066c2a94SMatthias Kaehlcke		regulator-name = "pp3300_hub";
197066c2a94SMatthias Kaehlcke
198066c2a94SMatthias Kaehlcke		regulator-min-microvolt = <3300000>;
199066c2a94SMatthias Kaehlcke		regulator-max-microvolt = <3300000>;
200066c2a94SMatthias Kaehlcke
201066c2a94SMatthias Kaehlcke		gpio = <&tlmm 84 GPIO_ACTIVE_HIGH>;
202066c2a94SMatthias Kaehlcke		enable-active-high;
203066c2a94SMatthias Kaehlcke		pinctrl-names = "default";
204066c2a94SMatthias Kaehlcke		pinctrl-0 = <&en_pp3300_hub>;
205066c2a94SMatthias Kaehlcke
206066c2a94SMatthias Kaehlcke		regulator-always-on;
207066c2a94SMatthias Kaehlcke		regulator-boot-on;
208066c2a94SMatthias Kaehlcke
209066c2a94SMatthias Kaehlcke		vin-supply = <&pp3300_a>;
210066c2a94SMatthias Kaehlcke	};
211066c2a94SMatthias Kaehlcke
2127ec3e673SRob Clark	/* BOARD-SPECIFIC TOP LEVEL NODES */
2137ec3e673SRob Clark
2147ec3e673SRob Clark	backlight: backlight {
2157ec3e673SRob Clark		compatible = "pwm-backlight";
2167ec3e673SRob Clark
217ab8e32daSAlexandru Stan		/* The panels don't seem to like anything below ~ 5% */
218ab8e32daSAlexandru Stan		brightness-levels = <
219ab8e32daSAlexandru Stan			196 256 324 400 484 576 676 784 900 1024 1156 1296
220ab8e32daSAlexandru Stan			1444 1600 1764 1936 2116 2304 2500 2704 2916 3136
221ab8e32daSAlexandru Stan			3364 3600 3844 4096
222ab8e32daSAlexandru Stan		>;
223ab8e32daSAlexandru Stan		num-interpolated-steps = <64>;
224ab8e32daSAlexandru Stan		default-brightness-level = <951>;
225ab8e32daSAlexandru Stan
2267ec3e673SRob Clark		pwms = <&cros_ec_pwm 1>;
2277ec3e673SRob Clark		enable-gpios = <&tlmm 12 GPIO_ACTIVE_HIGH>;
2287ec3e673SRob Clark		power-supply = <&ppvar_sys>;
2297ec3e673SRob Clark		pinctrl-names = "default";
2307ec3e673SRob Clark		pinctrl-0 = <&ap_edp_bklten>;
2317ec3e673SRob Clark	};
2327ec3e673SRob Clark
2337ec3e673SRob Clark	gpio_keys: gpio-keys {
2347ec3e673SRob Clark		compatible = "gpio-keys";
2357ec3e673SRob Clark		status = "disabled";
2367ec3e673SRob Clark		pinctrl-names = "default";
2377ec3e673SRob Clark		pinctrl-0 = <&pen_pdct_l>;
2387ec3e673SRob Clark
239d4b85bc5STerry Hsiao		pen_insert: pen-insert {
2407ec3e673SRob Clark			label = "Pen Insert";
2417ec3e673SRob Clark
2427ec3e673SRob Clark			/* Insert = low, eject = high */
2437ec3e673SRob Clark			gpios = <&tlmm 52 GPIO_ACTIVE_LOW>;
2447ec3e673SRob Clark			linux,code = <SW_PEN_INSERTED>;
2457ec3e673SRob Clark			linux,input-type = <EV_SW>;
2467ec3e673SRob Clark			wakeup-source;
2477ec3e673SRob Clark		};
2487ec3e673SRob Clark	};
2497ec3e673SRob Clark
2507ec3e673SRob Clark	max98357a: audio-codec-0 {
2517ec3e673SRob Clark		compatible = "maxim,max98357a";
2527ec3e673SRob Clark		pinctrl-names = "default";
2537ec3e673SRob Clark		pinctrl-0 = <&amp_en>;
2547ec3e673SRob Clark		sdmode-gpios = <&tlmm 23 GPIO_ACTIVE_HIGH>;
2557ec3e673SRob Clark		#sound-dai-cells = <0>;
2567ec3e673SRob Clark	};
2577ec3e673SRob Clark
2587ec3e673SRob Clark	pwmleds {
2597ec3e673SRob Clark		compatible = "pwm-leds";
2607ec3e673SRob Clark		keyboard_backlight: keyboard-backlight {
2617ec3e673SRob Clark			status = "disabled";
2627ec3e673SRob Clark			label = "cros_ec::kbd_backlight";
2637ec3e673SRob Clark			pwms = <&cros_ec_pwm 0>;
2647ec3e673SRob Clark			max-brightness = <1023>;
2657ec3e673SRob Clark		};
2667ec3e673SRob Clark	};
2677ec3e673SRob Clark};
2687ec3e673SRob Clark
2697ec3e673SRob Clark&qfprom {
2707ec3e673SRob Clark	vcc-supply = <&pp1800_l11a>;
2717ec3e673SRob Clark};
2727ec3e673SRob Clark
2737ec3e673SRob Clark&qspi {
2747ec3e673SRob Clark	status = "okay";
2757ec3e673SRob Clark	pinctrl-names = "default";
2767ec3e673SRob Clark	pinctrl-0 = <&qspi_clk>, <&qspi_cs0>, <&qspi_data01>;
2777ec3e673SRob Clark
2787ec3e673SRob Clark	flash@0 {
2797ec3e673SRob Clark		compatible = "jedec,spi-nor";
2807ec3e673SRob Clark		reg = <0>;
2817ec3e673SRob Clark
2827ec3e673SRob Clark		/* TODO: Increase frequency after testing */
2837ec3e673SRob Clark		spi-max-frequency = <25000000>;
2847ec3e673SRob Clark		spi-tx-bus-width = <2>;
2857ec3e673SRob Clark		spi-rx-bus-width = <2>;
2867ec3e673SRob Clark	};
2877ec3e673SRob Clark};
2887ec3e673SRob Clark
2897ec3e673SRob Clark&apps_rsc {
2907ec3e673SRob Clark	pm6150-rpmh-regulators {
2917ec3e673SRob Clark		compatible = "qcom,pm6150-rpmh-regulators";
2927ec3e673SRob Clark		qcom,pmic-id = "a";
2937ec3e673SRob Clark
2947ec3e673SRob Clark		vddpx_1:
2957ec3e673SRob Clark		vdd2:
2967ec3e673SRob Clark		pp1125_s1a: smps1 {
2977ec3e673SRob Clark			regulator-min-microvolt = <1128000>;
2987ec3e673SRob Clark			regulator-max-microvolt = <1128000>;
2997ec3e673SRob Clark		};
3007ec3e673SRob Clark
3017ec3e673SRob Clark		vdd_qlink_lv:
3027ec3e673SRob Clark		vdd_qlink_lv_ck:
3037ec3e673SRob Clark		vdd_qusb_hs0_core:
3047ec3e673SRob Clark		vdd_ufs1_core:
3057ec3e673SRob Clark		vdda_mipi_csi0_0p9:
3067ec3e673SRob Clark		vdda_mipi_csi1_0p9:
3077ec3e673SRob Clark		vdda_mipi_csi2_0p9:
3087ec3e673SRob Clark		vdda_mipi_csi3_0p9:
3097ec3e673SRob Clark		vdda_mipi_dsi0_pll:
3107ec3e673SRob Clark		vdda_pll_cc_ebi01:
3117ec3e673SRob Clark		vdda_qrefs_0p9:
3127ec3e673SRob Clark		vdda_usb_ss_dp_core:
3137ec3e673SRob Clark		pp900_l4a: ldo4 {
3147ec3e673SRob Clark			regulator-min-microvolt = <824000>;
3157ec3e673SRob Clark			regulator-max-microvolt = <928000>;
3167ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3177ec3e673SRob Clark		};
3187ec3e673SRob Clark
3197ec3e673SRob Clark		vdd_cx_wlan:
3207ec3e673SRob Clark		pp800_l9a: ldo9 {
3217ec3e673SRob Clark			regulator-min-microvolt = <488000>;
3227ec3e673SRob Clark			regulator-max-microvolt = <800000>;
3237ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3247ec3e673SRob Clark		};
3257ec3e673SRob Clark
3267ec3e673SRob Clark		vdd1:
3277ec3e673SRob Clark		vddpx_3:
3287ec3e673SRob Clark		vddpx_7:
3297ec3e673SRob Clark		vio_in:
3307ec3e673SRob Clark		pp1800_l10a: ldo10 {
3317ec3e673SRob Clark			regulator-min-microvolt = <1800000>;
3327ec3e673SRob Clark			regulator-max-microvolt = <1800000>;
3337ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3347ec3e673SRob Clark		};
3357ec3e673SRob Clark
3367ec3e673SRob Clark		vdd_qfprom:
3377ec3e673SRob Clark		vdda_apc1_cs_1p8:
3387ec3e673SRob Clark		vdda_qrefs_1p8:
3397ec3e673SRob Clark		vdda_qusb_hs0_1p8:
3407ec3e673SRob Clark		vddpx_11:
3417ec3e673SRob Clark		vreg_bb_clk:
3427ec3e673SRob Clark		pp1800_l11a: ldo11 {
3437ec3e673SRob Clark			regulator-min-microvolt = <1800000>;
3447ec3e673SRob Clark			regulator-max-microvolt = <1800000>;
3457ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3467ec3e673SRob Clark		};
3477ec3e673SRob Clark
3487ec3e673SRob Clark		mcp_vccq:
3497ec3e673SRob Clark		pp1800_l12a_r: ldo12 {
3507ec3e673SRob Clark			regulator-min-microvolt = <1800000>;
3517ec3e673SRob Clark			regulator-max-microvolt = <1800000>;
3527ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3537ec3e673SRob Clark		};
3547ec3e673SRob Clark
355*e5376f2eSDouglas Anderson		/*
356*e5376f2eSDouglas Anderson		 * On trogdor this needs to match l10a since we use it to
357*e5376f2eSDouglas Anderson		 * give power to things like SPI flash which communicate back
358*e5376f2eSDouglas Anderson		 * on lines powered by l10a.  Thus we force to 1.8V.
359*e5376f2eSDouglas Anderson		 */
3607ec3e673SRob Clark		pp1800_l13a: ldo13 {
3617ec3e673SRob Clark			regulator-min-microvolt = <1800000>;
3627ec3e673SRob Clark			regulator-max-microvolt = <1800000>;
3637ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3647ec3e673SRob Clark		};
3657ec3e673SRob Clark
3667ec3e673SRob Clark		pp1800_prox:
3677ec3e673SRob Clark		pp1800_l14a: ldo14 {
3687ec3e673SRob Clark			regulator-min-microvolt = <1800000>;
3697ec3e673SRob Clark			regulator-max-microvolt = <1800000>;
3707ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3717ec3e673SRob Clark		};
3727ec3e673SRob Clark
3737ec3e673SRob Clark		pp1800_alc5682:
3747ec3e673SRob Clark		pp1800_l15a: ldo15 {
3757ec3e673SRob Clark			regulator-min-microvolt = <1800000>;
3767ec3e673SRob Clark			regulator-max-microvolt = <1800000>;
3777ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3787ec3e673SRob Clark		};
3797ec3e673SRob Clark
3807ec3e673SRob Clark		vdda_qusb_hs0_3p1:
3817ec3e673SRob Clark		vdd_pdphy:
3827ec3e673SRob Clark		pp3100_l17a: ldo17 {
3837ec3e673SRob Clark			regulator-min-microvolt = <2920000>;
3847ec3e673SRob Clark			regulator-max-microvolt = <3232000>;
3857ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3867ec3e673SRob Clark		};
3877ec3e673SRob Clark
3887ec3e673SRob Clark		pp1800_pen:
3897ec3e673SRob Clark		pp1800_l18a: ldo18 {
3907ec3e673SRob Clark			regulator-min-microvolt = <1800000>;
3917ec3e673SRob Clark			regulator-max-microvolt = <1800000>;
3927ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3937ec3e673SRob Clark		};
3947ec3e673SRob Clark
3957ec3e673SRob Clark		mcp_vcc:
3967ec3e673SRob Clark		pp2850_l19a: ldo19 {
3977ec3e673SRob Clark			regulator-min-microvolt = <2960000>;
3987ec3e673SRob Clark			regulator-max-microvolt = <2960000>;
3997ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4007ec3e673SRob Clark		};
4017ec3e673SRob Clark	};
4027ec3e673SRob Clark
4037ec3e673SRob Clark	pm6150l-rpmh-regulators {
4047ec3e673SRob Clark		compatible = "qcom,pm6150l-rpmh-regulators";
4057ec3e673SRob Clark		qcom,pmic-id = "c";
4067ec3e673SRob Clark
4077ec3e673SRob Clark		pp1300_s8c: smps8 {
4087ec3e673SRob Clark			regulator-min-microvolt = <1120000>;
4097ec3e673SRob Clark			regulator-max-microvolt = <1408000>;
4107ec3e673SRob Clark		};
4117ec3e673SRob Clark
4127ec3e673SRob Clark		pp1800_l1c: ldo1 {
413*e5376f2eSDouglas Anderson			regulator-min-microvolt = <1616000>;
414*e5376f2eSDouglas Anderson			regulator-max-microvolt = <1984000>;
4157ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4167ec3e673SRob Clark		};
4177ec3e673SRob Clark
4187ec3e673SRob Clark		vdd_wcss_adc_dac:
4197ec3e673SRob Clark		pp1300_l2c: ldo2 {
4207ec3e673SRob Clark			regulator-min-microvolt = <1168000>;
4217ec3e673SRob Clark			regulator-max-microvolt = <1304000>;
4227ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4237ec3e673SRob Clark		};
4247ec3e673SRob Clark
4257ec3e673SRob Clark		pp1200_brij:
4267ec3e673SRob Clark		vdd_ufs1_1p2:
4277ec3e673SRob Clark		vdda_csi0_1p25:
4287ec3e673SRob Clark		vdda_csi1_1p25:
4297ec3e673SRob Clark		vdda_csi2_1p25:
4307ec3e673SRob Clark		vdda_csi3_1p25:
4317ec3e673SRob Clark		vdda_hv_ebi0:
4327ec3e673SRob Clark		vdda_mipi_dsi0_1p2:
4337ec3e673SRob Clark		vdda_usb_ss_dp_1p2:
4347ec3e673SRob Clark		vddpx_10:
4357ec3e673SRob Clark		pp1200_l3c: ldo3 {
4367ec3e673SRob Clark			regulator-min-microvolt = <1200000>;
4377ec3e673SRob Clark			regulator-max-microvolt = <1200000>;
4387ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4397ec3e673SRob Clark		};
4407ec3e673SRob Clark
4417ec3e673SRob Clark		vddpx_2:
4427ec3e673SRob Clark		ppvar_l6c: ldo6 {
4437ec3e673SRob Clark			regulator-min-microvolt = <1800000>;
444465b13ccSDouglas Anderson			regulator-max-microvolt = <2952000>;
4457ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4467ec3e673SRob Clark		};
4477ec3e673SRob Clark
4487ec3e673SRob Clark		pp3300_l7c: ldo7 {
4497ec3e673SRob Clark			regulator-min-microvolt = <3304000>;
4507ec3e673SRob Clark			regulator-max-microvolt = <3304000>;
4517ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4527ec3e673SRob Clark		};
4537ec3e673SRob Clark
4547ec3e673SRob Clark		pp1800_brij_vccio:
4557ec3e673SRob Clark		pp1800_edp_vpll:
4567ec3e673SRob Clark		pp1800_l8c: ldo8 {
4577ec3e673SRob Clark			regulator-min-microvolt = <1800000>;
4587ec3e673SRob Clark			regulator-max-microvolt = <1800000>;
4597ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4607ec3e673SRob Clark		};
4617ec3e673SRob Clark
4627ec3e673SRob Clark		pp2950_l9c: ldo9 {
4637ec3e673SRob Clark			regulator-min-microvolt = <2952000>;
4647ec3e673SRob Clark			regulator-max-microvolt = <2952000>;
4657ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4667ec3e673SRob Clark		};
4677ec3e673SRob Clark
4687ec3e673SRob Clark		pp3300_l10c: ldo10 {
4697ec3e673SRob Clark			regulator-min-microvolt = <3000000>;
4707ec3e673SRob Clark			regulator-max-microvolt = <3400000>;
4717ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4727ec3e673SRob Clark		};
4737ec3e673SRob Clark
4747ec3e673SRob Clark		pp3300_l11c: ldo11 {
4757ec3e673SRob Clark			regulator-min-microvolt = <3000000>;
4767ec3e673SRob Clark			regulator-max-microvolt = <3400000>;
4777ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
4787ec3e673SRob Clark		};
4797ec3e673SRob Clark
4807ec3e673SRob Clark		src_vreg_bob: bob {
4817ec3e673SRob Clark			regulator-min-microvolt = <3008000>;
4827ec3e673SRob Clark			regulator-max-microvolt = <3960000>;
4837ec3e673SRob Clark			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
4847ec3e673SRob Clark		};
4857ec3e673SRob Clark	};
4867ec3e673SRob Clark};
4877ec3e673SRob Clark
4887ec3e673SRob Clark&ap_ec_spi {
4897ec3e673SRob Clark	status = "okay";
4907ec3e673SRob Clark	cros_ec: ec@0 {
4917ec3e673SRob Clark		compatible = "google,cros-ec-spi";
4927ec3e673SRob Clark		reg = <0>;
4937ec3e673SRob Clark		interrupt-parent = <&tlmm>;
4947ec3e673SRob Clark		interrupts = <94 IRQ_TYPE_LEVEL_LOW>;
4957ec3e673SRob Clark		pinctrl-names = "default";
4967ec3e673SRob Clark		pinctrl-0 = <&ap_ec_int_l>;
4977ec3e673SRob Clark		spi-max-frequency = <3000000>;
4987ec3e673SRob Clark
4997ec3e673SRob Clark		cros_ec_pwm: ec-pwm {
5007ec3e673SRob Clark			compatible = "google,cros-ec-pwm";
5017ec3e673SRob Clark			#pwm-cells = <1>;
5027ec3e673SRob Clark		};
5037ec3e673SRob Clark
5047ec3e673SRob Clark		i2c_tunnel: i2c-tunnel {
5057ec3e673SRob Clark			compatible = "google,cros-ec-i2c-tunnel";
5067ec3e673SRob Clark			google,remote-bus = <0>;
5077ec3e673SRob Clark			#address-cells = <1>;
5087ec3e673SRob Clark			#size-cells = <0>;
5097ec3e673SRob Clark		};
5107ec3e673SRob Clark
5117ec3e673SRob Clark		pdupdate {
5127ec3e673SRob Clark			compatible = "google,cros-ec-pd-update";
5137ec3e673SRob Clark		};
5147ec3e673SRob Clark
5157ec3e673SRob Clark		typec {
5167ec3e673SRob Clark			compatible = "google,cros-ec-typec";
5177ec3e673SRob Clark			#address-cells = <1>;
5187ec3e673SRob Clark			#size-cells = <0>;
5197ec3e673SRob Clark
5207c6d828eSStephen Boyd			usb_c0: connector@0 {
5217ec3e673SRob Clark				compatible = "usb-c-connector";
5227ec3e673SRob Clark				reg = <0>;
5237ec3e673SRob Clark				label = "left";
5247ec3e673SRob Clark				power-role = "dual";
5257ec3e673SRob Clark				data-role = "host";
5267ec3e673SRob Clark				try-power-role = "source";
5277ec3e673SRob Clark			};
5287ec3e673SRob Clark
5297c6d828eSStephen Boyd			usb_c1: connector@1 {
5307ec3e673SRob Clark				compatible = "usb-c-connector";
5317ec3e673SRob Clark				reg = <1>;
5327ec3e673SRob Clark				label = "right";
5337ec3e673SRob Clark				power-role = "dual";
5347ec3e673SRob Clark				data-role = "host";
5357ec3e673SRob Clark				try-power-role = "source";
5367ec3e673SRob Clark			};
5377ec3e673SRob Clark		};
5387ec3e673SRob Clark	};
5397ec3e673SRob Clark};
5407ec3e673SRob Clark
5417ec3e673SRob Clark&ap_h1_spi {
5427ec3e673SRob Clark	status = "okay";
5437ec3e673SRob Clark	cr50: tpm@0 {
5447ec3e673SRob Clark		compatible = "google,cr50";
5457ec3e673SRob Clark		reg = <0>;
5467ec3e673SRob Clark		pinctrl-names = "default";
5477ec3e673SRob Clark		pinctrl-0 = <&h1_ap_int_odl>;
5487ec3e673SRob Clark		spi-max-frequency = <800000>;
5497ec3e673SRob Clark		interrupt-parent = <&tlmm>;
5507ec3e673SRob Clark		interrupts = <42 IRQ_TYPE_EDGE_RISING>;
5517ec3e673SRob Clark	};
5527ec3e673SRob Clark};
5537ec3e673SRob Clark
5547ec3e673SRob Clark&dsi0 {
5557ec3e673SRob Clark	status = "okay";
5567ec3e673SRob Clark	vdda-supply = <&vdda_mipi_dsi0_1p2>;
5577ec3e673SRob Clark
5587ec3e673SRob Clark	ports {
5597ec3e673SRob Clark		port@1 {
5607ec3e673SRob Clark			endpoint {
5617ec3e673SRob Clark				remote-endpoint = <&sn65dsi86_in>;
5627ec3e673SRob Clark				data-lanes = <0 1 2 3>;
5637ec3e673SRob Clark			};
5647ec3e673SRob Clark		};
5657ec3e673SRob Clark	};
5667ec3e673SRob Clark};
5677ec3e673SRob Clark
5687ec3e673SRob Clark&dsi_phy {
5697ec3e673SRob Clark	status = "okay";
5707ec3e673SRob Clark	vdds-supply = <&vdda_mipi_dsi0_pll>;
5717ec3e673SRob Clark};
5727ec3e673SRob Clark
5737ec3e673SRob Clarkedp_brij_i2c: &i2c2 {
5747ec3e673SRob Clark	status = "okay";
5757ec3e673SRob Clark	clock-frequency = <400000>;
5767ec3e673SRob Clark
5777ec3e673SRob Clark	sn65dsi86_bridge: bridge@2d {
5787ec3e673SRob Clark		compatible = "ti,sn65dsi86";
5797ec3e673SRob Clark		reg = <0x2d>;
5807ec3e673SRob Clark		pinctrl-names = "default";
5817ec3e673SRob Clark		pinctrl-0 = <&edp_brij_en>, <&edp_brij_irq>;
5827ec3e673SRob Clark		gpio-controller;
5837ec3e673SRob Clark		#gpio-cells = <2>;
5847ec3e673SRob Clark
5857ec3e673SRob Clark		interrupt-parent = <&tlmm>;
5867ec3e673SRob Clark		interrupts = <11 IRQ_TYPE_LEVEL_HIGH>;
5877ec3e673SRob Clark
5887ec3e673SRob Clark		enable-gpios = <&tlmm 104 GPIO_ACTIVE_HIGH>;
5897ec3e673SRob Clark
5907ec3e673SRob Clark		vpll-supply = <&pp1800_edp_vpll>;
5917ec3e673SRob Clark		vccio-supply = <&pp1800_brij_vccio>;
5927ec3e673SRob Clark		vcca-supply = <&pp1200_brij>;
5937ec3e673SRob Clark		vcc-supply = <&pp1200_brij>;
5947ec3e673SRob Clark
5957ec3e673SRob Clark		clocks = <&rpmhcc RPMH_LN_BB_CLK3>;
5967ec3e673SRob Clark		clock-names = "refclk";
5977ec3e673SRob Clark
5987ec3e673SRob Clark		ports {
5997ec3e673SRob Clark			#address-cells = <1>;
6007ec3e673SRob Clark			#size-cells = <0>;
6017ec3e673SRob Clark
6027ec3e673SRob Clark			port@0 {
6037ec3e673SRob Clark				reg = <0>;
6047ec3e673SRob Clark				sn65dsi86_in: endpoint {
6057ec3e673SRob Clark					remote-endpoint = <&dsi0_out>;
6067ec3e673SRob Clark				};
6077ec3e673SRob Clark			};
6087ec3e673SRob Clark
6097ec3e673SRob Clark			port@1 {
6107ec3e673SRob Clark				reg = <1>;
6117ec3e673SRob Clark				sn65dsi86_out: endpoint {
6127ec3e673SRob Clark					data-lanes = <0 1>;
6137ec3e673SRob Clark					remote-endpoint = <&panel_in_edp>;
6147ec3e673SRob Clark				};
6157ec3e673SRob Clark			};
6167ec3e673SRob Clark		};
6177ec3e673SRob Clark	};
6187ec3e673SRob Clark};
6197ec3e673SRob Clark
6207ec3e673SRob Clarkap_sar_sensor_i2c: &i2c5 {
6217ec3e673SRob Clark	clock-frequency = <400000>;
6227ec3e673SRob Clark
6237ec3e673SRob Clark	ap_sar_sensor: proximity@28 {
6247ec3e673SRob Clark		compatible = "semtech,sx9310";
6257ec3e673SRob Clark		reg = <0x28>;
6267ec3e673SRob Clark		#io-channel-cells = <1>;
6277ec3e673SRob Clark		pinctrl-names = "default";
6287ec3e673SRob Clark		pinctrl-0 = <&p_sensor_int_l>;
6297ec3e673SRob Clark
6307ec3e673SRob Clark		interrupt-parent = <&tlmm>;
6317ec3e673SRob Clark		interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
6327ec3e673SRob Clark
6337ec3e673SRob Clark		vdd-supply = <&pp3300_a>;
6347ec3e673SRob Clark		svdd-supply = <&pp1800_prox>;
6357ec3e673SRob Clark
6367ec3e673SRob Clark		status = "disabled";
6377ec3e673SRob Clark		label = "proximity-wifi";
6387ec3e673SRob Clark	};
6397ec3e673SRob Clark};
6407ec3e673SRob Clark
6417ec3e673SRob Clarkap_tp_i2c: &i2c7 {
6427ec3e673SRob Clark	status = "okay";
6437ec3e673SRob Clark	clock-frequency = <400000>;
6447ec3e673SRob Clark
6457ec3e673SRob Clark	trackpad@15 {
6467ec3e673SRob Clark		compatible = "elan,ekth3000";
6477ec3e673SRob Clark		reg = <0x15>;
6487ec3e673SRob Clark		pinctrl-names = "default";
6497ec3e673SRob Clark		pinctrl-0 = <&trackpad_int_1v8_odl>;
6507ec3e673SRob Clark
6517ec3e673SRob Clark		interrupt-parent = <&tlmm>;
6527ec3e673SRob Clark		interrupts = <58 IRQ_TYPE_EDGE_FALLING>;
6537ec3e673SRob Clark
6547ec3e673SRob Clark		vcc-supply = <&pp3300_fp_tp>;
6557ec3e673SRob Clark
6567ec3e673SRob Clark		wakeup-source;
6577ec3e673SRob Clark	};
6587ec3e673SRob Clark};
6597ec3e673SRob Clark
6607ec3e673SRob Clarkhp_i2c: &i2c9 {
6617ec3e673SRob Clark	status = "okay";
6627ec3e673SRob Clark	clock-frequency = <400000>;
6637ec3e673SRob Clark
6647ec3e673SRob Clark	alc5682: codec@1a {
6657ec3e673SRob Clark		compatible = "realtek,rt5682i";
6667ec3e673SRob Clark		reg = <0x1a>;
6677ec3e673SRob Clark		pinctrl-names = "default";
6687ec3e673SRob Clark		pinctrl-0 = <&hp_irq>;
6697ec3e673SRob Clark
6707ec3e673SRob Clark		#sound-dai-cells = <1>;
6717ec3e673SRob Clark
6727ec3e673SRob Clark		interrupt-parent = <&tlmm>;
6737ec3e673SRob Clark		/*
6747ec3e673SRob Clark		 * This will get ignored because the interrupt type
6757ec3e673SRob Clark		 * is set in rt5682.c.
6767ec3e673SRob Clark		 */
6777ec3e673SRob Clark		interrupts = <28 IRQ_TYPE_EDGE_BOTH>;
6787ec3e673SRob Clark
6797ec3e673SRob Clark		AVDD-supply = <&pp1800_alc5682>;
6807ec3e673SRob Clark		MICVDD-supply = <&pp3300_codec>;
6817ec3e673SRob Clark		VBAT-supply = <&pp3300_audio>;
6827ec3e673SRob Clark
6837ec3e673SRob Clark		realtek,dmic1-data-pin = <1>;
6847ec3e673SRob Clark		realtek,dmic1-clk-pin = <1>;
6857ec3e673SRob Clark		realtek,jd-src = <1>;
6867ec3e673SRob Clark	};
6877ec3e673SRob Clark};
6887ec3e673SRob Clark
6897ec3e673SRob Clark&ipa {
6907ec3e673SRob Clark	status = "okay";
6917ec3e673SRob Clark
6927ec3e673SRob Clark	/*
6937ec3e673SRob Clark	 * Trogdor doesn't have QHEE (Qualcomm's EL2 blob), so the
6947ec3e673SRob Clark	 * modem needs to cover certain init steps (GSI init), and
6957ec3e673SRob Clark	 * the AP needs to wait for it.
6967ec3e673SRob Clark	 */
6977ec3e673SRob Clark	modem-init;
6987ec3e673SRob Clark};
6997ec3e673SRob Clark
7007ec3e673SRob Clark&mdp {
7017ec3e673SRob Clark	status = "okay";
7027ec3e673SRob Clark};
7037ec3e673SRob Clark
7047ec3e673SRob Clark&mdss {
7057ec3e673SRob Clark	status = "okay";
7067ec3e673SRob Clark};
7077ec3e673SRob Clark
708bb06eb36SAntony Wang&pm6150_adc {
709bb06eb36SAntony Wang	charger-thermistor@4f {
710bb06eb36SAntony Wang		reg = <ADC5_AMUX_THM3_100K_PU>;
711bb06eb36SAntony Wang		qcom,ratiometric;
712bb06eb36SAntony Wang		qcom,hw-settle-time = <200>;
713bb06eb36SAntony Wang	};
714bb06eb36SAntony Wang};
715bb06eb36SAntony Wang
716bb06eb36SAntony Wang&pm6150_adc_tm {
717bb06eb36SAntony Wang	status = "okay";
718bb06eb36SAntony Wang
719bb06eb36SAntony Wang	charger-thermistor@1 {
720bb06eb36SAntony Wang		reg = <1>;
721bb06eb36SAntony Wang		io-channels = <&pm6150_adc ADC5_AMUX_THM3_100K_PU>;
722bb06eb36SAntony Wang		qcom,ratiometric;
723bb06eb36SAntony Wang		qcom,hw-settle-time-us = <200>;
724bb06eb36SAntony Wang	};
725bb06eb36SAntony Wang};
726bb06eb36SAntony Wang
7277ec3e673SRob Clark&pm6150_pwrkey {
7287ec3e673SRob Clark	status = "disabled";
7297ec3e673SRob Clark};
7307ec3e673SRob Clark
7317ec3e673SRob Clark&qupv3_id_0 {
7327ec3e673SRob Clark	status = "okay";
7337ec3e673SRob Clark};
7347ec3e673SRob Clark
7357ec3e673SRob Clark&qupv3_id_1 {
7367ec3e673SRob Clark	status = "okay";
7377ec3e673SRob Clark};
7387ec3e673SRob Clark
7397ec3e673SRob Clark&remoteproc_mpss {
7407ec3e673SRob Clark	status = "okay";
7417ec3e673SRob Clark	compatible = "qcom,sc7180-mss-pil";
7427ec3e673SRob Clark	iommus = <&apps_smmu 0x461 0x0>, <&apps_smmu 0x444 0x3>;
7437ec3e673SRob Clark	memory-region = <&mba_mem &mpss_mem>;
7447ec3e673SRob Clark
7457ec3e673SRob Clark	/* This gets overridden for SKUs with LTE support. */
7467ec3e673SRob Clark	firmware-name = "qcom/sc7180-trogdor/modem-nolte/mba.mbn",
7477ec3e673SRob Clark			"qcom/sc7180-trogdor/modem-nolte/qdsp6sw.mbn";
7487ec3e673SRob Clark};
7497ec3e673SRob Clark
7507ec3e673SRob Clark&sdhc_1 {
7517ec3e673SRob Clark	status = "okay";
7527ec3e673SRob Clark
7537ec3e673SRob Clark	pinctrl-names = "default", "sleep";
7547ec3e673SRob Clark	pinctrl-0 = <&sdc1_on>;
7557ec3e673SRob Clark	pinctrl-1 = <&sdc1_off>;
7567ec3e673SRob Clark	vmmc-supply = <&mcp_vcc>;
7577ec3e673SRob Clark	vqmmc-supply = <&mcp_vccq>;
7587ec3e673SRob Clark};
7597ec3e673SRob Clark
7607ec3e673SRob Clark&sdhc_2 {
7617ec3e673SRob Clark	pinctrl-names = "default", "sleep";
7627ec3e673SRob Clark	pinctrl-0 = <&sdc2_on>;
7637ec3e673SRob Clark	pinctrl-1 = <&sdc2_off>;
7647ec3e673SRob Clark	vmmc-supply = <&pp2950_l9c>;
7657ec3e673SRob Clark	vqmmc-supply = <&ppvar_l6c>;
7667ec3e673SRob Clark
7677ec3e673SRob Clark	cd-gpios = <&tlmm 69 GPIO_ACTIVE_LOW>;
7687ec3e673SRob Clark};
7697ec3e673SRob Clark
770cfbb97fdSDouglas Anderson&spi0 {
771cfbb97fdSDouglas Anderson	pinctrl-0 = <&qup_spi0_cs_gpio>;
772cfbb97fdSDouglas Anderson	cs-gpios = <&tlmm 37 GPIO_ACTIVE_LOW>;
773cfbb97fdSDouglas Anderson};
774cfbb97fdSDouglas Anderson
775cfbb97fdSDouglas Anderson&spi6 {
776cfbb97fdSDouglas Anderson	pinctrl-0 = <&qup_spi6_cs_gpio>;
777cfbb97fdSDouglas Anderson	cs-gpios = <&tlmm 62 GPIO_ACTIVE_LOW>;
778cfbb97fdSDouglas Anderson};
779cfbb97fdSDouglas Anderson
7807ec3e673SRob Clarkap_spi_fp: &spi10 {
781cfbb97fdSDouglas Anderson	pinctrl-0 = <&qup_spi10_cs_gpio>;
782cfbb97fdSDouglas Anderson	cs-gpios = <&tlmm 89 GPIO_ACTIVE_LOW>;
783cfbb97fdSDouglas Anderson
7847ec3e673SRob Clark	cros_ec_fp: ec@0 {
7857ec3e673SRob Clark		compatible = "google,cros-ec-spi";
7867ec3e673SRob Clark		reg = <0>;
7877ec3e673SRob Clark		interrupt-parent = <&tlmm>;
7887ec3e673SRob Clark		interrupts = <4 IRQ_TYPE_LEVEL_LOW>;
7897ec3e673SRob Clark		pinctrl-names = "default";
7907ec3e673SRob Clark		pinctrl-0 = <&fp_to_ap_irq_l>, <&fp_rst_l>, <&fpmcu_boot0>, <&fpmcu_sel>;
7917ec3e673SRob Clark		spi-max-frequency = <3000000>;
7927ec3e673SRob Clark	};
7937ec3e673SRob Clark};
7947ec3e673SRob Clark
7957ec3e673SRob Clark#include <arm/cros-ec-keyboard.dtsi>
7967ec3e673SRob Clark#include <arm/cros-ec-sbs.dtsi>
7977ec3e673SRob Clark
7987ec3e673SRob Clark&uart3 {
7997ec3e673SRob Clark	status = "okay";
8007ec3e673SRob Clark
8014e0a3e04Ssatya priya	/delete-property/interrupts;
8024e0a3e04Ssatya priya	interrupts-extended = <&intc GIC_SPI 604 IRQ_TYPE_LEVEL_HIGH>,
8034e0a3e04Ssatya priya				<&tlmm 41 IRQ_TYPE_EDGE_FALLING>;
8044e0a3e04Ssatya priya
8054e0a3e04Ssatya priya	pinctrl-names = "default", "sleep";
8064e0a3e04Ssatya priya	pinctrl-1 = <&qup_uart3_sleep>;
8074e0a3e04Ssatya priya
8087ec3e673SRob Clark	bluetooth: bluetooth {
8097ec3e673SRob Clark		compatible = "qcom,wcn3991-bt";
8107ec3e673SRob Clark		vddio-supply = <&pp1800_l10a>;
8117ec3e673SRob Clark		vddxo-supply = <&pp1800_l1c>;
8127ec3e673SRob Clark		vddrf-supply = <&pp1300_l2c>;
8137ec3e673SRob Clark		vddch0-supply = <&pp3300_l10c>;
8147ec3e673SRob Clark		max-speed = <3200000>;
8157ec3e673SRob Clark		clocks = <&rpmhcc RPMH_RF_CLK2>;
8167ec3e673SRob Clark	};
8177ec3e673SRob Clark};
8187ec3e673SRob Clark
8197ec3e673SRob Clark&uart8 {
8207ec3e673SRob Clark	status = "okay";
8217ec3e673SRob Clark};
8227ec3e673SRob Clark
8237ec3e673SRob Clark&usb_1 {
8247ec3e673SRob Clark	status = "okay";
8257ec3e673SRob Clark};
8267ec3e673SRob Clark
8277ec3e673SRob Clark&usb_1_dwc3 {
8287ec3e673SRob Clark	dr_mode = "host";
8297ec3e673SRob Clark};
8307ec3e673SRob Clark
8317ec3e673SRob Clark&usb_1_hsphy {
8327ec3e673SRob Clark	status = "okay";
8337ec3e673SRob Clark	vdd-supply = <&vdd_qusb_hs0_core>;
8347ec3e673SRob Clark	vdda-pll-supply = <&vdda_qusb_hs0_1p8>;
8357ec3e673SRob Clark	vdda-phy-dpdm-supply = <&vdda_qusb_hs0_3p1>;
8367ec3e673SRob Clark	qcom,imp-res-offset-value = <8>;
8377ec3e673SRob Clark	qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_15_PERCENT>;
8387ec3e673SRob Clark	qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>;
8397ec3e673SRob Clark	qcom,bias-ctrl-value = <0x22>;
8407ec3e673SRob Clark	qcom,charge-ctrl-value = <3>;
8417ec3e673SRob Clark	qcom,hsdisc-trim-value = <0>;
8427ec3e673SRob Clark};
8437ec3e673SRob Clark
8447ec3e673SRob Clark&usb_1_qmpphy {
8457ec3e673SRob Clark	status = "okay";
8467ec3e673SRob Clark	vdda-phy-supply = <&vdda_usb_ss_dp_1p2>;
8477ec3e673SRob Clark	vdda-pll-supply = <&vdda_usb_ss_dp_core>;
8487ec3e673SRob Clark};
8497ec3e673SRob Clark
8507ec3e673SRob Clark&venus {
8517ec3e673SRob Clark	video-firmware {
8527ec3e673SRob Clark		iommus = <&apps_smmu 0x0c42 0x0>;
8537ec3e673SRob Clark	};
8547ec3e673SRob Clark};
8557ec3e673SRob Clark
8567ec3e673SRob Clark&wifi {
8577ec3e673SRob Clark	status = "okay";
8587ec3e673SRob Clark	vdd-0.8-cx-mx-supply = <&vdd_cx_wlan>;
8597ec3e673SRob Clark	vdd-1.8-xo-supply = <&pp1800_l1c>;
8607ec3e673SRob Clark	vdd-1.3-rfa-supply = <&pp1300_l2c>;
8617ec3e673SRob Clark	vdd-3.3-ch0-supply = <&pp3300_l10c>;
8627ec3e673SRob Clark	vdd-3.3-ch1-supply = <&pp3300_l11c>;
8637ec3e673SRob Clark
8647ec3e673SRob Clark	wifi-firmware {
8657ec3e673SRob Clark		iommus = <&apps_smmu 0xc2 0x1>;
8667ec3e673SRob Clark	};
8677ec3e673SRob Clark};
8687ec3e673SRob Clark
8697ec3e673SRob Clark/* PINCTRL - additions to nodes defined in sc7180.dtsi */
8707ec3e673SRob Clark
871f772081fSDouglas Anderson&dp_hot_plug_det {
872f772081fSDouglas Anderson	pinconf {
873f772081fSDouglas Anderson		pins = "gpio117";
874f772081fSDouglas Anderson		bias-disable;
875f772081fSDouglas Anderson	};
876f772081fSDouglas Anderson};
877f772081fSDouglas Anderson
8787ec3e673SRob Clark&qspi_cs0 {
8797ec3e673SRob Clark	pinconf {
8807ec3e673SRob Clark		pins = "gpio68";
8817ec3e673SRob Clark		bias-disable;
8827ec3e673SRob Clark	};
8837ec3e673SRob Clark};
8847ec3e673SRob Clark
8857ec3e673SRob Clark&qspi_clk {
8867ec3e673SRob Clark	pinconf {
8877ec3e673SRob Clark		pins = "gpio63";
8887ec3e673SRob Clark		bias-disable;
8897ec3e673SRob Clark	};
8907ec3e673SRob Clark};
8917ec3e673SRob Clark
8927ec3e673SRob Clark&qspi_data01 {
8937ec3e673SRob Clark	pinconf {
8947ec3e673SRob Clark		pins = "gpio64", "gpio65";
8957ec3e673SRob Clark
8967ec3e673SRob Clark		/* High-Z when no transfers; nice to park the lines */
8977ec3e673SRob Clark		bias-pull-up;
8987ec3e673SRob Clark	};
8997ec3e673SRob Clark};
9007ec3e673SRob Clark
9017ec3e673SRob Clark&qup_i2c2_default {
9027ec3e673SRob Clark	pinconf {
9037ec3e673SRob Clark		pins = "gpio15", "gpio16";
9047ec3e673SRob Clark		drive-strength = <2>;
9057ec3e673SRob Clark
9067ec3e673SRob Clark		/* Has external pullup */
9077ec3e673SRob Clark		bias-disable;
9087ec3e673SRob Clark	};
9097ec3e673SRob Clark};
9107ec3e673SRob Clark
9117ec3e673SRob Clark&qup_i2c4_default {
9127ec3e673SRob Clark	pinconf {
9137ec3e673SRob Clark		pins = "gpio115", "gpio116";
9147ec3e673SRob Clark		drive-strength = <2>;
9157ec3e673SRob Clark
9167ec3e673SRob Clark		/* Has external pullup */
9177ec3e673SRob Clark		bias-disable;
9187ec3e673SRob Clark	};
9197ec3e673SRob Clark};
9207ec3e673SRob Clark
9217ec3e673SRob Clark&qup_i2c5_default {
9227ec3e673SRob Clark	pinconf {
9237ec3e673SRob Clark		pins = "gpio25", "gpio26";
9247ec3e673SRob Clark		drive-strength = <2>;
9257ec3e673SRob Clark
9267ec3e673SRob Clark		/* Has external pullup */
9277ec3e673SRob Clark		bias-disable;
9287ec3e673SRob Clark	};
9297ec3e673SRob Clark};
9307ec3e673SRob Clark
9317ec3e673SRob Clark&qup_i2c7_default {
9327ec3e673SRob Clark	pinconf {
9337ec3e673SRob Clark		pins = "gpio6", "gpio7";
9347ec3e673SRob Clark		drive-strength = <2>;
9357ec3e673SRob Clark
9367ec3e673SRob Clark		/* Has external pullup */
9377ec3e673SRob Clark		bias-disable;
9387ec3e673SRob Clark	};
9397ec3e673SRob Clark};
9407ec3e673SRob Clark
9417ec3e673SRob Clark&qup_i2c9_default {
9427ec3e673SRob Clark	pinconf {
9437ec3e673SRob Clark		pins = "gpio46", "gpio47";
9447ec3e673SRob Clark		drive-strength = <2>;
9457ec3e673SRob Clark
9467ec3e673SRob Clark		/* Has external pullup */
9477ec3e673SRob Clark		bias-disable;
9487ec3e673SRob Clark	};
9497ec3e673SRob Clark};
9507ec3e673SRob Clark
951cfbb97fdSDouglas Anderson&qup_spi0_cs_gpio {
9527ec3e673SRob Clark	pinconf {
9537ec3e673SRob Clark		pins = "gpio34", "gpio35", "gpio36", "gpio37";
9547ec3e673SRob Clark		drive-strength = <2>;
9557ec3e673SRob Clark		bias-disable;
9567ec3e673SRob Clark	};
9577ec3e673SRob Clark};
9587ec3e673SRob Clark
959cfbb97fdSDouglas Anderson&qup_spi6_cs_gpio {
9607ec3e673SRob Clark	pinconf {
9617ec3e673SRob Clark		pins = "gpio59", "gpio60", "gpio61", "gpio62";
9627ec3e673SRob Clark		drive-strength = <2>;
9637ec3e673SRob Clark		bias-disable;
9647ec3e673SRob Clark	};
9657ec3e673SRob Clark};
9667ec3e673SRob Clark
967cfbb97fdSDouglas Anderson&qup_spi10_cs_gpio {
9687ec3e673SRob Clark	pinconf {
9697ec3e673SRob Clark		pins = "gpio86", "gpio87", "gpio88", "gpio89";
9707ec3e673SRob Clark		drive-strength = <2>;
9717ec3e673SRob Clark		bias-disable;
9727ec3e673SRob Clark	};
9737ec3e673SRob Clark};
9747ec3e673SRob Clark
9757ec3e673SRob Clark&qup_uart3_default {
9767ec3e673SRob Clark	pinconf-cts {
9777ec3e673SRob Clark		/*
9787ec3e673SRob Clark		 * Configure a pull-down on CTS to match the pull of
9797ec3e673SRob Clark		 * the Bluetooth module.
9807ec3e673SRob Clark		 */
9817ec3e673SRob Clark		pins = "gpio38";
9827ec3e673SRob Clark		bias-pull-down;
9837ec3e673SRob Clark	};
9847ec3e673SRob Clark
9857ec3e673SRob Clark	pinconf-rts-tx {
9867ec3e673SRob Clark		/* We'll drive RTS and TX, so no pull */
9877ec3e673SRob Clark		pins = "gpio39", "gpio40";
9887ec3e673SRob Clark		drive-strength = <2>;
9897ec3e673SRob Clark		bias-disable;
9907ec3e673SRob Clark	};
9917ec3e673SRob Clark
9927ec3e673SRob Clark	pinconf-rx {
9937ec3e673SRob Clark		/*
9947ec3e673SRob Clark		 * Configure a pull-up on RX. This is needed to avoid
9957ec3e673SRob Clark		 * garbage data when the TX pin of the Bluetooth module is
9967ec3e673SRob Clark		 * in tri-state (module powered off or not driving the
9977ec3e673SRob Clark		 * signal yet).
9987ec3e673SRob Clark		 */
9997ec3e673SRob Clark		pins = "gpio41";
10007ec3e673SRob Clark		bias-pull-up;
10017ec3e673SRob Clark	};
10027ec3e673SRob Clark};
10037ec3e673SRob Clark
10047ec3e673SRob Clark&qup_uart8_default {
10057ec3e673SRob Clark	pinconf-tx {
10067ec3e673SRob Clark		pins = "gpio44";
10077ec3e673SRob Clark		drive-strength = <2>;
10087ec3e673SRob Clark		bias-disable;
10097ec3e673SRob Clark	};
10107ec3e673SRob Clark
10117ec3e673SRob Clark	pinconf-rx {
10127ec3e673SRob Clark		pins = "gpio45";
10137ec3e673SRob Clark		drive-strength = <2>;
10147ec3e673SRob Clark		bias-pull-up;
10157ec3e673SRob Clark	};
10167ec3e673SRob Clark};
10177ec3e673SRob Clark
10187ec3e673SRob Clark/* PINCTRL - board-specific pinctrl */
10197ec3e673SRob Clark
10207ec3e673SRob Clark&pm6150_gpio {
10217ec3e673SRob Clark	status = "disabled"; /* No GPIOs are connected */
10227ec3e673SRob Clark};
10237ec3e673SRob Clark
10247ec3e673SRob Clark&pm6150l_gpio {
10257ec3e673SRob Clark	gpio-line-names = "AP_SUSPEND",
10267ec3e673SRob Clark			  "",
10277ec3e673SRob Clark			  "",
10287ec3e673SRob Clark			  "",
10297ec3e673SRob Clark			  "",
10307ec3e673SRob Clark			  "",
10317ec3e673SRob Clark			  "",
10327ec3e673SRob Clark			  "",
10337ec3e673SRob Clark			  "",
10347ec3e673SRob Clark			  "",
10357ec3e673SRob Clark			  "",
10367ec3e673SRob Clark			  "";
10377ec3e673SRob Clark};
10387ec3e673SRob Clark
10397ec3e673SRob Clark&tlmm {
10407ec3e673SRob Clark	/*
10417ec3e673SRob Clark	 * pinctrl settings for pins that have no real owners.
10427ec3e673SRob Clark	 */
10437ec3e673SRob Clark	pinctrl-names = "default";
10447ec3e673SRob Clark	pinctrl-0 = <&bios_flash_wp_l>, <&ap_suspend_l_neuter>;
10457ec3e673SRob Clark
10467ec3e673SRob Clark	amp_en: amp-en {
10477ec3e673SRob Clark		pinmux {
10487ec3e673SRob Clark			pins = "gpio23";
10497ec3e673SRob Clark			function = "gpio";
10507ec3e673SRob Clark		};
10517ec3e673SRob Clark
10527ec3e673SRob Clark		pinconf {
10537ec3e673SRob Clark			pins = "gpio23";
10547ec3e673SRob Clark			bias-pull-down;
10557ec3e673SRob Clark		};
10567ec3e673SRob Clark	};
10577ec3e673SRob Clark
10587ec3e673SRob Clark	ap_ec_int_l: ap-ec-int-l {
10597ec3e673SRob Clark		pinmux {
10607ec3e673SRob Clark			pins = "gpio94";
10617ec3e673SRob Clark			function = "gpio";
10627ec3e673SRob Clark			input-enable;
10637ec3e673SRob Clark		};
10647ec3e673SRob Clark
10657ec3e673SRob Clark		pinconf {
10667ec3e673SRob Clark			pins = "gpio94";
10677ec3e673SRob Clark			bias-pull-up;
10687ec3e673SRob Clark		};
10697ec3e673SRob Clark	};
10707ec3e673SRob Clark
10717ec3e673SRob Clark	ap_edp_bklten: ap-edp-bklten {
10727ec3e673SRob Clark		pinmux {
10737ec3e673SRob Clark			pins = "gpio12";
10747ec3e673SRob Clark			function = "gpio";
10757ec3e673SRob Clark		};
10767ec3e673SRob Clark
10777ec3e673SRob Clark		pinconf {
10787ec3e673SRob Clark			pins = "gpio12";
10797ec3e673SRob Clark			drive-strength = <2>;
10807ec3e673SRob Clark			bias-disable;
10817ec3e673SRob Clark
10827ec3e673SRob Clark			/* Force backlight to be disabled to match state at boot. */
10837ec3e673SRob Clark			output-low;
10847ec3e673SRob Clark		};
10857ec3e673SRob Clark	};
10867ec3e673SRob Clark
10877ec3e673SRob Clark	ap_suspend_l_neuter: ap-suspend-l-neuter {
10887ec3e673SRob Clark		pinmux  {
10897ec3e673SRob Clark			pins = "gpio27";
10907ec3e673SRob Clark			function = "gpio";
10917ec3e673SRob Clark		};
10927ec3e673SRob Clark
10937ec3e673SRob Clark		pinconf {
10947ec3e673SRob Clark			pins = "gpio27";
10957ec3e673SRob Clark			bias-disable;
10967ec3e673SRob Clark		};
10977ec3e673SRob Clark	};
10987ec3e673SRob Clark
10997ec3e673SRob Clark	bios_flash_wp_l: bios-flash-wp-l {
11007ec3e673SRob Clark		pinmux {
11017ec3e673SRob Clark			pins = "gpio66";
11027ec3e673SRob Clark			function = "gpio";
11037ec3e673SRob Clark			input-enable;
11047ec3e673SRob Clark		};
11057ec3e673SRob Clark
11067ec3e673SRob Clark		pinconf {
11077ec3e673SRob Clark			pins = "gpio66";
11087ec3e673SRob Clark			bias-disable;
11097ec3e673SRob Clark		};
11107ec3e673SRob Clark	};
11117ec3e673SRob Clark
11127ec3e673SRob Clark	dp_hot_plug_det: dp-hot-plug-det {
11137ec3e673SRob Clark		 pinmux {
11147ec3e673SRob Clark			 pins = "gpio117";
11157ec3e673SRob Clark			 function = "dp_hot";
11167ec3e673SRob Clark		 };
11177ec3e673SRob Clark
11187ec3e673SRob Clark		 config {
11197ec3e673SRob Clark			 pins = "gpio117";
11207ec3e673SRob Clark			 bias-disable;
11217ec3e673SRob Clark			 input-enable;
11227ec3e673SRob Clark			 drive-strength = <2>;
11237ec3e673SRob Clark		 };
11247ec3e673SRob Clark	 };
11257ec3e673SRob Clark
11267ec3e673SRob Clark	edp_brij_en: edp-brij-en {
11277ec3e673SRob Clark		pinmux {
11287ec3e673SRob Clark			pins = "gpio104";
11297ec3e673SRob Clark			function = "gpio";
11307ec3e673SRob Clark		};
11317ec3e673SRob Clark
11327ec3e673SRob Clark		pinconf {
11337ec3e673SRob Clark			pins = "gpio104";
11347ec3e673SRob Clark			drive-strength = <2>;
11357ec3e673SRob Clark			bias-disable;
11367ec3e673SRob Clark		};
11377ec3e673SRob Clark	};
11387ec3e673SRob Clark
11397ec3e673SRob Clark	edp_brij_irq: edp-brij-irq {
11407ec3e673SRob Clark		pinmux {
11417ec3e673SRob Clark			pins = "gpio11";
11427ec3e673SRob Clark			function = "gpio";
11437ec3e673SRob Clark		};
11447ec3e673SRob Clark
11457ec3e673SRob Clark		pinconf {
11467ec3e673SRob Clark			pins = "gpio11";
11477ec3e673SRob Clark			drive-strength = <2>;
11487ec3e673SRob Clark			bias-pull-down;
11497ec3e673SRob Clark		};
11507ec3e673SRob Clark	};
11517ec3e673SRob Clark
11527ec3e673SRob Clark	en_pp3300_codec: en-pp3300-codec {
11537ec3e673SRob Clark		pinmux {
11547ec3e673SRob Clark			pins = "gpio83";
11557ec3e673SRob Clark			function = "gpio";
11567ec3e673SRob Clark		};
11577ec3e673SRob Clark
11587ec3e673SRob Clark		pinconf {
11597ec3e673SRob Clark			pins = "gpio83";
11607ec3e673SRob Clark			drive-strength = <2>;
11617ec3e673SRob Clark			bias-disable;
11627ec3e673SRob Clark		};
11637ec3e673SRob Clark	};
11647ec3e673SRob Clark
11657ec3e673SRob Clark	en_pp3300_dx_edp: en-pp3300-dx-edp {
11667ec3e673SRob Clark		pinmux {
11677ec3e673SRob Clark			pins = "gpio30";
11687ec3e673SRob Clark			function = "gpio";
11697ec3e673SRob Clark		};
11707ec3e673SRob Clark
11717ec3e673SRob Clark		pinconf {
11727ec3e673SRob Clark			pins = "gpio30";
11737ec3e673SRob Clark			drive-strength = <2>;
11747ec3e673SRob Clark			bias-disable;
11757ec3e673SRob Clark		};
11767ec3e673SRob Clark	};
11777ec3e673SRob Clark
1178066c2a94SMatthias Kaehlcke	en_pp3300_hub: en-pp3300-hub {
1179066c2a94SMatthias Kaehlcke		pinmux {
1180066c2a94SMatthias Kaehlcke			pins = "gpio84";
1181066c2a94SMatthias Kaehlcke			function = "gpio";
1182066c2a94SMatthias Kaehlcke		};
1183066c2a94SMatthias Kaehlcke
1184066c2a94SMatthias Kaehlcke		pinconf {
1185066c2a94SMatthias Kaehlcke			pins = "gpio84";
1186066c2a94SMatthias Kaehlcke			drive-strength = <2>;
1187066c2a94SMatthias Kaehlcke			bias-disable;
1188066c2a94SMatthias Kaehlcke		};
1189066c2a94SMatthias Kaehlcke	};
1190066c2a94SMatthias Kaehlcke
11917ec3e673SRob Clark	fpmcu_boot0: fpmcu-boot0 {
11927ec3e673SRob Clark		pinmux {
11937ec3e673SRob Clark			pins = "gpio10";
11947ec3e673SRob Clark			function = "gpio";
11957ec3e673SRob Clark		};
11967ec3e673SRob Clark
11977ec3e673SRob Clark		pinconf {
11987ec3e673SRob Clark			pins = "gpio10";
11997ec3e673SRob Clark			bias-disable;
12007ec3e673SRob Clark			drive-strength = <2>;
12017ec3e673SRob Clark			output-low;
12027ec3e673SRob Clark		};
12037ec3e673SRob Clark	};
12047ec3e673SRob Clark
12057ec3e673SRob Clark	fpmcu_sel: fpmcu-sel {
12067ec3e673SRob Clark		pinmux {
12077ec3e673SRob Clark			pins = "gpio22";
12087ec3e673SRob Clark			function = "gpio";
12097ec3e673SRob Clark		};
12107ec3e673SRob Clark
12117ec3e673SRob Clark		pinconf {
12127ec3e673SRob Clark			pins = "gpio22";
12137ec3e673SRob Clark			bias-disable;
12147ec3e673SRob Clark			drive-strength = <2>;
12157ec3e673SRob Clark			output-high;
12167ec3e673SRob Clark		};
12177ec3e673SRob Clark	};
12187ec3e673SRob Clark
12197ec3e673SRob Clark	fp_rst_l: fp-rst-l {
12207ec3e673SRob Clark		pinmux {
12217ec3e673SRob Clark			pins = "gpio5";
12227ec3e673SRob Clark			function = "gpio";
12237ec3e673SRob Clark		};
12247ec3e673SRob Clark
12257ec3e673SRob Clark		pinconf {
12267ec3e673SRob Clark			pins = "gpio5";
12277ec3e673SRob Clark			bias-disable;
12287ec3e673SRob Clark			drive-strength = <2>;
12297ec3e673SRob Clark			output-high;
12307ec3e673SRob Clark		};
12317ec3e673SRob Clark	};
12327ec3e673SRob Clark
12337ec3e673SRob Clark	fp_to_ap_irq_l: fp-to-ap-irq-l {
12347ec3e673SRob Clark		pinmux {
12357ec3e673SRob Clark			pins = "gpio4";
12367ec3e673SRob Clark			function = "gpio";
12377ec3e673SRob Clark			input-enable;
12387ec3e673SRob Clark		};
12397ec3e673SRob Clark
12407ec3e673SRob Clark		pinconf {
12417ec3e673SRob Clark			pins = "gpio4";
12427ec3e673SRob Clark
12437ec3e673SRob Clark			/* Has external pullup */
12447ec3e673SRob Clark			bias-disable;
12457ec3e673SRob Clark		};
12467ec3e673SRob Clark	};
12477ec3e673SRob Clark
12487ec3e673SRob Clark
12497ec3e673SRob Clark	h1_ap_int_odl: h1-ap-int-odl {
12507ec3e673SRob Clark		pinmux {
12517ec3e673SRob Clark			pins = "gpio42";
12527ec3e673SRob Clark			function = "gpio";
12537ec3e673SRob Clark			input-enable;
12547ec3e673SRob Clark		};
12557ec3e673SRob Clark
12567ec3e673SRob Clark		pinconf {
12577ec3e673SRob Clark			pins = "gpio42";
12587ec3e673SRob Clark			bias-pull-up;
12597ec3e673SRob Clark		};
12607ec3e673SRob Clark	};
12617ec3e673SRob Clark
12627ec3e673SRob Clark	hp_irq: hp-irq {
12637ec3e673SRob Clark		pinmux {
12647ec3e673SRob Clark			pins = "gpio28";
12657ec3e673SRob Clark			function = "gpio";
12667ec3e673SRob Clark		};
12677ec3e673SRob Clark
12687ec3e673SRob Clark		pinconf {
12697ec3e673SRob Clark			pins = "gpio28";
12707ec3e673SRob Clark			bias-pull-up;
12717ec3e673SRob Clark		};
12727ec3e673SRob Clark	};
12737ec3e673SRob Clark
12747ec3e673SRob Clark	pen_irq_l: pen-irq-l {
12757ec3e673SRob Clark		pinmux {
12767ec3e673SRob Clark			pins = "gpio21";
12777ec3e673SRob Clark			function = "gpio";
12787ec3e673SRob Clark		};
12797ec3e673SRob Clark
12807ec3e673SRob Clark		pinconf {
12817ec3e673SRob Clark			pins = "gpio21";
12827ec3e673SRob Clark
12837ec3e673SRob Clark			/* Has external pullup */
12847ec3e673SRob Clark			bias-disable;
12857ec3e673SRob Clark		};
12867ec3e673SRob Clark	};
12877ec3e673SRob Clark
12887ec3e673SRob Clark	pen_pdct_l: pen-pdct-l {
12897ec3e673SRob Clark		pinmux {
12907ec3e673SRob Clark			pins = "gpio52";
12917ec3e673SRob Clark			function = "gpio";
12927ec3e673SRob Clark		};
12937ec3e673SRob Clark
12947ec3e673SRob Clark		pinconf {
12957ec3e673SRob Clark			pins = "gpio52";
12967ec3e673SRob Clark
12977ec3e673SRob Clark			/* Has external pullup */
12987ec3e673SRob Clark			bias-disable;
12997ec3e673SRob Clark		};
13007ec3e673SRob Clark	};
13017ec3e673SRob Clark
13027ec3e673SRob Clark	pen_rst_odl: pen-rst-odl {
13037ec3e673SRob Clark		pinmux  {
13047ec3e673SRob Clark			pins = "gpio18";
13057ec3e673SRob Clark			function = "gpio";
13067ec3e673SRob Clark		};
13077ec3e673SRob Clark
13087ec3e673SRob Clark		pinconf {
13097ec3e673SRob Clark			pins = "gpio18";
13107ec3e673SRob Clark			bias-disable;
13117ec3e673SRob Clark			drive-strength = <2>;
13127ec3e673SRob Clark
13137ec3e673SRob Clark			/*
13147ec3e673SRob Clark			 * The pen driver doesn't currently support
13157ec3e673SRob Clark			 * driving this reset line.  By specifying
13167ec3e673SRob Clark			 * output-high here we're relying on the fact
13177ec3e673SRob Clark			 * that this pin has a default pulldown at boot
13187ec3e673SRob Clark			 * (which makes sure the pen was in reset if it
13197ec3e673SRob Clark			 * was powered) and then we set it high here to
13207ec3e673SRob Clark			 * take it out of reset.  Better would be if the
13217ec3e673SRob Clark			 * pen driver could control this and we could
13227ec3e673SRob Clark			 * remove "output-high" here.
13237ec3e673SRob Clark			 */
13247ec3e673SRob Clark			output-high; /* TODO: Remove this? */
13257ec3e673SRob Clark		};
13267ec3e673SRob Clark	};
13277ec3e673SRob Clark
13287ec3e673SRob Clark	p_sensor_int_l: p-sensor-int-l {
13297ec3e673SRob Clark		pinmux {
13307ec3e673SRob Clark			pins = "gpio24";
13317ec3e673SRob Clark			function = "gpio";
13327ec3e673SRob Clark			input-enable;
13337ec3e673SRob Clark		};
13347ec3e673SRob Clark
13357ec3e673SRob Clark		pinconf {
13367ec3e673SRob Clark			pins = "gpio24";
1337d5276bfaSStephen Boyd			/* Has external pullup */
1338d5276bfaSStephen Boyd			bias-disable;
13397ec3e673SRob Clark		};
13407ec3e673SRob Clark	};
13417ec3e673SRob Clark
13424e0a3e04Ssatya priya	qup_uart3_sleep: qup-uart3-sleep {
13434e0a3e04Ssatya priya		pinmux {
13444e0a3e04Ssatya priya			pins = "gpio38", "gpio39",
13454e0a3e04Ssatya priya			       "gpio40", "gpio41";
13464e0a3e04Ssatya priya			function = "gpio";
13474e0a3e04Ssatya priya		};
13484e0a3e04Ssatya priya
13494e0a3e04Ssatya priya		pinconf-cts {
13504e0a3e04Ssatya priya			/*
13514e0a3e04Ssatya priya			 * Configure a pull-down on CTS to match the pull of
13524e0a3e04Ssatya priya			 * the Bluetooth module.
13534e0a3e04Ssatya priya			 */
13544e0a3e04Ssatya priya			pins = "gpio38";
13554e0a3e04Ssatya priya			bias-pull-down;
13564e0a3e04Ssatya priya		};
13574e0a3e04Ssatya priya
13584e0a3e04Ssatya priya		pinconf-rts {
13594e0a3e04Ssatya priya			/*
13604e0a3e04Ssatya priya			 * Configure pull-down on RTS. As RTS is active low
13614e0a3e04Ssatya priya			 * signal, pull it low to indicate the BT SoC that it
13624e0a3e04Ssatya priya			 * can wakeup the system anytime from suspend state by
13634e0a3e04Ssatya priya			 * pulling RX low (by sending wakeup bytes).
13644e0a3e04Ssatya priya			 */
13654e0a3e04Ssatya priya			 pins = "gpio39";
13664e0a3e04Ssatya priya			 bias-pull-down;
13674e0a3e04Ssatya priya		};
13684e0a3e04Ssatya priya
13694e0a3e04Ssatya priya		pinconf-tx {
13704e0a3e04Ssatya priya			/*
13714e0a3e04Ssatya priya			 * Configure pull-up on TX when it isn't actively driven
13724e0a3e04Ssatya priya			 * to prevent BT SoC from receiving garbage during sleep.
13734e0a3e04Ssatya priya			 */
13744e0a3e04Ssatya priya			pins = "gpio40";
13754e0a3e04Ssatya priya			bias-pull-up;
13764e0a3e04Ssatya priya		};
13774e0a3e04Ssatya priya
13784e0a3e04Ssatya priya		pinconf-rx {
13794e0a3e04Ssatya priya			/*
13804e0a3e04Ssatya priya			 * Configure a pull-up on RX. This is needed to avoid
13814e0a3e04Ssatya priya			 * garbage data when the TX pin of the Bluetooth module
13824e0a3e04Ssatya priya			 * is floating which may cause spurious wakeups.
13834e0a3e04Ssatya priya			 */
13844e0a3e04Ssatya priya			pins = "gpio41";
13854e0a3e04Ssatya priya			bias-pull-up;
13864e0a3e04Ssatya priya		};
13874e0a3e04Ssatya priya	};
13884e0a3e04Ssatya priya
13897ec3e673SRob Clark	trackpad_int_1v8_odl: trackpad-int-1v8-odl {
13907ec3e673SRob Clark		pinmux {
13917ec3e673SRob Clark			pins = "gpio58";
13927ec3e673SRob Clark			function = "gpio";
13937ec3e673SRob Clark		};
13947ec3e673SRob Clark
13957ec3e673SRob Clark		pinconf {
13967ec3e673SRob Clark			pins = "gpio58";
13977ec3e673SRob Clark
13987ec3e673SRob Clark			/* Has external pullup */
13997ec3e673SRob Clark			bias-disable;
14007ec3e673SRob Clark		};
14017ec3e673SRob Clark	};
14027ec3e673SRob Clark
14037ec3e673SRob Clark	ts_int_l: ts-int-l {
14047ec3e673SRob Clark		pinmux  {
14057ec3e673SRob Clark			pins = "gpio9";
14067ec3e673SRob Clark			function = "gpio";
14077ec3e673SRob Clark		};
14087ec3e673SRob Clark
14097ec3e673SRob Clark		pinconf {
14107ec3e673SRob Clark			pins = "gpio9";
14117ec3e673SRob Clark			bias-pull-up;
14127ec3e673SRob Clark		};
14137ec3e673SRob Clark	};
14147ec3e673SRob Clark
14157ec3e673SRob Clark	ts_reset_l: ts-reset-l {
14167ec3e673SRob Clark		pinmux  {
14177ec3e673SRob Clark			pins = "gpio8";
14187ec3e673SRob Clark			function = "gpio";
14197ec3e673SRob Clark		};
14207ec3e673SRob Clark
14217ec3e673SRob Clark		pinconf {
14227ec3e673SRob Clark			pins = "gpio8";
14237ec3e673SRob Clark			bias-disable;
14247ec3e673SRob Clark			drive-strength = <2>;
14257ec3e673SRob Clark		};
14267ec3e673SRob Clark	};
14277ec3e673SRob Clark};
1428