xref: /freebsd/sys/contrib/device-tree/src/arm64/qcom/sm8350-sony-xperia-sagami.dtsi (revision fac71e4e09885bb2afa3d984a0c239a52e1a7418)
1e67e8565SEmmanuel Vadot// SPDX-License-Identifier: BSD-3-Clause
2e67e8565SEmmanuel Vadot/*
3e67e8565SEmmanuel Vadot * Copyright (c) 2021, Konrad Dybcio <konrad.dybcio@somainline.org>
4e67e8565SEmmanuel Vadot */
5e67e8565SEmmanuel Vadot
6*cb7aa33aSEmmanuel Vadot#include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
78bab661aSEmmanuel Vadot#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
8e67e8565SEmmanuel Vadot#include "sm8350.dtsi"
9e67e8565SEmmanuel Vadot#include "pm8350.dtsi"
10e67e8565SEmmanuel Vadot#include "pm8350b.dtsi"
11e67e8565SEmmanuel Vadot#include "pm8350c.dtsi"
12e67e8565SEmmanuel Vadot#include "pmk8350.dtsi"
13e67e8565SEmmanuel Vadot#include "pmr735a.dtsi"
14e67e8565SEmmanuel Vadot#include "pmr735b.dtsi"
15e67e8565SEmmanuel Vadot
16e67e8565SEmmanuel Vadot/ {
17e67e8565SEmmanuel Vadot	/*
18e67e8565SEmmanuel Vadot	 * Yes, you are correct, there is NO MORE {msm,board,pmic}-id on SM8350!
19e67e8565SEmmanuel Vadot	 * Adding it will cause the bootloader to go crazy and randomly crash
20e67e8565SEmmanuel Vadot	 * shortly after closing UEFI boot services.. Perhaps that has something
21e67e8565SEmmanuel Vadot	 * to do with the OS running inside a VM now..?
22e67e8565SEmmanuel Vadot	 */
23e67e8565SEmmanuel Vadot
24e67e8565SEmmanuel Vadot	chassis-type = "handset";
25e67e8565SEmmanuel Vadot
26e67e8565SEmmanuel Vadot	chosen {
27e67e8565SEmmanuel Vadot		#address-cells = <2>;
28e67e8565SEmmanuel Vadot		#size-cells = <2>;
29e67e8565SEmmanuel Vadot		ranges;
30e67e8565SEmmanuel Vadot
31e67e8565SEmmanuel Vadot		framebuffer: framebuffer@e1000000 {
32e67e8565SEmmanuel Vadot			compatible = "simple-framebuffer";
33e67e8565SEmmanuel Vadot			reg = <0 0xe1000000 0 0x2300000>;
34e67e8565SEmmanuel Vadot
35e67e8565SEmmanuel Vadot			/* The display, even though it's 4K, initializes at 1080-ish p */
36e67e8565SEmmanuel Vadot			width = <1096>;
37e67e8565SEmmanuel Vadot			height = <2560>;
38e67e8565SEmmanuel Vadot			stride = <(1096 * 4)>;
39e67e8565SEmmanuel Vadot			format = "a8r8g8b8";
40e67e8565SEmmanuel Vadot			/*
41e67e8565SEmmanuel Vadot			 * That's (going to be) a lot of clocks, but it's necessary due
42e67e8565SEmmanuel Vadot			 * to unused clk cleanup & no panel driver yet
43e67e8565SEmmanuel Vadot			 */
44e67e8565SEmmanuel Vadot			clocks = <&gcc GCC_DISP_HF_AXI_CLK>,
45e67e8565SEmmanuel Vadot				 <&gcc GCC_DISP_SF_AXI_CLK>;
46e67e8565SEmmanuel Vadot		};
47e67e8565SEmmanuel Vadot	};
48e67e8565SEmmanuel Vadot
49e67e8565SEmmanuel Vadot	gpio-keys {
50e67e8565SEmmanuel Vadot		compatible = "gpio-keys";
51e67e8565SEmmanuel Vadot
52*cb7aa33aSEmmanuel Vadot		pinctrl-names = "default";
53*cb7aa33aSEmmanuel Vadot		pinctrl-0 = <&focus_n &snapshot_n &vol_down_n &g_assist_n>;
54*cb7aa33aSEmmanuel Vadot
55*cb7aa33aSEmmanuel Vadot		key-camera-focus {
56*cb7aa33aSEmmanuel Vadot			label = "Camera Focus";
57*cb7aa33aSEmmanuel Vadot			linux,code = <KEY_CAMERA_FOCUS>;
58*cb7aa33aSEmmanuel Vadot			gpios = <&pm8350b_gpios 8 GPIO_ACTIVE_LOW>;
59*cb7aa33aSEmmanuel Vadot			debounce-interval = <15>;
60*cb7aa33aSEmmanuel Vadot			linux,can-disable;
61*cb7aa33aSEmmanuel Vadot			wakeup-source;
62*cb7aa33aSEmmanuel Vadot		};
63*cb7aa33aSEmmanuel Vadot
64*cb7aa33aSEmmanuel Vadot		key-camera-snapshot {
65*cb7aa33aSEmmanuel Vadot			label = "Camera Snapshot";
66*cb7aa33aSEmmanuel Vadot			linux,code = <KEY_CAMERA>;
67*cb7aa33aSEmmanuel Vadot			gpios = <&pm8350b_gpios 5 GPIO_ACTIVE_LOW>;
68*cb7aa33aSEmmanuel Vadot			debounce-interval = <15>;
69*cb7aa33aSEmmanuel Vadot			linux,can-disable;
70*cb7aa33aSEmmanuel Vadot			wakeup-source;
71*cb7aa33aSEmmanuel Vadot		};
72*cb7aa33aSEmmanuel Vadot
73*cb7aa33aSEmmanuel Vadot		key-google-assist {
74*cb7aa33aSEmmanuel Vadot			label = "Google Assistant Key";
75*cb7aa33aSEmmanuel Vadot			gpios = <&pm8350_gpios 9 GPIO_ACTIVE_LOW>;
76*cb7aa33aSEmmanuel Vadot			linux,code = <KEY_LEFTMETA>;
77*cb7aa33aSEmmanuel Vadot			debounce-interval = <15>;
78*cb7aa33aSEmmanuel Vadot			linux,can-disable;
79*cb7aa33aSEmmanuel Vadot			wakeup-source;
80*cb7aa33aSEmmanuel Vadot		};
81e67e8565SEmmanuel Vadot
82b97ee269SEmmanuel Vadot		key-vol-down {
83e67e8565SEmmanuel Vadot			label = "Volume Down";
84e67e8565SEmmanuel Vadot			linux,code = <KEY_VOLUMEDOWN>;
85e67e8565SEmmanuel Vadot			gpios = <&pmk8350_gpios 3 GPIO_ACTIVE_LOW>;
86e67e8565SEmmanuel Vadot			debounce-interval = <15>;
87e67e8565SEmmanuel Vadot			linux,can-disable;
88*cb7aa33aSEmmanuel Vadot			wakeup-source;
89e67e8565SEmmanuel Vadot		};
90e67e8565SEmmanuel Vadot	};
91e67e8565SEmmanuel Vadot
92e67e8565SEmmanuel Vadot	reserved-memory {
93e67e8565SEmmanuel Vadot		cont_splash_mem: memory@e1000000 {
94e67e8565SEmmanuel Vadot			reg = <0 0xe1000000 0 0x2300000>;
95e67e8565SEmmanuel Vadot			no-map;
96e67e8565SEmmanuel Vadot		};
97e67e8565SEmmanuel Vadot
98e67e8565SEmmanuel Vadot		ramoops@ffc00000 {
99e67e8565SEmmanuel Vadot			compatible = "ramoops";
100e67e8565SEmmanuel Vadot			reg = <0 0xffc00000 0 0x100000>;
101e67e8565SEmmanuel Vadot			console-size = <0x40000>;
102e67e8565SEmmanuel Vadot			record-size = <0x1000>;
103e67e8565SEmmanuel Vadot			no-map;
104e67e8565SEmmanuel Vadot		};
105e67e8565SEmmanuel Vadot	};
1068bab661aSEmmanuel Vadot
1078bab661aSEmmanuel Vadot	vph_pwr: vph-pwr-regulator {
1088bab661aSEmmanuel Vadot		compatible = "regulator-fixed";
1098bab661aSEmmanuel Vadot		regulator-name = "vph_pwr";
1108bab661aSEmmanuel Vadot		regulator-min-microvolt = <3700000>;
1118bab661aSEmmanuel Vadot		regulator-max-microvolt = <3700000>;
1128bab661aSEmmanuel Vadot
1138bab661aSEmmanuel Vadot		regulator-always-on;
1148bab661aSEmmanuel Vadot		regulator-boot-on;
1158bab661aSEmmanuel Vadot	};
116e67e8565SEmmanuel Vadot};
117e67e8565SEmmanuel Vadot
118e67e8565SEmmanuel Vadot&adsp {
119e67e8565SEmmanuel Vadot	status = "okay";
1208bab661aSEmmanuel Vadot	firmware-name = "qcom/sm8350/Sony/sagami/adsp.mbn";
1218bab661aSEmmanuel Vadot};
1228bab661aSEmmanuel Vadot
1238bab661aSEmmanuel Vadot&apps_rsc {
1248bab661aSEmmanuel Vadot	regulators-0 {
1258bab661aSEmmanuel Vadot		compatible = "qcom,pm8350-rpmh-regulators";
1268bab661aSEmmanuel Vadot		qcom,pmic-id = "b";
1278bab661aSEmmanuel Vadot
1288bab661aSEmmanuel Vadot		vdd-s1-supply = <&vph_pwr>;
1298bab661aSEmmanuel Vadot		vdd-s2-supply = <&vph_pwr>;
1308bab661aSEmmanuel Vadot		vdd-s3-supply = <&vph_pwr>;
1318bab661aSEmmanuel Vadot		vdd-s4-supply = <&vph_pwr>;
1328bab661aSEmmanuel Vadot		vdd-s5-supply = <&vph_pwr>;
1338bab661aSEmmanuel Vadot		vdd-s6-supply = <&vph_pwr>;
1348bab661aSEmmanuel Vadot		vdd-s7-supply = <&vph_pwr>;
1358bab661aSEmmanuel Vadot		vdd-s8-supply = <&vph_pwr>;
1368bab661aSEmmanuel Vadot		vdd-s9-supply = <&vph_pwr>;
1378bab661aSEmmanuel Vadot		vdd-s10-supply = <&vph_pwr>;
1388bab661aSEmmanuel Vadot		vdd-s11-supply = <&vph_pwr>;
1398bab661aSEmmanuel Vadot		vdd-s12-supply = <&vph_pwr>;
1408bab661aSEmmanuel Vadot
1418bab661aSEmmanuel Vadot		vdd-l1-l4-supply = <&pm8350_s11>;
1428bab661aSEmmanuel Vadot		vdd-l2-l7-supply = <&vreg_bob>;
1438bab661aSEmmanuel Vadot		vdd-l3-l5-supply = <&vreg_bob>;
1448bab661aSEmmanuel Vadot		vdd-l6-l9-l10-supply = <&pm8350_s11>;
1458bab661aSEmmanuel Vadot
1468bab661aSEmmanuel Vadot		/*
1478bab661aSEmmanuel Vadot		 * ARC regulators:
1488bab661aSEmmanuel Vadot		 * S5 - mx.lvl
1498bab661aSEmmanuel Vadot		 * S6 - gfx.lvl
1508bab661aSEmmanuel Vadot		 * S9 - mxc.lvl
1518bab661aSEmmanuel Vadot		 */
1528bab661aSEmmanuel Vadot
1538bab661aSEmmanuel Vadot		pm8350_s10: smps10 {
1548bab661aSEmmanuel Vadot			regulator-name = "pm8350_s10";
1558bab661aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
1568bab661aSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
1578bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1588bab661aSEmmanuel Vadot		};
1598bab661aSEmmanuel Vadot
1608bab661aSEmmanuel Vadot		pm8350_s11: smps11 {
1618bab661aSEmmanuel Vadot			regulator-name = "pm8350_s11";
1628bab661aSEmmanuel Vadot			regulator-min-microvolt = <752000>;
1638bab661aSEmmanuel Vadot			regulator-max-microvolt = <1000000>;
1648bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1658bab661aSEmmanuel Vadot		};
1668bab661aSEmmanuel Vadot
1678bab661aSEmmanuel Vadot		pm8350_s12: smps12 {
1688bab661aSEmmanuel Vadot			regulator-name = "pm8350_s12";
1698bab661aSEmmanuel Vadot			regulator-min-microvolt = <1224000>;
1708bab661aSEmmanuel Vadot			regulator-max-microvolt = <1360000>;
1718bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1728bab661aSEmmanuel Vadot		};
1738bab661aSEmmanuel Vadot
1748bab661aSEmmanuel Vadot		pm8350_l1: ldo1 {
1758bab661aSEmmanuel Vadot			regulator-name = "pm8350_l1";
1768bab661aSEmmanuel Vadot			regulator-min-microvolt = <912000>;
1778bab661aSEmmanuel Vadot			regulator-max-microvolt = <920000>;
1788bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1798bab661aSEmmanuel Vadot		};
1808bab661aSEmmanuel Vadot
1818bab661aSEmmanuel Vadot		pm8350_l2: ldo2 {
1828bab661aSEmmanuel Vadot			regulator-name = "pm8350_l2";
1838bab661aSEmmanuel Vadot			regulator-min-microvolt = <3072000>;
1848bab661aSEmmanuel Vadot			regulator-max-microvolt = <3072000>;
1858bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1868bab661aSEmmanuel Vadot		};
1878bab661aSEmmanuel Vadot
1888bab661aSEmmanuel Vadot		pm8350_l3: ldo3 {
1898bab661aSEmmanuel Vadot			regulator-name = "pm8350_l3";
1908bab661aSEmmanuel Vadot			regulator-min-microvolt = <904000>;
1918bab661aSEmmanuel Vadot			regulator-max-microvolt = <904000>;
1928bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1938bab661aSEmmanuel Vadot		};
1948bab661aSEmmanuel Vadot
1958bab661aSEmmanuel Vadot		/* L4 - lmx.lvl (ARC) */
1968bab661aSEmmanuel Vadot
1978bab661aSEmmanuel Vadot		pm8350_l5: ldo5 {
1988bab661aSEmmanuel Vadot			regulator-name = "pm8350_l5";
1998bab661aSEmmanuel Vadot			regulator-min-microvolt = <880000>;
2008bab661aSEmmanuel Vadot			regulator-max-microvolt = <888000>;
2018bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2028bab661aSEmmanuel Vadot			regulator-allow-set-load;
203*cb7aa33aSEmmanuel Vadot			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
204*cb7aa33aSEmmanuel Vadot						   RPMH_REGULATOR_MODE_HPM>;
2058bab661aSEmmanuel Vadot		};
2068bab661aSEmmanuel Vadot
2078bab661aSEmmanuel Vadot		pm8350_l6: ldo6 {
2088bab661aSEmmanuel Vadot			regulator-name = "pm8350_l6";
2098bab661aSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
2108bab661aSEmmanuel Vadot			regulator-max-microvolt = <1208000>;
2118bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2128bab661aSEmmanuel Vadot			regulator-allow-set-load;
213*cb7aa33aSEmmanuel Vadot			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
214*cb7aa33aSEmmanuel Vadot						   RPMH_REGULATOR_MODE_HPM>;
2158bab661aSEmmanuel Vadot		};
2168bab661aSEmmanuel Vadot
2178bab661aSEmmanuel Vadot		pm8350_l7: ldo7 {
2188bab661aSEmmanuel Vadot			regulator-name = "pm8350_l7";
2198bab661aSEmmanuel Vadot			regulator-min-microvolt = <2400000>;
2208bab661aSEmmanuel Vadot			regulator-max-microvolt = <3008000>;
2218bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2228bab661aSEmmanuel Vadot			regulator-allow-set-load;
223*cb7aa33aSEmmanuel Vadot			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
224*cb7aa33aSEmmanuel Vadot						   RPMH_REGULATOR_MODE_HPM>;
2258bab661aSEmmanuel Vadot		};
2268bab661aSEmmanuel Vadot
2278bab661aSEmmanuel Vadot		/* L8 - lcx.lvl (ARC) */
2288bab661aSEmmanuel Vadot
2298bab661aSEmmanuel Vadot		pm8350_l9: ldo9 {
2308bab661aSEmmanuel Vadot			regulator-name = "pm8350_l9";
2318bab661aSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
2328bab661aSEmmanuel Vadot			regulator-max-microvolt = <1200000>;
2338bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2348bab661aSEmmanuel Vadot			regulator-allow-set-load;
235*cb7aa33aSEmmanuel Vadot			regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
236*cb7aa33aSEmmanuel Vadot						   RPMH_REGULATOR_MODE_HPM>;
2378bab661aSEmmanuel Vadot		};
2388bab661aSEmmanuel Vadot	};
2398bab661aSEmmanuel Vadot
2408bab661aSEmmanuel Vadot	regulators-1 {
2418bab661aSEmmanuel Vadot		compatible = "qcom,pm8350c-rpmh-regulators";
2428bab661aSEmmanuel Vadot		qcom,pmic-id = "c";
2438bab661aSEmmanuel Vadot
2448bab661aSEmmanuel Vadot		vdd-s1-supply = <&vph_pwr>;
2458bab661aSEmmanuel Vadot		vdd-s2-supply = <&vph_pwr>;
2468bab661aSEmmanuel Vadot		vdd-s3-supply = <&vph_pwr>;
2478bab661aSEmmanuel Vadot		vdd-s4-supply = <&vph_pwr>;
2488bab661aSEmmanuel Vadot		vdd-s5-supply = <&vph_pwr>;
2498bab661aSEmmanuel Vadot		vdd-s6-supply = <&vph_pwr>;
2508bab661aSEmmanuel Vadot		vdd-s7-supply = <&vph_pwr>;
2518bab661aSEmmanuel Vadot		vdd-s8-supply = <&vph_pwr>;
2528bab661aSEmmanuel Vadot		vdd-s9-supply = <&vph_pwr>;
2538bab661aSEmmanuel Vadot		vdd-s10-supply = <&vph_pwr>;
2548bab661aSEmmanuel Vadot
2558bab661aSEmmanuel Vadot		vdd-l1-l12-supply = <&pm8350c_s1>;
2568bab661aSEmmanuel Vadot		vdd-l2-l8-supply = <&pm8350c_s1>;
2578bab661aSEmmanuel Vadot		vdd-l3-l4-l5-l7-l13-supply = <&vreg_bob>;
2588bab661aSEmmanuel Vadot		vdd-l6-l9-l11-supply = <&vreg_bob>;
2598bab661aSEmmanuel Vadot		vdd-l10-supply = <&pm8350_s12>;
2608bab661aSEmmanuel Vadot
2618bab661aSEmmanuel Vadot		vdd-bob-supply = <&vph_pwr>;
2628bab661aSEmmanuel Vadot
2638bab661aSEmmanuel Vadot		pm8350c_s1: smps1 {
2648bab661aSEmmanuel Vadot			regulator-name = "pm8350c_s1";
2658bab661aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
2668bab661aSEmmanuel Vadot			regulator-max-microvolt = <1952000>;
2678bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2688bab661aSEmmanuel Vadot		};
2698bab661aSEmmanuel Vadot
2708bab661aSEmmanuel Vadot		/* S2 - ebi.lvl (ARC) */
2718bab661aSEmmanuel Vadot
2728bab661aSEmmanuel Vadot		pm8350c_s3: smps3 {
2738bab661aSEmmanuel Vadot			regulator-name = "pm8350c_s3";
2748bab661aSEmmanuel Vadot			regulator-min-microvolt = <300000>;
2758bab661aSEmmanuel Vadot			regulator-max-microvolt = <704000>;
2768bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2778bab661aSEmmanuel Vadot		};
2788bab661aSEmmanuel Vadot
2798bab661aSEmmanuel Vadot		/*
2808bab661aSEmmanuel Vadot		 * ARC regulators:
2818bab661aSEmmanuel Vadot		 * S4 - mss.lvl
2828bab661aSEmmanuel Vadot		 * S6 - cx.lvl
2838bab661aSEmmanuel Vadot		 * S8 - mmcx.lvl
2848bab661aSEmmanuel Vadot		 */
2858bab661aSEmmanuel Vadot
2868bab661aSEmmanuel Vadot		pm8350c_s10: smps10 {
2878bab661aSEmmanuel Vadot			regulator-name = "pm8350c_s10";
2888bab661aSEmmanuel Vadot			regulator-min-microvolt = <1048000>;
2898bab661aSEmmanuel Vadot			regulator-max-microvolt = <1128000>;
2908bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2918bab661aSEmmanuel Vadot		};
2928bab661aSEmmanuel Vadot
2938bab661aSEmmanuel Vadot		pm8350c_l1: ldo1 {
2948bab661aSEmmanuel Vadot			regulator-name = "pm8350c_l1";
2958bab661aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
2968bab661aSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
2978bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2988bab661aSEmmanuel Vadot		};
2998bab661aSEmmanuel Vadot
3008bab661aSEmmanuel Vadot		pm8350c_l2: ldo2 {
3018bab661aSEmmanuel Vadot			regulator-name = "pm8350c_l2";
3028bab661aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
3038bab661aSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
3048bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3058bab661aSEmmanuel Vadot		};
3068bab661aSEmmanuel Vadot
3078bab661aSEmmanuel Vadot		pm8350c_l3: ldo3 {
3088bab661aSEmmanuel Vadot			regulator-name = "pm8350c_l3";
3098bab661aSEmmanuel Vadot			regulator-min-microvolt = <3304000>;
3108bab661aSEmmanuel Vadot			regulator-max-microvolt = <3304000>;
3118bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3128bab661aSEmmanuel Vadot		};
3138bab661aSEmmanuel Vadot
3148bab661aSEmmanuel Vadot		pm8350c_l4: ldo4 {
3158bab661aSEmmanuel Vadot			regulator-name = "pm8350c_l4";
3168bab661aSEmmanuel Vadot			regulator-min-microvolt = <1704000>;
3178bab661aSEmmanuel Vadot			regulator-max-microvolt = <3000000>;
3188bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3198bab661aSEmmanuel Vadot		};
3208bab661aSEmmanuel Vadot
3218bab661aSEmmanuel Vadot		pm8350c_l5: ldo5 {
3228bab661aSEmmanuel Vadot			regulator-name = "pm8350c_l5";
3238bab661aSEmmanuel Vadot			regulator-min-microvolt = <1704000>;
3248bab661aSEmmanuel Vadot			regulator-max-microvolt = <3000000>;
3258bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3268bab661aSEmmanuel Vadot		};
3278bab661aSEmmanuel Vadot
3288bab661aSEmmanuel Vadot		pm8350c_l6: ldo6 {
3298bab661aSEmmanuel Vadot			regulator-name = "pm8350c_l6";
3308bab661aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
3318bab661aSEmmanuel Vadot			regulator-max-microvolt = <2960000>;
3328bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3338bab661aSEmmanuel Vadot		};
3348bab661aSEmmanuel Vadot
3358bab661aSEmmanuel Vadot		pm8350c_l7: ldo7 {
3368bab661aSEmmanuel Vadot			regulator-name = "pm8350c_l7";
3378bab661aSEmmanuel Vadot			regulator-min-microvolt = <3008000>;
3388bab661aSEmmanuel Vadot			regulator-max-microvolt = <3008000>;
3398bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3408bab661aSEmmanuel Vadot		};
3418bab661aSEmmanuel Vadot
3428bab661aSEmmanuel Vadot		pm8350c_l8: ldo8 {
3438bab661aSEmmanuel Vadot			regulator-name = "pm8350c_l8";
3448bab661aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
3458bab661aSEmmanuel Vadot			regulator-max-microvolt = <1800000>;
3468bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3478bab661aSEmmanuel Vadot		};
3488bab661aSEmmanuel Vadot
3498bab661aSEmmanuel Vadot		pm8350c_l9: ldo9 {
3508bab661aSEmmanuel Vadot			regulator-name = "pm8350c_l9";
3518bab661aSEmmanuel Vadot			regulator-min-microvolt = <2960000>;
3528bab661aSEmmanuel Vadot			/* Originally max = 3008000 but SDHCI expects 2960000 */
3538bab661aSEmmanuel Vadot			regulator-max-microvolt = <2960000>;
3548bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3558bab661aSEmmanuel Vadot		};
3568bab661aSEmmanuel Vadot
3578bab661aSEmmanuel Vadot		pm8350c_l10: ldo10 {
3588bab661aSEmmanuel Vadot			regulator-name = "pm8350c_l10";
3598bab661aSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
3608bab661aSEmmanuel Vadot			regulator-max-microvolt = <1200000>;
3618bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3628bab661aSEmmanuel Vadot		};
3638bab661aSEmmanuel Vadot
3648bab661aSEmmanuel Vadot		pm8350c_l11: ldo11 {
3658bab661aSEmmanuel Vadot			regulator-name = "pm8350c_l11";
3668bab661aSEmmanuel Vadot			regulator-min-microvolt = <2400000>;
3678bab661aSEmmanuel Vadot			regulator-max-microvolt = <3008000>;
3688bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3698bab661aSEmmanuel Vadot		};
3708bab661aSEmmanuel Vadot
3718bab661aSEmmanuel Vadot		pm8350c_l12: ldo12 {
3728bab661aSEmmanuel Vadot			regulator-name = "pm8350c_l12";
3738bab661aSEmmanuel Vadot			regulator-min-microvolt = <1800000>;
3748bab661aSEmmanuel Vadot			regulator-max-microvolt = <2000000>;
3758bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3768bab661aSEmmanuel Vadot		};
3778bab661aSEmmanuel Vadot
3788bab661aSEmmanuel Vadot		pm8350c_l13: ldo13 {
3798bab661aSEmmanuel Vadot			regulator-name = "pm8350c_l13";
3808bab661aSEmmanuel Vadot			regulator-min-microvolt = <3000000>;
3818bab661aSEmmanuel Vadot			regulator-max-microvolt = <3000000>;
3828bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
3838bab661aSEmmanuel Vadot		};
3848bab661aSEmmanuel Vadot
3858bab661aSEmmanuel Vadot		vreg_bob: bob {
3868bab661aSEmmanuel Vadot			regulator-name = "vreg_bob";
3878bab661aSEmmanuel Vadot			regulator-min-microvolt = <3400000>;
3888bab661aSEmmanuel Vadot			regulator-max-microvolt = <3960000>;
3898bab661aSEmmanuel Vadot			regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
3908bab661aSEmmanuel Vadot		};
3918bab661aSEmmanuel Vadot	};
3928bab661aSEmmanuel Vadot
3938bab661aSEmmanuel Vadot	/* TODO: Add pm8350b (just one ldo) once the driver part is in */
3948bab661aSEmmanuel Vadot
3958bab661aSEmmanuel Vadot	regulators-2 {
3968bab661aSEmmanuel Vadot		compatible = "qcom,pmr735a-rpmh-regulators";
3978bab661aSEmmanuel Vadot		qcom,pmic-id = "e";
3988bab661aSEmmanuel Vadot
3998bab661aSEmmanuel Vadot		vdd-s1-supply = <&vph_pwr>;
4008bab661aSEmmanuel Vadot		vdd-s2-supply = <&vph_pwr>;
4018bab661aSEmmanuel Vadot		vdd-s3-supply = <&vph_pwr>;
4028bab661aSEmmanuel Vadot
4038bab661aSEmmanuel Vadot		vdd-l1-l2-supply = <&pmr735a_s2>;
4048bab661aSEmmanuel Vadot		vdd-l3-supply = <&pmr735a_s1>;
4058bab661aSEmmanuel Vadot		vdd-l4-supply = <&pm8350c_s1>;
4068bab661aSEmmanuel Vadot		vdd-l5-l6-supply = <&pm8350c_s1>;
4078bab661aSEmmanuel Vadot		vdd-l7-bob-supply = <&vreg_bob>;
4088bab661aSEmmanuel Vadot
4098bab661aSEmmanuel Vadot		pmr735a_s1: smps1 {
4108bab661aSEmmanuel Vadot			regulator-name = "pmr735a_s1";
4118bab661aSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
4128bab661aSEmmanuel Vadot			regulator-max-microvolt = <1280000>;
4138bab661aSEmmanuel Vadot		};
4148bab661aSEmmanuel Vadot
4158bab661aSEmmanuel Vadot		pmr735a_s2: smps2 {
4168bab661aSEmmanuel Vadot			regulator-name = "pmr735a_s2";
4178bab661aSEmmanuel Vadot			regulator-min-microvolt = <500000>;
4188bab661aSEmmanuel Vadot			regulator-max-microvolt = <976000>;
4198bab661aSEmmanuel Vadot		};
4208bab661aSEmmanuel Vadot
4218bab661aSEmmanuel Vadot		pmr735a_s3: smps3 {
4228bab661aSEmmanuel Vadot			regulator-name = "pmr735a_s3";
4238bab661aSEmmanuel Vadot			regulator-min-microvolt = <2208000>;
4248bab661aSEmmanuel Vadot			regulator-max-microvolt = <2352000>;
4258bab661aSEmmanuel Vadot		};
4268bab661aSEmmanuel Vadot
4278bab661aSEmmanuel Vadot		pmr735a_l1: ldo1 {
4288bab661aSEmmanuel Vadot			regulator-name = "pmr735a_l1";
4298bab661aSEmmanuel Vadot			regulator-min-microvolt = <912000>;
4308bab661aSEmmanuel Vadot			regulator-max-microvolt = <912000>;
4318bab661aSEmmanuel Vadot		};
4328bab661aSEmmanuel Vadot
4338bab661aSEmmanuel Vadot		pmr735a_l2: ldo2 {
4348bab661aSEmmanuel Vadot			regulator-name = "pmr735a_l2";
4358bab661aSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
4368bab661aSEmmanuel Vadot			regulator-max-microvolt = <1200000>;
4378bab661aSEmmanuel Vadot		};
4388bab661aSEmmanuel Vadot
4398bab661aSEmmanuel Vadot		pmr735a_l3: ldo3 {
4408bab661aSEmmanuel Vadot			regulator-name = "pmr735a_l3";
4418bab661aSEmmanuel Vadot			regulator-min-microvolt = <1200000>;
4428bab661aSEmmanuel Vadot			regulator-max-microvolt = <1200000>;
4438bab661aSEmmanuel Vadot		};
4448bab661aSEmmanuel Vadot
4458bab661aSEmmanuel Vadot		pmr735a_l4: ldo4 {
4468bab661aSEmmanuel Vadot			regulator-name = "pmr735a_l4";
4478bab661aSEmmanuel Vadot			regulator-min-microvolt = <1776000>;
4488bab661aSEmmanuel Vadot			regulator-max-microvolt = <1872000>;
4498bab661aSEmmanuel Vadot		};
4508bab661aSEmmanuel Vadot
4518bab661aSEmmanuel Vadot		pmr735a_l5: ldo5 {
4528bab661aSEmmanuel Vadot			regulator-name = "pmr735a_l5";
4538bab661aSEmmanuel Vadot			regulator-min-microvolt = <800000>;
4548bab661aSEmmanuel Vadot			regulator-max-microvolt = <800000>;
4558bab661aSEmmanuel Vadot		};
4568bab661aSEmmanuel Vadot
4578bab661aSEmmanuel Vadot		pmr735a_l6: ldo6 {
4588bab661aSEmmanuel Vadot			regulator-name = "pmr735a_l6";
4598bab661aSEmmanuel Vadot			regulator-min-microvolt = <480000>;
4608bab661aSEmmanuel Vadot			regulator-max-microvolt = <904000>;
4618bab661aSEmmanuel Vadot		};
4628bab661aSEmmanuel Vadot
4638bab661aSEmmanuel Vadot		pmr735a_l7: ldo7 {
4648bab661aSEmmanuel Vadot			regulator-name = "pmr735a_l7";
4658bab661aSEmmanuel Vadot			regulator-min-microvolt = <2800000>;
4668bab661aSEmmanuel Vadot			regulator-max-microvolt = <2800000>;
4678bab661aSEmmanuel Vadot		};
4688bab661aSEmmanuel Vadot	};
469e67e8565SEmmanuel Vadot};
470e67e8565SEmmanuel Vadot
471e67e8565SEmmanuel Vadot&cdsp {
472e67e8565SEmmanuel Vadot	status = "okay";
4738bab661aSEmmanuel Vadot	firmware-name = "qcom/sm8350/Sony/sagami/cdsp.mbn";
474e67e8565SEmmanuel Vadot};
475e67e8565SEmmanuel Vadot
476e67e8565SEmmanuel Vadot&i2c1 {
477e67e8565SEmmanuel Vadot	status = "okay";
478e67e8565SEmmanuel Vadot	clock-frequency = <1000000>;
479e67e8565SEmmanuel Vadot
480e67e8565SEmmanuel Vadot	/* Some subset of SONY IMX663 camera sensor @ 38 */
481e67e8565SEmmanuel Vadot};
482e67e8565SEmmanuel Vadot
483e67e8565SEmmanuel Vadot&i2c4 {
484e67e8565SEmmanuel Vadot	status = "okay";
485e67e8565SEmmanuel Vadot	clock-frequency = <400000>;
486e67e8565SEmmanuel Vadot
487e67e8565SEmmanuel Vadot	/* Samsung Touchscreen (needs I2C GPI DMA) @ 48 */
488e67e8565SEmmanuel Vadot};
489e67e8565SEmmanuel Vadot
490e67e8565SEmmanuel Vadot&i2c11 {
491e67e8565SEmmanuel Vadot	status = "okay";
492e67e8565SEmmanuel Vadot	clock-frequency = <1000000>;
493e67e8565SEmmanuel Vadot
494*cb7aa33aSEmmanuel Vadot	cs35l41_l: speaker-amp@40 {
495e67e8565SEmmanuel Vadot		compatible = "cirrus,cs35l41";
496e67e8565SEmmanuel Vadot		reg = <0x40>;
497e67e8565SEmmanuel Vadot		interrupt-parent = <&tlmm>;
498e67e8565SEmmanuel Vadot		interrupts = <36 IRQ_TYPE_LEVEL_LOW>;
499e67e8565SEmmanuel Vadot		reset-gpios = <&tlmm 37 GPIO_ACTIVE_HIGH>;
500e67e8565SEmmanuel Vadot		cirrus,boost-peak-milliamp = <4000>;
501e67e8565SEmmanuel Vadot		cirrus,boost-ind-nanohenry = <1000>;
502e67e8565SEmmanuel Vadot		cirrus,boost-cap-microfarad = <15>;
503e67e8565SEmmanuel Vadot		cirrus,asp-sdout-hiz = <3>;
504e67e8565SEmmanuel Vadot		cirrus,gpio2-src-select = <2>;
505e67e8565SEmmanuel Vadot		cirrus,gpio2-output-enable;
506e67e8565SEmmanuel Vadot		#sound-dai-cells = <1>;
507e67e8565SEmmanuel Vadot	};
508e67e8565SEmmanuel Vadot
509*cb7aa33aSEmmanuel Vadot	cs35l41_r: speaker-amp@41 {
510e67e8565SEmmanuel Vadot		compatible = "cirrus,cs35l41";
511e67e8565SEmmanuel Vadot		reg = <0x41>;
512e67e8565SEmmanuel Vadot		interrupt-parent = <&tlmm>;
513e67e8565SEmmanuel Vadot		interrupts = <36 IRQ_TYPE_LEVEL_LOW>;
514e67e8565SEmmanuel Vadot		reset-gpios = <&tlmm 37 GPIO_ACTIVE_HIGH>;
515e67e8565SEmmanuel Vadot		cirrus,boost-peak-milliamp = <4000>;
516e67e8565SEmmanuel Vadot		cirrus,boost-ind-nanohenry = <1000>;
517e67e8565SEmmanuel Vadot		cirrus,boost-cap-microfarad = <15>;
518e67e8565SEmmanuel Vadot		cirrus,asp-sdout-hiz = <3>;
519e67e8565SEmmanuel Vadot		cirrus,gpio2-src-select = <2>;
520e67e8565SEmmanuel Vadot		cirrus,gpio2-output-enable;
521e67e8565SEmmanuel Vadot		#sound-dai-cells = <1>;
522e67e8565SEmmanuel Vadot	};
523e67e8565SEmmanuel Vadot};
524e67e8565SEmmanuel Vadot
525e67e8565SEmmanuel Vadot&i2c12 {
526e67e8565SEmmanuel Vadot	status = "okay";
527e67e8565SEmmanuel Vadot	/* Clock frequency was not specified downstream, let's park it to 100 KHz */
528e67e8565SEmmanuel Vadot	clock-frequency = <100000>;
529e67e8565SEmmanuel Vadot
530e67e8565SEmmanuel Vadot	/* AMS TCS3490 RGB+IR color sensor @ 72 */
531e67e8565SEmmanuel Vadot};
532e67e8565SEmmanuel Vadot
533e67e8565SEmmanuel Vadot&i2c13 {
534e67e8565SEmmanuel Vadot	status = "okay";
535e67e8565SEmmanuel Vadot	/* Clock frequency was not specified downstream, let's park it to 100 KHz */
536e67e8565SEmmanuel Vadot	clock-frequency = <100000>;
537e67e8565SEmmanuel Vadot
538e67e8565SEmmanuel Vadot	/* Qualcomm PM8008i/PM8008j (?) @ 8, 9, c, d */
539e67e8565SEmmanuel Vadot};
540e67e8565SEmmanuel Vadot
541e67e8565SEmmanuel Vadot&i2c15 {
542e67e8565SEmmanuel Vadot	status = "okay";
543e67e8565SEmmanuel Vadot	clock-frequency = <400000>;
544e67e8565SEmmanuel Vadot
545e67e8565SEmmanuel Vadot	/* NXP SN1X0 NFC @ 28 */
546e67e8565SEmmanuel Vadot};
547e67e8565SEmmanuel Vadot
548e67e8565SEmmanuel Vadot&i2c17 {
549e67e8565SEmmanuel Vadot	status = "okay";
550e67e8565SEmmanuel Vadot	clock-frequency = <1000000>;
551e67e8565SEmmanuel Vadot
552e67e8565SEmmanuel Vadot	/* Cirrus Logic CS40L25A boosted haptics driver @ 40 */
553e67e8565SEmmanuel Vadot};
554e67e8565SEmmanuel Vadot
555e67e8565SEmmanuel Vadot&ipa {
556*cb7aa33aSEmmanuel Vadot	qcom,gsi-loader = "self";
557e67e8565SEmmanuel Vadot	memory-region = <&pil_ipa_fw_mem>;
5588bab661aSEmmanuel Vadot	firmware-name = "qcom/sm8350/Sony/sagami/ipa_fws.mbn";
559*cb7aa33aSEmmanuel Vadot	status = "okay";
560e67e8565SEmmanuel Vadot};
561e67e8565SEmmanuel Vadot
562e67e8565SEmmanuel Vadot&mpss {
563e67e8565SEmmanuel Vadot	status = "okay";
5648bab661aSEmmanuel Vadot	firmware-name = "qcom/sm8350/Sony/sagami/modem.mbn";
565e67e8565SEmmanuel Vadot};
566e67e8565SEmmanuel Vadot
567*cb7aa33aSEmmanuel Vadot&pm8350_gpios {
568*cb7aa33aSEmmanuel Vadot	gpio-line-names = "ASSIGN1_THERM", /* GPIO_1 */
569*cb7aa33aSEmmanuel Vadot			  "LCD_ID",
570*cb7aa33aSEmmanuel Vadot			  "SDR_MMW_THERM",
571*cb7aa33aSEmmanuel Vadot			  "RF_ID",
572*cb7aa33aSEmmanuel Vadot			  "NC",
573*cb7aa33aSEmmanuel Vadot			  "FP_LDO_EN",
574*cb7aa33aSEmmanuel Vadot			  "SP_ARI_PWR_ALARM",
575*cb7aa33aSEmmanuel Vadot			  "NC",
576*cb7aa33aSEmmanuel Vadot			  "G_ASSIST_N",
577*cb7aa33aSEmmanuel Vadot			  "PM8350_OPTION"; /* GPIO_10 */
578*cb7aa33aSEmmanuel Vadot
579*cb7aa33aSEmmanuel Vadot	g_assist_n: g-assist-n-state {
580*cb7aa33aSEmmanuel Vadot		pins = "gpio9";
581*cb7aa33aSEmmanuel Vadot		function = "normal";
582*cb7aa33aSEmmanuel Vadot		power-source = <1>;
583*cb7aa33aSEmmanuel Vadot		bias-pull-up;
584*cb7aa33aSEmmanuel Vadot		input-enable;
585*cb7aa33aSEmmanuel Vadot	};
586*cb7aa33aSEmmanuel Vadot};
587*cb7aa33aSEmmanuel Vadot
588*cb7aa33aSEmmanuel Vadot&pm8350b_gpios {
589*cb7aa33aSEmmanuel Vadot	snapshot_n: snapshot-n-state {
590*cb7aa33aSEmmanuel Vadot		pins = "gpio5";
591*cb7aa33aSEmmanuel Vadot		function = "normal";
592*cb7aa33aSEmmanuel Vadot		power-source = <0>;
593*cb7aa33aSEmmanuel Vadot		bias-pull-up;
594*cb7aa33aSEmmanuel Vadot		input-enable;
595*cb7aa33aSEmmanuel Vadot	};
596*cb7aa33aSEmmanuel Vadot
597*cb7aa33aSEmmanuel Vadot	focus_n: focus-n-state {
598*cb7aa33aSEmmanuel Vadot		pins = "gpio8";
599*cb7aa33aSEmmanuel Vadot		function = "normal";
600*cb7aa33aSEmmanuel Vadot		power-source = <0>;
601*cb7aa33aSEmmanuel Vadot		input-enable;
602*cb7aa33aSEmmanuel Vadot		bias-pull-up;
603*cb7aa33aSEmmanuel Vadot	};
604*cb7aa33aSEmmanuel Vadot};
605*cb7aa33aSEmmanuel Vadot
606*cb7aa33aSEmmanuel Vadot&pmk8350_gpios {
607*cb7aa33aSEmmanuel Vadot	gpio-line-names = "NC", /* GPIO_1 */
608*cb7aa33aSEmmanuel Vadot			  "NC",
609*cb7aa33aSEmmanuel Vadot			  "VOL_DOWN_N",
610*cb7aa33aSEmmanuel Vadot			  "PMK8350_OPTION";
611*cb7aa33aSEmmanuel Vadot
612*cb7aa33aSEmmanuel Vadot	vol_down_n: vol-down-n-state {
613*cb7aa33aSEmmanuel Vadot		pins = "gpio3";
614*cb7aa33aSEmmanuel Vadot		function = "normal";
615*cb7aa33aSEmmanuel Vadot		power-source = <0>;
616*cb7aa33aSEmmanuel Vadot		bias-pull-up;
617*cb7aa33aSEmmanuel Vadot		input-enable;
618*cb7aa33aSEmmanuel Vadot	};
619*cb7aa33aSEmmanuel Vadot};
620*cb7aa33aSEmmanuel Vadot
621e67e8565SEmmanuel Vadot&pmk8350_rtc {
622e67e8565SEmmanuel Vadot	status = "okay";
623e67e8565SEmmanuel Vadot};
624e67e8565SEmmanuel Vadot
625e67e8565SEmmanuel Vadot&pon_pwrkey {
626e67e8565SEmmanuel Vadot	status = "okay";
627e67e8565SEmmanuel Vadot};
628e67e8565SEmmanuel Vadot
629e67e8565SEmmanuel Vadot&pon_resin {
630e67e8565SEmmanuel Vadot	status = "okay";
631e67e8565SEmmanuel Vadot	linux,code = <KEY_VOLUMEUP>;
632e67e8565SEmmanuel Vadot};
633e67e8565SEmmanuel Vadot
634e67e8565SEmmanuel Vadot&qupv3_id_0 {
635e67e8565SEmmanuel Vadot	status = "okay";
636e67e8565SEmmanuel Vadot};
637e67e8565SEmmanuel Vadot
638e67e8565SEmmanuel Vadot&qupv3_id_1 {
639e67e8565SEmmanuel Vadot	status = "okay";
640e67e8565SEmmanuel Vadot};
641e67e8565SEmmanuel Vadot
642e67e8565SEmmanuel Vadot&qupv3_id_2 {
643e67e8565SEmmanuel Vadot	status = "okay";
644e67e8565SEmmanuel Vadot};
645e67e8565SEmmanuel Vadot
6468bab661aSEmmanuel Vadot&sdhc_2 {
6478bab661aSEmmanuel Vadot	cd-gpios = <&tlmm 92 GPIO_ACTIVE_HIGH>;
6488bab661aSEmmanuel Vadot	pinctrl-names = "default", "sleep";
6498bab661aSEmmanuel Vadot	pinctrl-0 = <&sdc2_default_state &sdc2_card_det_active>;
6508bab661aSEmmanuel Vadot	pinctrl-1 = <&sdc2_sleep_state &sdc2_card_det_sleep>;
6518bab661aSEmmanuel Vadot	vmmc-supply = <&pm8350c_l9>;
6528bab661aSEmmanuel Vadot	vqmmc-supply = <&pm8350c_l6>;
6538bab661aSEmmanuel Vadot	no-sdio;
6548bab661aSEmmanuel Vadot	no-mmc;
6558bab661aSEmmanuel Vadot	status = "okay";
6568bab661aSEmmanuel Vadot};
6578bab661aSEmmanuel Vadot
658e67e8565SEmmanuel Vadot&slpi {
659e67e8565SEmmanuel Vadot	status = "okay";
6608bab661aSEmmanuel Vadot	firmware-name = "qcom/sm8350/Sony/sagami/slpi.mbn";
661e67e8565SEmmanuel Vadot};
662e67e8565SEmmanuel Vadot
663e67e8565SEmmanuel Vadot&spi14 {
664e67e8565SEmmanuel Vadot	status = "okay";
665e67e8565SEmmanuel Vadot
666e67e8565SEmmanuel Vadot	/* NXP SN1X0 NFC Secure Element @ 0 */
667e67e8565SEmmanuel Vadot};
668e67e8565SEmmanuel Vadot
669e67e8565SEmmanuel Vadot&tlmm {
670e67e8565SEmmanuel Vadot	gpio-reserved-ranges = <44 4>;
6718bab661aSEmmanuel Vadot	gpio-line-names = "APPS_I2C_0_SDA", /* GPIO_0 */
6728bab661aSEmmanuel Vadot			  "APPS_I2C_0_SCL",
6738bab661aSEmmanuel Vadot			  "UWIDEC_PWR_EN",
6748bab661aSEmmanuel Vadot			  "HAP_RST_N",
6758bab661aSEmmanuel Vadot			  "NC",
6768bab661aSEmmanuel Vadot			  "NC",
6778bab661aSEmmanuel Vadot			  "PM8008_1_RESET_N",
6788bab661aSEmmanuel Vadot			  "NC",
6798bab661aSEmmanuel Vadot			  "OIS_TELE_I2C_SDA",
6808bab661aSEmmanuel Vadot			  "OIS_TELE_I2C_SCL",
6818bab661aSEmmanuel Vadot			  "PM8350_OPTION", /* GPIO_10 */
6828bab661aSEmmanuel Vadot			  "NC",
6838bab661aSEmmanuel Vadot			  "APPS_I2C_1_SDA",
6848bab661aSEmmanuel Vadot			  "APPS_I2C_1_SCL",
6858bab661aSEmmanuel Vadot			  "NC",
6868bab661aSEmmanuel Vadot			  "NC",
6878bab661aSEmmanuel Vadot			  "CAM1_RESET_N",
6888bab661aSEmmanuel Vadot			  "LEO_CAM0_RESET_N",
6898bab661aSEmmanuel Vadot			  "DEBUG_UART_TX",
6908bab661aSEmmanuel Vadot			  "DEBUG_UART_RX",
6918bab661aSEmmanuel Vadot			  "TS_I2C_SDA", /* GPIO_20 */
6928bab661aSEmmanuel Vadot			  "TS_I2C_SCL",
6938bab661aSEmmanuel Vadot			  "TS_RESET_N",
6948bab661aSEmmanuel Vadot			  "TS_INT_N",
6958bab661aSEmmanuel Vadot			  "DISP_RESET_N",
6968bab661aSEmmanuel Vadot			  "SW_SERVICE",
6978bab661aSEmmanuel Vadot			  "DISP_ERR_FG",
6988bab661aSEmmanuel Vadot			  "TX_GTR_THRES_IN",
6998bab661aSEmmanuel Vadot			  "NC",
7008bab661aSEmmanuel Vadot			  "NC",
7018bab661aSEmmanuel Vadot			  "NC", /* GPIO_30 */
7028bab661aSEmmanuel Vadot			  "NC",
7038bab661aSEmmanuel Vadot			  "NC",
7048bab661aSEmmanuel Vadot			  "NC",
7058bab661aSEmmanuel Vadot			  "NC",
7068bab661aSEmmanuel Vadot			  "NC",
7078bab661aSEmmanuel Vadot			  "SPK_AMP_INT_N",
7088bab661aSEmmanuel Vadot			  "SPK_AMP_RESET_N",
7098bab661aSEmmanuel Vadot			  "FP_INT_N",
7108bab661aSEmmanuel Vadot			  "FP_RESET_N",
7118bab661aSEmmanuel Vadot			  "NC", /* GPIO_40 */
7128bab661aSEmmanuel Vadot			  "NC",
7138bab661aSEmmanuel Vadot			  "DEBUG_GPIO0",
7148bab661aSEmmanuel Vadot			  "FORCE_USB_BOOT",
7158bab661aSEmmanuel Vadot			  "FP_SPI_MISO",
7168bab661aSEmmanuel Vadot			  "FP_SPI_MOSI",
7178bab661aSEmmanuel Vadot			  "FP_SPI_CLK",
7188bab661aSEmmanuel Vadot			  "FP_SPI_CS_N",
7198bab661aSEmmanuel Vadot			  "SPK_AMP_I2C_SDA",
7208bab661aSEmmanuel Vadot			  "SPK_AMP_I2C_SCL",
7218bab661aSEmmanuel Vadot			  "NC", /* GPIO_50 */
7228bab661aSEmmanuel Vadot			  "HAP_INT_N",
7238bab661aSEmmanuel Vadot			  "CAMSENSOR_I2C_SDA",
7248bab661aSEmmanuel Vadot			  "CAMSENSOR_I2C_SCL",
7258bab661aSEmmanuel Vadot			  "SBU_SW_OE",
7268bab661aSEmmanuel Vadot			  "SBU_SW_SEL",
7278bab661aSEmmanuel Vadot			  "NFC_ESE_SPI_MISO",
7288bab661aSEmmanuel Vadot			  "NFC_ESE_SPI_MOSI",
7298bab661aSEmmanuel Vadot			  "NFC_ESE_SPI_CLK",
7308bab661aSEmmanuel Vadot			  "NFC_ESE_SPI_CS",
7318bab661aSEmmanuel Vadot			  "NFC_I2C_SDA", /* GPIO_60 */
7328bab661aSEmmanuel Vadot			  "NFC_I2C_SCL",
7338bab661aSEmmanuel Vadot			  "NFC_EN",
7348bab661aSEmmanuel Vadot			  "NFC_CLK_REQ",
7358bab661aSEmmanuel Vadot			  "HST_WLAN_EN",
7368bab661aSEmmanuel Vadot			  "HST_BT_EN",
7378bab661aSEmmanuel Vadot			  "HW_ID_0",
7388bab661aSEmmanuel Vadot			  "HW_ID_1",
7398bab661aSEmmanuel Vadot			  "HST_BT_UART_CTS",
7408bab661aSEmmanuel Vadot			  "HST_BT_UART_RFR",
7418bab661aSEmmanuel Vadot			  "HST_BT_UART_TX", /* GPIO_70 */
7428bab661aSEmmanuel Vadot			  "HST_BT_UART_RX",
7438bab661aSEmmanuel Vadot			  "HAP_I2C_SDA",
7448bab661aSEmmanuel Vadot			  "HAP_I2C_SCL",
7458bab661aSEmmanuel Vadot			  "RF_LCD_ID_EN",
7468bab661aSEmmanuel Vadot			  "RF_ID_EXTENSION",
7478bab661aSEmmanuel Vadot			  "NC",
7488bab661aSEmmanuel Vadot			  "NC",
7498bab661aSEmmanuel Vadot			  "NC",
7508bab661aSEmmanuel Vadot			  "NC",
7518bab661aSEmmanuel Vadot			  "HALL_INT_N", /* GPIO_80 */
7528bab661aSEmmanuel Vadot			  "USB_CC_DIR",
7538bab661aSEmmanuel Vadot			  "DISP_VSYNC",
7548bab661aSEmmanuel Vadot			  "NC",
7558bab661aSEmmanuel Vadot			  "NC",
7568bab661aSEmmanuel Vadot			  "CAM_SOF_TELE",
7578bab661aSEmmanuel Vadot			  "NFC_DWL_REQ",
7588bab661aSEmmanuel Vadot			  "NFC_IRQ",
7598bab661aSEmmanuel Vadot			  "WCD_RST_N",
7608bab661aSEmmanuel Vadot			  "ALS_PROX_INT_N",
7618bab661aSEmmanuel Vadot			  "NC", /* GPIO_90 */
7628bab661aSEmmanuel Vadot			  "NC",
7638bab661aSEmmanuel Vadot			  "TRAY_DET",
7648bab661aSEmmanuel Vadot			  "UDON_SWITCH_SEL",
7658bab661aSEmmanuel Vadot			  "PCIE0_RESET_N",
7668bab661aSEmmanuel Vadot			  "PCIE0_CLK_REQ_N",
7678bab661aSEmmanuel Vadot			  "PCIE0_WAKE_N",
7688bab661aSEmmanuel Vadot			  "CAM_SOF",
7698bab661aSEmmanuel Vadot			  "RF_ID_EXTENSION_2",
7708bab661aSEmmanuel Vadot			  "RGBC_IR_INT",
7718bab661aSEmmanuel Vadot			  "CAM_MCLK0", /* GPIO_100 */
7728bab661aSEmmanuel Vadot			  "CAM_MCLK1",
7738bab661aSEmmanuel Vadot			  "CAM_MCLK2",
7748bab661aSEmmanuel Vadot			  "CAM_MCLK3",
7758bab661aSEmmanuel Vadot			  "NC",
7768bab661aSEmmanuel Vadot			  "NC",
7778bab661aSEmmanuel Vadot			  "CAM2_RESET_N",
7788bab661aSEmmanuel Vadot			  "CCI_I2C0_SDA",
7798bab661aSEmmanuel Vadot			  "CCI_I2C0_SCL",
7808bab661aSEmmanuel Vadot			  "CCI_I2C1_SDA",
7818bab661aSEmmanuel Vadot			  "CCI_I2C1_SCL", /* GPIO_110 */
7828bab661aSEmmanuel Vadot			  "CCI_I2C2_SDA",
7838bab661aSEmmanuel Vadot			  "CCI_I2C2_SCL",
7848bab661aSEmmanuel Vadot			  "CCI_I2C3_SDA",
7858bab661aSEmmanuel Vadot			  "CCI_I2C3_SCL",
7868bab661aSEmmanuel Vadot			  "NC",
7878bab661aSEmmanuel Vadot			  "PM8008_1_IRQ",
7888bab661aSEmmanuel Vadot			  "CAM3_RESET_N",
7898bab661aSEmmanuel Vadot			  "IMU1_INT",
7908bab661aSEmmanuel Vadot			  "EXT_VD0_XVS",
7918bab661aSEmmanuel Vadot			  "NC", /* GPIO_120 */
7928bab661aSEmmanuel Vadot			  "NC",
7938bab661aSEmmanuel Vadot			  "NC",
7948bab661aSEmmanuel Vadot			  "NC",
7958bab661aSEmmanuel Vadot			  "NC",
7968bab661aSEmmanuel Vadot			  "HAP_I2S_CLK",
7978bab661aSEmmanuel Vadot			  "HAP_I2S_DOUT",
7988bab661aSEmmanuel Vadot			  "HAP_TRG1",
7998bab661aSEmmanuel Vadot			  "HAP_I2S_SYNC",
8008bab661aSEmmanuel Vadot			  "HST_BT_WLAN_SLIMBUS_CLK",
8018bab661aSEmmanuel Vadot			  "HST_BT_WLAN_SLIMBUS_DAT0", /* GPIO_130 */
8028bab661aSEmmanuel Vadot			  "NC",
8038bab661aSEmmanuel Vadot			  "UIM2_DETECT_EN",
8048bab661aSEmmanuel Vadot			  "UIM2_DATA",
8058bab661aSEmmanuel Vadot			  "UIM2_CLK",
8068bab661aSEmmanuel Vadot			  "UIM2_RESET",
8078bab661aSEmmanuel Vadot			  "UIM2_PRESENT",
8088bab661aSEmmanuel Vadot			  "UIM1_DATA",
8098bab661aSEmmanuel Vadot			  "UIM1_CLK",
8108bab661aSEmmanuel Vadot			  "UIM1_RESET",
8118bab661aSEmmanuel Vadot			  "TRAY_DET", /* GPIO_140 */
8128bab661aSEmmanuel Vadot			  "SM_RFFE0_CLK",
8138bab661aSEmmanuel Vadot			  "SM_RFFE0_DATA",
8148bab661aSEmmanuel Vadot			  "SM_RFFE1_CLK",
8158bab661aSEmmanuel Vadot			  "SM_RFFE1_DATA",
8168bab661aSEmmanuel Vadot			  "SM_MSS_GRFC4",
8178bab661aSEmmanuel Vadot			  "SM_MSS_GRFC5",
8188bab661aSEmmanuel Vadot			  "SM_MSS_GRFC6",
8198bab661aSEmmanuel Vadot			  "SM_MSS_GRFC7",
8208bab661aSEmmanuel Vadot			  "SM_RFFE4_CLK",
8218bab661aSEmmanuel Vadot			  "SM_RFFE4_DATA", /* GPIO_150 */
8228bab661aSEmmanuel Vadot			  "WLAN_COEX_UART1_RX",
8238bab661aSEmmanuel Vadot			  "WLAN_COEX_UART1_TX",
8248bab661aSEmmanuel Vadot			  "HST_SW_CTRL",
8258bab661aSEmmanuel Vadot			  "DISP_VDDR_EN",
8268bab661aSEmmanuel Vadot			  "NC",
8278bab661aSEmmanuel Vadot			  "NC",
8288bab661aSEmmanuel Vadot			  "PA_INDICATOR_OR",
8298bab661aSEmmanuel Vadot			  "NC",
8308bab661aSEmmanuel Vadot			  "QLINK0_REQ",
8318bab661aSEmmanuel Vadot			  "QLINK0_EN", /* GPIO_160 */
8328bab661aSEmmanuel Vadot			  "QLINK0_WMSS_RESET_N",
8338bab661aSEmmanuel Vadot			  "NC",
8348bab661aSEmmanuel Vadot			  "NC",
8358bab661aSEmmanuel Vadot			  "NC",
8368bab661aSEmmanuel Vadot			  "PM8008_2_IRQ",
8378bab661aSEmmanuel Vadot			  "TELEC_PWR_EN",
8388bab661aSEmmanuel Vadot			  "PM8008_2_RESET_N",
8398bab661aSEmmanuel Vadot			  "WCD_SWR_TX_CLK",
8408bab661aSEmmanuel Vadot			  "WCD_SWR_TX_DATA0",
8418bab661aSEmmanuel Vadot			  "WCD_SWR_TX_DATA1", /* GPIO_170 */
8428bab661aSEmmanuel Vadot			  "WCD_SWR_RX_CLK",
8438bab661aSEmmanuel Vadot			  "WCD_SWR_RX_DATA0",
8448bab661aSEmmanuel Vadot			  "WCD_SWR_RX_DATA1",
8458bab661aSEmmanuel Vadot			  "SM_DMIC1_CLK",
8468bab661aSEmmanuel Vadot			  "SM_DMIC1_DATA",
8478bab661aSEmmanuel Vadot			  "SM_DMIC2_CLK",
8488bab661aSEmmanuel Vadot			  "SM_DMIC2_DATA",
8498bab661aSEmmanuel Vadot			  "SPK_AMP_I2S_CLK",
8508bab661aSEmmanuel Vadot			  "SPK_AMP_I2S_WS",
8518bab661aSEmmanuel Vadot			  "SPK_AMP_I2S_ASP_DIN", /* GPIO_180 */
8528bab661aSEmmanuel Vadot			  "SPK_AMP_I2S_ASP_DOUT",
8538bab661aSEmmanuel Vadot			  "WCD_SWR_TX_DATA2",
8548bab661aSEmmanuel Vadot			  "NC",
8558bab661aSEmmanuel Vadot			  "NC",
8568bab661aSEmmanuel Vadot			  "NC",
8578bab661aSEmmanuel Vadot			  "NC",
8588bab661aSEmmanuel Vadot			  "IMU_SPI_MISO",
8598bab661aSEmmanuel Vadot			  "IMU_SPI_MOSI",
8608bab661aSEmmanuel Vadot			  "IMU_SPI_CLK",
8618bab661aSEmmanuel Vadot			  "IMU_SPI_CS_N", /* GPIO_190 */
8628bab661aSEmmanuel Vadot			  "MAG_I2C_SDA",
8638bab661aSEmmanuel Vadot			  "MAG_I2C_SCL",
8648bab661aSEmmanuel Vadot			  "SENSOR_I2C_SDA",
8658bab661aSEmmanuel Vadot			  "SENSOR_I2C_SCL",
8668bab661aSEmmanuel Vadot			  "NC",
8678bab661aSEmmanuel Vadot			  "NC",
8688bab661aSEmmanuel Vadot			  "NC",
8698bab661aSEmmanuel Vadot			  "NC",
8708bab661aSEmmanuel Vadot			  "HST_BLE_UART_TX",
8718bab661aSEmmanuel Vadot			  "HST_BLE_UART_RX", /* GPIO_200 */
8728bab661aSEmmanuel Vadot			  "HST_WLAN_UART_TX",
8738bab661aSEmmanuel Vadot			  "HST_WLAN_UART_RX";
874e67e8565SEmmanuel Vadot
8757ef62cebSEmmanuel Vadot	ts_int_default: ts-int-default-state {
8767ef62cebSEmmanuel Vadot		pins = "gpio23";
877e67e8565SEmmanuel Vadot		function = "gpio";
878e67e8565SEmmanuel Vadot		drive-strength = <2>;
879e67e8565SEmmanuel Vadot		bias-disable;
880e67e8565SEmmanuel Vadot	};
8818bab661aSEmmanuel Vadot
8828bab661aSEmmanuel Vadot	sdc2_card_det_active: sd-card-det-active-state {
8838bab661aSEmmanuel Vadot		pins = "gpio92";
8848bab661aSEmmanuel Vadot		function = "gpio";
8858bab661aSEmmanuel Vadot		drive-strength = <2>;
8868bab661aSEmmanuel Vadot		bias-pull-up;
8878bab661aSEmmanuel Vadot	};
8888bab661aSEmmanuel Vadot
8898bab661aSEmmanuel Vadot	sdc2_card_det_sleep: sd-card-det-sleep-state {
8908bab661aSEmmanuel Vadot		pins = "gpio92";
8918bab661aSEmmanuel Vadot		function = "gpio";
8928bab661aSEmmanuel Vadot		drive-strength = <2>;
8938bab661aSEmmanuel Vadot		bias-disable;
8948bab661aSEmmanuel Vadot	};
895e67e8565SEmmanuel Vadot};
896e67e8565SEmmanuel Vadot
897e67e8565SEmmanuel Vadot/* BIG WARNING! DO NOT TOUCH UFS, YOUR DEVICE WILL DIE! */
898e67e8565SEmmanuel Vadot&ufs_mem_hc { status = "disabled"; };
899e67e8565SEmmanuel Vadot&ufs_mem_phy { status = "disabled"; };
900e67e8565SEmmanuel Vadot
901e67e8565SEmmanuel Vadot&usb_1 {
902e67e8565SEmmanuel Vadot	status = "okay";
903e67e8565SEmmanuel Vadot};
904e67e8565SEmmanuel Vadot
905e67e8565SEmmanuel Vadot&usb_1_dwc3 {
906e67e8565SEmmanuel Vadot	dr_mode = "peripheral";
907e67e8565SEmmanuel Vadot};
908e67e8565SEmmanuel Vadot
909e67e8565SEmmanuel Vadot&usb_1_hsphy {
910e67e8565SEmmanuel Vadot	status = "okay";
9118bab661aSEmmanuel Vadot
9128bab661aSEmmanuel Vadot	vdda-pll-supply = <&pm8350_l5>;
9138bab661aSEmmanuel Vadot	vdda18-supply = <&pm8350c_l1>;
9148bab661aSEmmanuel Vadot	vdda33-supply = <&pm8350_l2>;
915e67e8565SEmmanuel Vadot};
916e67e8565SEmmanuel Vadot
917e67e8565SEmmanuel Vadot&usb_1_qmpphy {
918e67e8565SEmmanuel Vadot	status = "okay";
9198bab661aSEmmanuel Vadot
9208bab661aSEmmanuel Vadot	vdda-phy-supply = <&pm8350_l6>;
9218bab661aSEmmanuel Vadot	vdda-pll-supply = <&pm8350_l1>;
922e67e8565SEmmanuel Vadot};
923