xref: /linux/arch/arm64/boot/dts/qcom/sdm850-lenovo-yoga-c630.dts (revision 11d0e4f281565ef757479764ce7fd8d35eeb01b0)
144acee20SBjorn Andersson// SPDX-License-Identifier: BSD-3-Clause
244acee20SBjorn Andersson/*
344acee20SBjorn Andersson * Lenovo Yoga C630
444acee20SBjorn Andersson *
544acee20SBjorn Andersson * Copyright (c) 2019, Linaro Ltd.
644acee20SBjorn Andersson */
744acee20SBjorn Andersson
844acee20SBjorn Andersson/dts-v1/;
944acee20SBjorn Andersson
1045021d35SSrinivas Kandagatla#include <dt-bindings/gpio/gpio.h>
1171b83b74SBjorn Andersson#include <dt-bindings/input/gpio-keys.h>
1271b83b74SBjorn Andersson#include <dt-bindings/input/input.h>
1344acee20SBjorn Andersson#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
1445021d35SSrinivas Kandagatla#include <dt-bindings/sound/qcom,q6afe.h>
1545021d35SSrinivas Kandagatla#include <dt-bindings/sound/qcom,q6asm.h>
1644acee20SBjorn Andersson#include "sdm845.dtsi"
1744acee20SBjorn Andersson#include "pm8998.dtsi"
1844acee20SBjorn Andersson
1944acee20SBjorn Andersson/ {
2044acee20SBjorn Andersson	model = "Lenovo Yoga C630";
2144acee20SBjorn Andersson	compatible = "lenovo,yoga-c630", "qcom,sdm845";
2244acee20SBjorn Andersson
2344acee20SBjorn Andersson	aliases {
2444acee20SBjorn Andersson		hsuart0 = &uart6;
2544acee20SBjorn Andersson	};
2671b83b74SBjorn Andersson
2771b83b74SBjorn Andersson	gpio-keys {
2871b83b74SBjorn Andersson		compatible = "gpio-keys";
2971b83b74SBjorn Andersson
3071b83b74SBjorn Andersson		pinctrl-names = "default";
3171b83b74SBjorn Andersson		pinctrl-0 = <&lid_pin_active>, <&mode_pin_active>;
3271b83b74SBjorn Andersson
3371b83b74SBjorn Andersson		lid {
3471b83b74SBjorn Andersson			gpios = <&tlmm 124 GPIO_ACTIVE_HIGH>;
3571b83b74SBjorn Andersson			linux,input-type = <EV_SW>;
3671b83b74SBjorn Andersson			linux,code = <SW_LID>;
3771b83b74SBjorn Andersson			wakeup-source;
3871b83b74SBjorn Andersson			wakeup-event-action = <EV_ACT_DEASSERTED>;
3971b83b74SBjorn Andersson		};
4071b83b74SBjorn Andersson
4171b83b74SBjorn Andersson		mode {
4271b83b74SBjorn Andersson			gpios = <&tlmm 95 GPIO_ACTIVE_HIGH>;
4371b83b74SBjorn Andersson			linux,input-type = <EV_SW>;
4471b83b74SBjorn Andersson			linux,code = <SW_TABLET_MODE>;
4571b83b74SBjorn Andersson		};
4671b83b74SBjorn Andersson	};
4744acee20SBjorn Andersson};
4844acee20SBjorn Andersson
493cd82e95SBjorn Andersson&adsp_pas {
503cd82e95SBjorn Andersson	firmware-name = "qcom/LENOVO/81JL/qcadsp850.mbn";
513cd82e95SBjorn Andersson	status = "okay";
523cd82e95SBjorn Andersson};
533cd82e95SBjorn Andersson
5444acee20SBjorn Andersson&apps_rsc {
5544acee20SBjorn Andersson	pm8998-rpmh-regulators {
5644acee20SBjorn Andersson		compatible = "qcom,pm8998-rpmh-regulators";
5744acee20SBjorn Andersson		qcom,pmic-id = "a";
5844acee20SBjorn Andersson
5944acee20SBjorn Andersson		vdd-l2-l8-l17-supply = <&vreg_s3a_1p35>;
6044acee20SBjorn Andersson		vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p04>;
6144acee20SBjorn Andersson
6244acee20SBjorn Andersson		vreg_s2a_1p125: smps2 {
6344acee20SBjorn Andersson		};
6444acee20SBjorn Andersson
6544acee20SBjorn Andersson		vreg_s3a_1p35: smps3 {
6644acee20SBjorn Andersson			regulator-min-microvolt = <1352000>;
6744acee20SBjorn Andersson			regulator-max-microvolt = <1352000>;
6844acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
6944acee20SBjorn Andersson		};
7044acee20SBjorn Andersson
7144acee20SBjorn Andersson		vreg_s4a_1p8: smps4 {
7244acee20SBjorn Andersson			regulator-min-microvolt = <1800000>;
7344acee20SBjorn Andersson			regulator-max-microvolt = <1800000>;
7444acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
7544acee20SBjorn Andersson		};
7644acee20SBjorn Andersson
7744acee20SBjorn Andersson		vreg_s5a_2p04: smps5 {
7844acee20SBjorn Andersson			regulator-min-microvolt = <2040000>;
7944acee20SBjorn Andersson			regulator-max-microvolt = <2040000>;
8044acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
8144acee20SBjorn Andersson		};
8244acee20SBjorn Andersson
8344acee20SBjorn Andersson		vreg_s7a_1p025: smps7 {
8444acee20SBjorn Andersson		};
8544acee20SBjorn Andersson
8644acee20SBjorn Andersson		vdd_qusb_hs0:
8744acee20SBjorn Andersson		vdda_hp_pcie_core:
8844acee20SBjorn Andersson		vdda_mipi_csi0_0p9:
8944acee20SBjorn Andersson		vdda_mipi_csi1_0p9:
9044acee20SBjorn Andersson		vdda_mipi_csi2_0p9:
9144acee20SBjorn Andersson		vdda_mipi_dsi0_pll:
9244acee20SBjorn Andersson		vdda_mipi_dsi1_pll:
9344acee20SBjorn Andersson		vdda_qlink_lv:
9444acee20SBjorn Andersson		vdda_qlink_lv_ck:
9544acee20SBjorn Andersson		vdda_qrefs_0p875:
9644acee20SBjorn Andersson		vdda_pcie_core:
9744acee20SBjorn Andersson		vdda_pll_cc_ebi01:
9844acee20SBjorn Andersson		vdda_pll_cc_ebi23:
9944acee20SBjorn Andersson		vdda_sp_sensor:
10044acee20SBjorn Andersson		vdda_ufs1_core:
10144acee20SBjorn Andersson		vdda_ufs2_core:
10244acee20SBjorn Andersson		vdda_usb1_ss_core:
10344acee20SBjorn Andersson		vdda_usb2_ss_core:
10444acee20SBjorn Andersson		vreg_l1a_0p875: ldo1 {
10544acee20SBjorn Andersson			regulator-min-microvolt = <880000>;
10644acee20SBjorn Andersson			regulator-max-microvolt = <880000>;
10744acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
10844acee20SBjorn Andersson		};
10944acee20SBjorn Andersson
11044acee20SBjorn Andersson		vddpx_10:
11144acee20SBjorn Andersson		vreg_l2a_1p2: ldo2 {
11244acee20SBjorn Andersson			regulator-min-microvolt = <1200000>;
11344acee20SBjorn Andersson			regulator-max-microvolt = <1200000>;
11444acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
11544acee20SBjorn Andersson			regulator-always-on;
11644acee20SBjorn Andersson		};
11744acee20SBjorn Andersson
11844acee20SBjorn Andersson		vreg_l3a_1p0: ldo3 {
11944acee20SBjorn Andersson		};
12044acee20SBjorn Andersson
12144acee20SBjorn Andersson		vdd_wcss_cx:
12244acee20SBjorn Andersson		vdd_wcss_mx:
12344acee20SBjorn Andersson		vdda_wcss_pll:
12444acee20SBjorn Andersson		vreg_l5a_0p8: ldo5 {
12544acee20SBjorn Andersson			regulator-min-microvolt = <800000>;
12644acee20SBjorn Andersson			regulator-max-microvolt = <800000>;
12744acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
12844acee20SBjorn Andersson		};
12944acee20SBjorn Andersson
13044acee20SBjorn Andersson		vddpx_13:
13144acee20SBjorn Andersson		vreg_l6a_1p8: ldo6 {
13244acee20SBjorn Andersson			regulator-min-microvolt = <1800000>;
13344acee20SBjorn Andersson			regulator-max-microvolt = <1800000>;
13444acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
13544acee20SBjorn Andersson		};
13644acee20SBjorn Andersson
13744acee20SBjorn Andersson		vreg_l7a_1p8: ldo7 {
13844acee20SBjorn Andersson			regulator-min-microvolt = <1800000>;
13944acee20SBjorn Andersson			regulator-max-microvolt = <1800000>;
14044acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
14144acee20SBjorn Andersson		};
14244acee20SBjorn Andersson
14344acee20SBjorn Andersson		vreg_l8a_1p2: ldo8 {
14444acee20SBjorn Andersson		};
14544acee20SBjorn Andersson
14644acee20SBjorn Andersson		vreg_l9a_1p8: ldo9 {
14744acee20SBjorn Andersson		};
14844acee20SBjorn Andersson
14944acee20SBjorn Andersson		vreg_l10a_1p8: ldo10 {
15044acee20SBjorn Andersson		};
15144acee20SBjorn Andersson
15244acee20SBjorn Andersson		vreg_l11a_1p0: ldo11 {
15344acee20SBjorn Andersson		};
15444acee20SBjorn Andersson
15544acee20SBjorn Andersson		vdd_qfprom:
15644acee20SBjorn Andersson		vdd_qfprom_sp:
15744acee20SBjorn Andersson		vdda_apc1_cs_1p8:
15844acee20SBjorn Andersson		vdda_gfx_cs_1p8:
15944acee20SBjorn Andersson		vdda_qrefs_1p8:
16044acee20SBjorn Andersson		vdda_qusb_hs0_1p8:
16144acee20SBjorn Andersson		vddpx_11:
16244acee20SBjorn Andersson		vreg_l12a_1p8: ldo12 {
16344acee20SBjorn Andersson			regulator-min-microvolt = <1800000>;
16444acee20SBjorn Andersson			regulator-max-microvolt = <1800000>;
16544acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
16644acee20SBjorn Andersson		};
16744acee20SBjorn Andersson
16844acee20SBjorn Andersson		vddpx_2:
16944acee20SBjorn Andersson		vreg_l13a_2p95: ldo13 {
17044acee20SBjorn Andersson		};
17144acee20SBjorn Andersson
17244acee20SBjorn Andersson		vreg_l14a_1p88: ldo14 {
17344acee20SBjorn Andersson			regulator-min-microvolt = <1880000>;
17444acee20SBjorn Andersson			regulator-max-microvolt = <1880000>;
17544acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
17644acee20SBjorn Andersson			regulator-always-on;
17744acee20SBjorn Andersson		};
17844acee20SBjorn Andersson
17944acee20SBjorn Andersson		vreg_l15a_1p8: ldo15 {
18044acee20SBjorn Andersson		};
18144acee20SBjorn Andersson
18244acee20SBjorn Andersson		vreg_l16a_2p7: ldo16 {
18344acee20SBjorn Andersson		};
18444acee20SBjorn Andersson
18544acee20SBjorn Andersson		vreg_l17a_1p3: ldo17 {
18644acee20SBjorn Andersson			regulator-min-microvolt = <1304000>;
18744acee20SBjorn Andersson			regulator-max-microvolt = <1304000>;
18844acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
18944acee20SBjorn Andersson		};
19044acee20SBjorn Andersson
19144acee20SBjorn Andersson		vreg_l18a_2p7: ldo18 {
19244acee20SBjorn Andersson		};
19344acee20SBjorn Andersson
19444acee20SBjorn Andersson		vreg_l19a_3p0: ldo19 {
19544acee20SBjorn Andersson			regulator-min-microvolt = <3100000>;
19644acee20SBjorn Andersson			regulator-max-microvolt = <3108000>;
19744acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
19844acee20SBjorn Andersson		};
19944acee20SBjorn Andersson
20044acee20SBjorn Andersson		vreg_l20a_2p95: ldo20 {
20144acee20SBjorn Andersson			regulator-min-microvolt = <2960000>;
20244acee20SBjorn Andersson			regulator-max-microvolt = <2960000>;
20344acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
20444acee20SBjorn Andersson		};
20544acee20SBjorn Andersson
20644acee20SBjorn Andersson		vreg_l21a_2p95: ldo21 {
20744acee20SBjorn Andersson		};
20844acee20SBjorn Andersson
20944acee20SBjorn Andersson		vreg_l22a_2p85: ldo22 {
21044acee20SBjorn Andersson		};
21144acee20SBjorn Andersson
21244acee20SBjorn Andersson		vreg_l23a_3p3: ldo23 {
21344acee20SBjorn Andersson		};
21444acee20SBjorn Andersson
21544acee20SBjorn Andersson		vdda_qusb_hs0_3p1:
21644acee20SBjorn Andersson		vreg_l24a_3p075: ldo24 {
21744acee20SBjorn Andersson			regulator-min-microvolt = <3075000>;
21844acee20SBjorn Andersson			regulator-max-microvolt = <3083000>;
21944acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
22044acee20SBjorn Andersson		};
22144acee20SBjorn Andersson
22244acee20SBjorn Andersson		vreg_l25a_3p3: ldo25 {
22344acee20SBjorn Andersson			regulator-min-microvolt = <3104000>;
22444acee20SBjorn Andersson			regulator-max-microvolt = <3112000>;
22544acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
22644acee20SBjorn Andersson		};
22744acee20SBjorn Andersson
22844acee20SBjorn Andersson		vdda_hp_pcie_1p2:
22944acee20SBjorn Andersson		vdda_hv_ebi0:
23044acee20SBjorn Andersson		vdda_hv_ebi1:
23144acee20SBjorn Andersson		vdda_hv_ebi2:
23244acee20SBjorn Andersson		vdda_hv_ebi3:
23344acee20SBjorn Andersson		vdda_mipi_csi_1p25:
23444acee20SBjorn Andersson		vdda_mipi_dsi0_1p2:
23544acee20SBjorn Andersson		vdda_mipi_dsi1_1p2:
23644acee20SBjorn Andersson		vdda_pcie_1p2:
23744acee20SBjorn Andersson		vdda_ufs1_1p2:
23844acee20SBjorn Andersson		vdda_ufs2_1p2:
23944acee20SBjorn Andersson		vdda_usb1_ss_1p2:
24044acee20SBjorn Andersson		vdda_usb2_ss_1p2:
24144acee20SBjorn Andersson		vreg_l26a_1p2: ldo26 {
24244acee20SBjorn Andersson			regulator-min-microvolt = <1200000>;
24344acee20SBjorn Andersson			regulator-max-microvolt = <1208000>;
24444acee20SBjorn Andersson			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
24544acee20SBjorn Andersson		};
24644acee20SBjorn Andersson
24744acee20SBjorn Andersson		vreg_l28a_3p0: ldo28 {
24844acee20SBjorn Andersson		};
24944acee20SBjorn Andersson
25044acee20SBjorn Andersson		vreg_lvs1a_1p8: lvs1 {
25144acee20SBjorn Andersson		};
25244acee20SBjorn Andersson
25344acee20SBjorn Andersson		vreg_lvs2a_1p8: lvs2 {
25444acee20SBjorn Andersson		};
25544acee20SBjorn Andersson	};
25644acee20SBjorn Andersson};
25744acee20SBjorn Andersson
2583cd82e95SBjorn Andersson&cdsp_pas {
2593cd82e95SBjorn Andersson	firmware-name = "qcom/LENOVO/81JL/qccdsp850.mbn";
2603cd82e95SBjorn Andersson	status = "okay";
2613cd82e95SBjorn Andersson};
2623cd82e95SBjorn Andersson
26344acee20SBjorn Andersson&gcc {
26444acee20SBjorn Andersson	protected-clocks = <GCC_QSPI_CORE_CLK>,
26544acee20SBjorn Andersson			   <GCC_QSPI_CORE_CLK_SRC>,
26644acee20SBjorn Andersson			   <GCC_QSPI_CNOC_PERIPH_AHB_CLK>;
26744acee20SBjorn Andersson};
26844acee20SBjorn Andersson
269f489b13dSRob Clark&gpu {
270f489b13dSRob Clark	zap-shader {
271f489b13dSRob Clark		memory-region = <&gpu_mem>;
272f489b13dSRob Clark		firmware-name = "qcom/LENOVO/81JL/qcdxkmsuc850.mbn";
273f489b13dSRob Clark	};
274f489b13dSRob Clark};
275f489b13dSRob Clark
27644acee20SBjorn Andersson&i2c1 {
27744acee20SBjorn Andersson	status = "okay";
27844acee20SBjorn Andersson	clock-frequency = <400000>;
27944acee20SBjorn Andersson};
28044acee20SBjorn Andersson
28144acee20SBjorn Andersson&i2c3 {
28244acee20SBjorn Andersson	status = "okay";
28344acee20SBjorn Andersson	clock-frequency = <400000>;
28444acee20SBjorn Andersson
285*11d0e4f2SBjorn Andersson	tsel: hid@15 {
28644acee20SBjorn Andersson		compatible = "hid-over-i2c";
28744acee20SBjorn Andersson		reg = <0x15>;
28844acee20SBjorn Andersson		hid-descr-addr = <0x1>;
28944acee20SBjorn Andersson
290*11d0e4f2SBjorn Andersson		interrupts-extended = <&tlmm 37 IRQ_TYPE_LEVEL_HIGH>;
291*11d0e4f2SBjorn Andersson
292*11d0e4f2SBjorn Andersson		pinctrl-names = "default";
293*11d0e4f2SBjorn Andersson		pinctrl-0 = <&i2c3_hid_active>;
29444acee20SBjorn Andersson	};
29544acee20SBjorn Andersson
296*11d0e4f2SBjorn Andersson	tsc2: hid@2c {
29744acee20SBjorn Andersson		compatible = "hid-over-i2c";
29844acee20SBjorn Andersson		reg = <0x2c>;
29944acee20SBjorn Andersson		hid-descr-addr = <0x20>;
30044acee20SBjorn Andersson
301*11d0e4f2SBjorn Andersson		interrupts-extended = <&tlmm 37 IRQ_TYPE_LEVEL_HIGH>;
30244acee20SBjorn Andersson
30344acee20SBjorn Andersson		pinctrl-names = "default";
304*11d0e4f2SBjorn Andersson		pinctrl-0 = <&i2c3_hid_active>;
305*11d0e4f2SBjorn Andersson
306*11d0e4f2SBjorn Andersson		status = "disabled";
30744acee20SBjorn Andersson	};
30844acee20SBjorn Andersson};
30944acee20SBjorn Andersson
31044acee20SBjorn Andersson&i2c5 {
31144acee20SBjorn Andersson	status = "okay";
31244acee20SBjorn Andersson	clock-frequency = <400000>;
31344acee20SBjorn Andersson
314*11d0e4f2SBjorn Andersson	tsc1: hid@10 {
31544acee20SBjorn Andersson		compatible = "hid-over-i2c";
31644acee20SBjorn Andersson		reg = <0x10>;
31744acee20SBjorn Andersson		hid-descr-addr = <0x1>;
31844acee20SBjorn Andersson
319*11d0e4f2SBjorn Andersson		interrupts-extended = <&tlmm 125 IRQ_TYPE_LEVEL_LOW>;
32044acee20SBjorn Andersson
32144acee20SBjorn Andersson		pinctrl-names = "default";
322*11d0e4f2SBjorn Andersson		pinctrl-0 = <&i2c5_hid_active>;
32344acee20SBjorn Andersson	};
32444acee20SBjorn Andersson};
32544acee20SBjorn Andersson
32644acee20SBjorn Andersson&i2c11 {
32744acee20SBjorn Andersson	status = "okay";
32844acee20SBjorn Andersson	clock-frequency = <400000>;
32944acee20SBjorn Andersson
330*11d0e4f2SBjorn Andersson	ecsh: hid@5c {
33144acee20SBjorn Andersson		compatible = "hid-over-i2c";
33244acee20SBjorn Andersson		reg = <0x5c>;
33344acee20SBjorn Andersson		hid-descr-addr = <0x1>;
33444acee20SBjorn Andersson
33544acee20SBjorn Andersson		interrupts-extended = <&tlmm 92 IRQ_TYPE_LEVEL_LOW>;
33644acee20SBjorn Andersson
33744acee20SBjorn Andersson		pinctrl-names = "default";
338*11d0e4f2SBjorn Andersson		pinctrl-0 = <&i2c11_hid_active>;
33944acee20SBjorn Andersson	};
34044acee20SBjorn Andersson};
34144acee20SBjorn Andersson
3423cd82e95SBjorn Andersson&mss_pil {
3433cd82e95SBjorn Andersson	firmware-name = "qcom/LENOVO/81JL/qcdsp1v2850.mbn", "qcom/LENOVO/81JL/qcdsp2850.mbn";
3443cd82e95SBjorn Andersson};
3453cd82e95SBjorn Andersson
34644acee20SBjorn Andersson&qup_i2c12_default {
34744acee20SBjorn Andersson	drive-strength = <2>;
34844acee20SBjorn Andersson	bias-disable;
34944acee20SBjorn Andersson};
35044acee20SBjorn Andersson
35144acee20SBjorn Andersson&qup_uart6_default {
35244acee20SBjorn Andersson	pinmux {
35344acee20SBjorn Andersson		 pins = "gpio45", "gpio46", "gpio47", "gpio48";
35444acee20SBjorn Andersson		 function = "qup6";
35544acee20SBjorn Andersson	};
35644acee20SBjorn Andersson
35744acee20SBjorn Andersson	cts {
35844acee20SBjorn Andersson		pins = "gpio45";
35944acee20SBjorn Andersson		bias-pull-down;
36044acee20SBjorn Andersson	};
36144acee20SBjorn Andersson
36244acee20SBjorn Andersson	rts-tx {
36344acee20SBjorn Andersson		pins = "gpio46", "gpio47";
36444acee20SBjorn Andersson		drive-strength = <2>;
36544acee20SBjorn Andersson		bias-disable;
36644acee20SBjorn Andersson	};
36744acee20SBjorn Andersson
36844acee20SBjorn Andersson	rx {
36944acee20SBjorn Andersson		pins = "gpio48";
37044acee20SBjorn Andersson		bias-pull-up;
37144acee20SBjorn Andersson	};
37244acee20SBjorn Andersson};
37344acee20SBjorn Andersson
37444acee20SBjorn Andersson&qupv3_id_0 {
37544acee20SBjorn Andersson	status = "okay";
37644acee20SBjorn Andersson};
37744acee20SBjorn Andersson
37844acee20SBjorn Andersson&qupv3_id_1 {
37944acee20SBjorn Andersson	status = "okay";
38044acee20SBjorn Andersson};
38144acee20SBjorn Andersson
38245021d35SSrinivas Kandagatla&q6asmdai {
38345021d35SSrinivas Kandagatla	dai@0 {
38445021d35SSrinivas Kandagatla		reg = <0>;
38545021d35SSrinivas Kandagatla	};
38645021d35SSrinivas Kandagatla
38745021d35SSrinivas Kandagatla	dai@1 {
38845021d35SSrinivas Kandagatla		reg = <1>;
38945021d35SSrinivas Kandagatla	};
39045021d35SSrinivas Kandagatla};
39145021d35SSrinivas Kandagatla
39245021d35SSrinivas Kandagatla&sound {
39345021d35SSrinivas Kandagatla	compatible = "qcom,db845c-sndcard";
39445021d35SSrinivas Kandagatla	model = "Lenovo-YOGA-C630-13Q50";
39545021d35SSrinivas Kandagatla
39645021d35SSrinivas Kandagatla	audio-routing =
39745021d35SSrinivas Kandagatla		"RX_BIAS", "MCLK",
39845021d35SSrinivas Kandagatla		"AMIC2", "MIC BIAS2",
39945021d35SSrinivas Kandagatla		"SpkrLeft IN", "SPK1 OUT",
40045021d35SSrinivas Kandagatla		"SpkrRight IN", "SPK2 OUT",
40145021d35SSrinivas Kandagatla		"MM_DL1",  "MultiMedia1 Playback",
40245021d35SSrinivas Kandagatla		"MultiMedia2 Capture", "MM_UL2";
40345021d35SSrinivas Kandagatla
40445021d35SSrinivas Kandagatla	mm1-dai-link {
40545021d35SSrinivas Kandagatla		link-name = "MultiMedia1";
40645021d35SSrinivas Kandagatla		cpu {
40745021d35SSrinivas Kandagatla			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA1>;
40845021d35SSrinivas Kandagatla		};
40945021d35SSrinivas Kandagatla	};
41045021d35SSrinivas Kandagatla
41145021d35SSrinivas Kandagatla	mm2-dai-link {
41245021d35SSrinivas Kandagatla		link-name = "MultiMedia2";
41345021d35SSrinivas Kandagatla		cpu {
41445021d35SSrinivas Kandagatla			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA2>;
41545021d35SSrinivas Kandagatla		};
41645021d35SSrinivas Kandagatla	};
41745021d35SSrinivas Kandagatla
41845021d35SSrinivas Kandagatla	slim-dai-link {
41945021d35SSrinivas Kandagatla		link-name = "SLIM Playback";
42045021d35SSrinivas Kandagatla		cpu {
42145021d35SSrinivas Kandagatla			sound-dai = <&q6afedai SLIMBUS_0_RX>;
42245021d35SSrinivas Kandagatla		};
42345021d35SSrinivas Kandagatla
42445021d35SSrinivas Kandagatla		platform {
42545021d35SSrinivas Kandagatla			sound-dai = <&q6routing>;
42645021d35SSrinivas Kandagatla		};
42745021d35SSrinivas Kandagatla
42845021d35SSrinivas Kandagatla		codec {
42945021d35SSrinivas Kandagatla			sound-dai =  <&left_spkr>, <&right_spkr>, <&swm 0>, <&wcd9340 0>;
43045021d35SSrinivas Kandagatla		};
43145021d35SSrinivas Kandagatla	};
43245021d35SSrinivas Kandagatla
43345021d35SSrinivas Kandagatla	slimcap-dai-link {
43445021d35SSrinivas Kandagatla		link-name = "SLIM Capture";
43545021d35SSrinivas Kandagatla		cpu {
43645021d35SSrinivas Kandagatla			sound-dai = <&q6afedai SLIMBUS_0_TX>;
43745021d35SSrinivas Kandagatla		};
43845021d35SSrinivas Kandagatla
43945021d35SSrinivas Kandagatla		platform {
44045021d35SSrinivas Kandagatla			sound-dai = <&q6routing>;
44145021d35SSrinivas Kandagatla		};
44245021d35SSrinivas Kandagatla
44345021d35SSrinivas Kandagatla		codec {
44445021d35SSrinivas Kandagatla			sound-dai = <&wcd9340 1>;
44545021d35SSrinivas Kandagatla		};
44645021d35SSrinivas Kandagatla	};
44745021d35SSrinivas Kandagatla};
44845021d35SSrinivas Kandagatla
44944acee20SBjorn Andersson&tlmm {
45044acee20SBjorn Andersson	gpio-reserved-ranges = <0 4>, <81 4>;
45144acee20SBjorn Andersson
452*11d0e4f2SBjorn Andersson	i2c3_hid_active: i2c2-hid-active {
45344acee20SBjorn Andersson		pins = <37>;
45444acee20SBjorn Andersson		function = "gpio";
45544acee20SBjorn Andersson
45644acee20SBjorn Andersson		input-enable;
45744acee20SBjorn Andersson		bias-pull-up;
45844acee20SBjorn Andersson		drive-strength = <2>;
45944acee20SBjorn Andersson	};
46044acee20SBjorn Andersson
461*11d0e4f2SBjorn Andersson	i2c5_hid_active: i2c5-hid-active {
46244acee20SBjorn Andersson		pins = <125>;
46344acee20SBjorn Andersson		function = "gpio";
46444acee20SBjorn Andersson
46544acee20SBjorn Andersson		input-enable;
46644acee20SBjorn Andersson		bias-pull-up;
46744acee20SBjorn Andersson		drive-strength = <2>;
46844acee20SBjorn Andersson	};
46944acee20SBjorn Andersson
470*11d0e4f2SBjorn Andersson	i2c11_hid_active: i2c11-hid-active {
47144acee20SBjorn Andersson		pins = <92>;
47244acee20SBjorn Andersson		function = "gpio";
47344acee20SBjorn Andersson
47444acee20SBjorn Andersson		input-enable;
47544acee20SBjorn Andersson		bias-pull-up;
47644acee20SBjorn Andersson		drive-strength = <2>;
47744acee20SBjorn Andersson	};
47845021d35SSrinivas Kandagatla
47945021d35SSrinivas Kandagatla	wcd_intr_default: wcd_intr_default {
48045021d35SSrinivas Kandagatla		pins = <54>;
48145021d35SSrinivas Kandagatla		function = "gpio";
48245021d35SSrinivas Kandagatla
48345021d35SSrinivas Kandagatla		input-enable;
48445021d35SSrinivas Kandagatla		bias-pull-down;
48545021d35SSrinivas Kandagatla		drive-strength = <2>;
48645021d35SSrinivas Kandagatla	};
48771b83b74SBjorn Andersson
48871b83b74SBjorn Andersson	lid_pin_active: lid-pin {
48971b83b74SBjorn Andersson		pins = "gpio124";
49071b83b74SBjorn Andersson		function = "gpio";
49171b83b74SBjorn Andersson
49271b83b74SBjorn Andersson		input-enable;
49371b83b74SBjorn Andersson		bias-disable;
49471b83b74SBjorn Andersson	};
49571b83b74SBjorn Andersson
49671b83b74SBjorn Andersson	mode_pin_active: mode-pin {
49771b83b74SBjorn Andersson		pins = "gpio95";
49871b83b74SBjorn Andersson		function = "gpio";
49971b83b74SBjorn Andersson
50071b83b74SBjorn Andersson		input-enable;
50171b83b74SBjorn Andersson		bias-disable;
50271b83b74SBjorn Andersson	};
50344acee20SBjorn Andersson};
50444acee20SBjorn Andersson
50544acee20SBjorn Andersson&uart6 {
50644acee20SBjorn Andersson	status = "okay";
50744acee20SBjorn Andersson
50844acee20SBjorn Andersson	bluetooth {
50944acee20SBjorn Andersson		compatible = "qcom,wcn3990-bt";
51044acee20SBjorn Andersson
51144acee20SBjorn Andersson		vddio-supply = <&vreg_s4a_1p8>;
51244acee20SBjorn Andersson		vddxo-supply = <&vreg_l7a_1p8>;
51344acee20SBjorn Andersson		vddrf-supply = <&vreg_l17a_1p3>;
51444acee20SBjorn Andersson		vddch0-supply = <&vreg_l25a_3p3>;
51544acee20SBjorn Andersson		max-speed = <3200000>;
51644acee20SBjorn Andersson	};
51744acee20SBjorn Andersson};
51844acee20SBjorn Andersson
51944acee20SBjorn Andersson&ufs_mem_hc {
52044acee20SBjorn Andersson	status = "okay";
52144acee20SBjorn Andersson
5222536bedeSBjorn Andersson	reset-gpios = <&tlmm 150 GPIO_ACTIVE_LOW>;
5232536bedeSBjorn Andersson
52444acee20SBjorn Andersson	vcc-supply = <&vreg_l20a_2p95>;
52544acee20SBjorn Andersson	vcc-max-microamp = <600000>;
52644acee20SBjorn Andersson};
52744acee20SBjorn Andersson
52844acee20SBjorn Andersson&ufs_mem_phy {
52944acee20SBjorn Andersson	status = "okay";
53044acee20SBjorn Andersson
53144acee20SBjorn Andersson	vdda-phy-supply = <&vdda_ufs1_core>;
53244acee20SBjorn Andersson	vdda-pll-supply = <&vdda_ufs1_1p2>;
53344acee20SBjorn Andersson};
53444acee20SBjorn Andersson
53544acee20SBjorn Andersson&usb_1 {
53644acee20SBjorn Andersson	status = "okay";
53744acee20SBjorn Andersson};
53844acee20SBjorn Andersson
53944acee20SBjorn Andersson&usb_1_dwc3 {
54044acee20SBjorn Andersson	dr_mode = "host";
54144acee20SBjorn Andersson};
54244acee20SBjorn Andersson
54344acee20SBjorn Andersson&usb_1_hsphy {
54444acee20SBjorn Andersson	status = "okay";
54544acee20SBjorn Andersson
54644acee20SBjorn Andersson	vdd-supply = <&vdda_usb1_ss_core>;
54744acee20SBjorn Andersson	vdda-pll-supply = <&vdda_qusb_hs0_1p8>;
54844acee20SBjorn Andersson	vdda-phy-dpdm-supply = <&vdda_qusb_hs0_3p1>;
54944acee20SBjorn Andersson
55044acee20SBjorn Andersson	qcom,imp-res-offset-value = <8>;
55144acee20SBjorn Andersson	qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_21_6_MA>;
55244acee20SBjorn Andersson	qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_5_PERCENT>;
55344acee20SBjorn Andersson	qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>;
55444acee20SBjorn Andersson};
55544acee20SBjorn Andersson
55644acee20SBjorn Andersson&usb_1_qmpphy {
55744acee20SBjorn Andersson	status = "okay";
55844acee20SBjorn Andersson
55944acee20SBjorn Andersson	vdda-phy-supply = <&vdda_usb1_ss_1p2>;
56044acee20SBjorn Andersson	vdda-pll-supply = <&vdda_usb1_ss_core>;
56144acee20SBjorn Andersson};
56244acee20SBjorn Andersson
56344acee20SBjorn Andersson&usb_2 {
56444acee20SBjorn Andersson	status = "okay";
56544acee20SBjorn Andersson};
56644acee20SBjorn Andersson
56744acee20SBjorn Andersson&usb_2_dwc3 {
56844acee20SBjorn Andersson	dr_mode = "host";
56944acee20SBjorn Andersson};
57044acee20SBjorn Andersson
57144acee20SBjorn Andersson&usb_2_hsphy {
57244acee20SBjorn Andersson	status = "okay";
57344acee20SBjorn Andersson
57444acee20SBjorn Andersson	vdd-supply = <&vdda_usb2_ss_core>;
57544acee20SBjorn Andersson	vdda-pll-supply = <&vdda_qusb_hs0_1p8>;
57644acee20SBjorn Andersson	vdda-phy-dpdm-supply = <&vdda_qusb_hs0_3p1>;
57744acee20SBjorn Andersson
57844acee20SBjorn Andersson	qcom,imp-res-offset-value = <8>;
57944acee20SBjorn Andersson	qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_22_8_MA>;
58044acee20SBjorn Andersson};
58144acee20SBjorn Andersson
58244acee20SBjorn Andersson&usb_2_qmpphy {
58344acee20SBjorn Andersson	status = "okay";
58444acee20SBjorn Andersson
58544acee20SBjorn Andersson	vdda-phy-supply = <&vdda_usb2_ss_1p2>;
58644acee20SBjorn Andersson	vdda-pll-supply = <&vdda_usb2_ss_core>;
58744acee20SBjorn Andersson};
58845021d35SSrinivas Kandagatla
58945021d35SSrinivas Kandagatla&wcd9340{
59045021d35SSrinivas Kandagatla	pinctrl-0 = <&wcd_intr_default>;
59145021d35SSrinivas Kandagatla	pinctrl-names = "default";
59245021d35SSrinivas Kandagatla	clock-names = "extclk";
59345021d35SSrinivas Kandagatla	clocks = <&rpmhcc RPMH_LN_BB_CLK2>;
59445021d35SSrinivas Kandagatla	reset-gpios = <&tlmm 64 0>;
59545021d35SSrinivas Kandagatla	vdd-buck-supply = <&vreg_s4a_1p8>;
59645021d35SSrinivas Kandagatla	vdd-buck-sido-supply = <&vreg_s4a_1p8>;
59745021d35SSrinivas Kandagatla	vdd-tx-supply = <&vreg_s4a_1p8>;
59845021d35SSrinivas Kandagatla	vdd-rx-supply = <&vreg_s4a_1p8>;
59945021d35SSrinivas Kandagatla	vdd-io-supply = <&vreg_s4a_1p8>;
60045021d35SSrinivas Kandagatla
60145021d35SSrinivas Kandagatla	swm: swm@c85 {
60245021d35SSrinivas Kandagatla		left_spkr: wsa8810-left{
60345021d35SSrinivas Kandagatla			compatible = "sdw10217211000";
60445021d35SSrinivas Kandagatla			reg = <0 3>;
60545021d35SSrinivas Kandagatla			powerdown-gpios = <&wcdgpio 2 GPIO_ACTIVE_HIGH>;
60645021d35SSrinivas Kandagatla			#thermal-sensor-cells = <0>;
60745021d35SSrinivas Kandagatla			sound-name-prefix = "SpkrLeft";
60845021d35SSrinivas Kandagatla			#sound-dai-cells = <0>;
60945021d35SSrinivas Kandagatla		};
61045021d35SSrinivas Kandagatla
61145021d35SSrinivas Kandagatla		right_spkr: wsa8810-right{
61245021d35SSrinivas Kandagatla			compatible = "sdw10217211000";
61345021d35SSrinivas Kandagatla			powerdown-gpios = <&wcdgpio 3 GPIO_ACTIVE_HIGH>;
61445021d35SSrinivas Kandagatla			reg = <0 4>;
61545021d35SSrinivas Kandagatla			#thermal-sensor-cells = <0>;
61645021d35SSrinivas Kandagatla			sound-name-prefix = "SpkrRight";
61745021d35SSrinivas Kandagatla			#sound-dai-cells = <0>;
61845021d35SSrinivas Kandagatla		};
61945021d35SSrinivas Kandagatla	};
62045021d35SSrinivas Kandagatla};
6213fb298d0SBjorn Andersson
6223fb298d0SBjorn Andersson&wifi {
6233fb298d0SBjorn Andersson	status = "okay";
6243fb298d0SBjorn Andersson
6253fb298d0SBjorn Andersson	vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8>;
6263fb298d0SBjorn Andersson	vdd-1.8-xo-supply = <&vreg_l7a_1p8>;
6273fb298d0SBjorn Andersson	vdd-1.3-rfa-supply = <&vreg_l17a_1p3>;
6283fb298d0SBjorn Andersson	vdd-3.3-ch0-supply = <&vreg_l25a_3p3>;
6293fb298d0SBjorn Andersson
6303fb298d0SBjorn Andersson	qcom,snoc-host-cap-8bit-quirk;
6313fb298d0SBjorn Andersson};
632