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