18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: BSD-3-Clause
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * Lenovo Yoga C630
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci * Copyright (c) 2019, Linaro Ltd.
68c2ecf20Sopenharmony_ci */
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci/dts-v1/;
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ci#include <dt-bindings/gpio/gpio.h>
118c2ecf20Sopenharmony_ci#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
128c2ecf20Sopenharmony_ci#include <dt-bindings/sound/qcom,q6afe.h>
138c2ecf20Sopenharmony_ci#include <dt-bindings/sound/qcom,q6asm.h>
148c2ecf20Sopenharmony_ci#include "sdm845.dtsi"
158c2ecf20Sopenharmony_ci#include "pm8998.dtsi"
168c2ecf20Sopenharmony_ci
178c2ecf20Sopenharmony_ci/ {
188c2ecf20Sopenharmony_ci	model = "Lenovo Yoga C630";
198c2ecf20Sopenharmony_ci	compatible = "lenovo,yoga-c630", "qcom,sdm845";
208c2ecf20Sopenharmony_ci
218c2ecf20Sopenharmony_ci	aliases {
228c2ecf20Sopenharmony_ci		hsuart0 = &uart6;
238c2ecf20Sopenharmony_ci	};
248c2ecf20Sopenharmony_ci};
258c2ecf20Sopenharmony_ci
268c2ecf20Sopenharmony_ci&adsp_pas {
278c2ecf20Sopenharmony_ci	firmware-name = "qcom/LENOVO/81JL/qcadsp850.mbn";
288c2ecf20Sopenharmony_ci	status = "okay";
298c2ecf20Sopenharmony_ci};
308c2ecf20Sopenharmony_ci
318c2ecf20Sopenharmony_ci&apps_rsc {
328c2ecf20Sopenharmony_ci	pm8998-rpmh-regulators {
338c2ecf20Sopenharmony_ci		compatible = "qcom,pm8998-rpmh-regulators";
348c2ecf20Sopenharmony_ci		qcom,pmic-id = "a";
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ci		vdd-l2-l8-l17-supply = <&vreg_s3a_1p35>;
378c2ecf20Sopenharmony_ci		vdd-l7-l12-l14-l15-supply = <&vreg_s5a_2p04>;
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci		vreg_s2a_1p125: smps2 {
408c2ecf20Sopenharmony_ci		};
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ci		vreg_s3a_1p35: smps3 {
438c2ecf20Sopenharmony_ci			regulator-min-microvolt = <1352000>;
448c2ecf20Sopenharmony_ci			regulator-max-microvolt = <1352000>;
458c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
468c2ecf20Sopenharmony_ci		};
478c2ecf20Sopenharmony_ci
488c2ecf20Sopenharmony_ci		vreg_s4a_1p8: smps4 {
498c2ecf20Sopenharmony_ci			regulator-min-microvolt = <1800000>;
508c2ecf20Sopenharmony_ci			regulator-max-microvolt = <1800000>;
518c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
528c2ecf20Sopenharmony_ci		};
538c2ecf20Sopenharmony_ci
548c2ecf20Sopenharmony_ci		vreg_s5a_2p04: smps5 {
558c2ecf20Sopenharmony_ci			regulator-min-microvolt = <2040000>;
568c2ecf20Sopenharmony_ci			regulator-max-microvolt = <2040000>;
578c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
588c2ecf20Sopenharmony_ci		};
598c2ecf20Sopenharmony_ci
608c2ecf20Sopenharmony_ci		vreg_s7a_1p025: smps7 {
618c2ecf20Sopenharmony_ci		};
628c2ecf20Sopenharmony_ci
638c2ecf20Sopenharmony_ci		vdd_qusb_hs0:
648c2ecf20Sopenharmony_ci		vdda_hp_pcie_core:
658c2ecf20Sopenharmony_ci		vdda_mipi_csi0_0p9:
668c2ecf20Sopenharmony_ci		vdda_mipi_csi1_0p9:
678c2ecf20Sopenharmony_ci		vdda_mipi_csi2_0p9:
688c2ecf20Sopenharmony_ci		vdda_mipi_dsi0_pll:
698c2ecf20Sopenharmony_ci		vdda_mipi_dsi1_pll:
708c2ecf20Sopenharmony_ci		vdda_qlink_lv:
718c2ecf20Sopenharmony_ci		vdda_qlink_lv_ck:
728c2ecf20Sopenharmony_ci		vdda_qrefs_0p875:
738c2ecf20Sopenharmony_ci		vdda_pcie_core:
748c2ecf20Sopenharmony_ci		vdda_pll_cc_ebi01:
758c2ecf20Sopenharmony_ci		vdda_pll_cc_ebi23:
768c2ecf20Sopenharmony_ci		vdda_sp_sensor:
778c2ecf20Sopenharmony_ci		vdda_ufs1_core:
788c2ecf20Sopenharmony_ci		vdda_ufs2_core:
798c2ecf20Sopenharmony_ci		vdda_usb1_ss_core:
808c2ecf20Sopenharmony_ci		vdda_usb2_ss_core:
818c2ecf20Sopenharmony_ci		vreg_l1a_0p875: ldo1 {
828c2ecf20Sopenharmony_ci			regulator-min-microvolt = <880000>;
838c2ecf20Sopenharmony_ci			regulator-max-microvolt = <880000>;
848c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
858c2ecf20Sopenharmony_ci		};
868c2ecf20Sopenharmony_ci
878c2ecf20Sopenharmony_ci		vddpx_10:
888c2ecf20Sopenharmony_ci		vreg_l2a_1p2: ldo2 {
898c2ecf20Sopenharmony_ci			regulator-min-microvolt = <1200000>;
908c2ecf20Sopenharmony_ci			regulator-max-microvolt = <1200000>;
918c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
928c2ecf20Sopenharmony_ci			regulator-always-on;
938c2ecf20Sopenharmony_ci		};
948c2ecf20Sopenharmony_ci
958c2ecf20Sopenharmony_ci		vreg_l3a_1p0: ldo3 {
968c2ecf20Sopenharmony_ci		};
978c2ecf20Sopenharmony_ci
988c2ecf20Sopenharmony_ci		vdd_wcss_cx:
998c2ecf20Sopenharmony_ci		vdd_wcss_mx:
1008c2ecf20Sopenharmony_ci		vdda_wcss_pll:
1018c2ecf20Sopenharmony_ci		vreg_l5a_0p8: ldo5 {
1028c2ecf20Sopenharmony_ci			regulator-min-microvolt = <800000>;
1038c2ecf20Sopenharmony_ci			regulator-max-microvolt = <800000>;
1048c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1058c2ecf20Sopenharmony_ci		};
1068c2ecf20Sopenharmony_ci
1078c2ecf20Sopenharmony_ci		vddpx_13:
1088c2ecf20Sopenharmony_ci		vreg_l6a_1p8: ldo6 {
1098c2ecf20Sopenharmony_ci			regulator-min-microvolt = <1800000>;
1108c2ecf20Sopenharmony_ci			regulator-max-microvolt = <1800000>;
1118c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1128c2ecf20Sopenharmony_ci		};
1138c2ecf20Sopenharmony_ci
1148c2ecf20Sopenharmony_ci		vreg_l7a_1p8: ldo7 {
1158c2ecf20Sopenharmony_ci			regulator-min-microvolt = <1800000>;
1168c2ecf20Sopenharmony_ci			regulator-max-microvolt = <1800000>;
1178c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1188c2ecf20Sopenharmony_ci		};
1198c2ecf20Sopenharmony_ci
1208c2ecf20Sopenharmony_ci		vreg_l8a_1p2: ldo8 {
1218c2ecf20Sopenharmony_ci		};
1228c2ecf20Sopenharmony_ci
1238c2ecf20Sopenharmony_ci		vreg_l9a_1p8: ldo9 {
1248c2ecf20Sopenharmony_ci		};
1258c2ecf20Sopenharmony_ci
1268c2ecf20Sopenharmony_ci		vreg_l10a_1p8: ldo10 {
1278c2ecf20Sopenharmony_ci		};
1288c2ecf20Sopenharmony_ci
1298c2ecf20Sopenharmony_ci		vreg_l11a_1p0: ldo11 {
1308c2ecf20Sopenharmony_ci		};
1318c2ecf20Sopenharmony_ci
1328c2ecf20Sopenharmony_ci		vdd_qfprom:
1338c2ecf20Sopenharmony_ci		vdd_qfprom_sp:
1348c2ecf20Sopenharmony_ci		vdda_apc1_cs_1p8:
1358c2ecf20Sopenharmony_ci		vdda_gfx_cs_1p8:
1368c2ecf20Sopenharmony_ci		vdda_qrefs_1p8:
1378c2ecf20Sopenharmony_ci		vdda_qusb_hs0_1p8:
1388c2ecf20Sopenharmony_ci		vddpx_11:
1398c2ecf20Sopenharmony_ci		vreg_l12a_1p8: ldo12 {
1408c2ecf20Sopenharmony_ci			regulator-min-microvolt = <1800000>;
1418c2ecf20Sopenharmony_ci			regulator-max-microvolt = <1800000>;
1428c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1438c2ecf20Sopenharmony_ci		};
1448c2ecf20Sopenharmony_ci
1458c2ecf20Sopenharmony_ci		vddpx_2:
1468c2ecf20Sopenharmony_ci		vreg_l13a_2p95: ldo13 {
1478c2ecf20Sopenharmony_ci		};
1488c2ecf20Sopenharmony_ci
1498c2ecf20Sopenharmony_ci		vreg_l14a_1p88: ldo14 {
1508c2ecf20Sopenharmony_ci			regulator-min-microvolt = <1880000>;
1518c2ecf20Sopenharmony_ci			regulator-max-microvolt = <1880000>;
1528c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1538c2ecf20Sopenharmony_ci			regulator-always-on;
1548c2ecf20Sopenharmony_ci		};
1558c2ecf20Sopenharmony_ci
1568c2ecf20Sopenharmony_ci		vreg_l15a_1p8: ldo15 {
1578c2ecf20Sopenharmony_ci		};
1588c2ecf20Sopenharmony_ci
1598c2ecf20Sopenharmony_ci		vreg_l16a_2p7: ldo16 {
1608c2ecf20Sopenharmony_ci		};
1618c2ecf20Sopenharmony_ci
1628c2ecf20Sopenharmony_ci		vreg_l17a_1p3: ldo17 {
1638c2ecf20Sopenharmony_ci			regulator-min-microvolt = <1304000>;
1648c2ecf20Sopenharmony_ci			regulator-max-microvolt = <1304000>;
1658c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1668c2ecf20Sopenharmony_ci		};
1678c2ecf20Sopenharmony_ci
1688c2ecf20Sopenharmony_ci		vreg_l18a_2p7: ldo18 {
1698c2ecf20Sopenharmony_ci		};
1708c2ecf20Sopenharmony_ci
1718c2ecf20Sopenharmony_ci		vreg_l19a_3p0: ldo19 {
1728c2ecf20Sopenharmony_ci			regulator-min-microvolt = <3100000>;
1738c2ecf20Sopenharmony_ci			regulator-max-microvolt = <3108000>;
1748c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1758c2ecf20Sopenharmony_ci		};
1768c2ecf20Sopenharmony_ci
1778c2ecf20Sopenharmony_ci		vreg_l20a_2p95: ldo20 {
1788c2ecf20Sopenharmony_ci			regulator-min-microvolt = <2960000>;
1798c2ecf20Sopenharmony_ci			regulator-max-microvolt = <2960000>;
1808c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1818c2ecf20Sopenharmony_ci		};
1828c2ecf20Sopenharmony_ci
1838c2ecf20Sopenharmony_ci		vreg_l21a_2p95: ldo21 {
1848c2ecf20Sopenharmony_ci		};
1858c2ecf20Sopenharmony_ci
1868c2ecf20Sopenharmony_ci		vreg_l22a_2p85: ldo22 {
1878c2ecf20Sopenharmony_ci		};
1888c2ecf20Sopenharmony_ci
1898c2ecf20Sopenharmony_ci		vreg_l23a_3p3: ldo23 {
1908c2ecf20Sopenharmony_ci		};
1918c2ecf20Sopenharmony_ci
1928c2ecf20Sopenharmony_ci		vdda_qusb_hs0_3p1:
1938c2ecf20Sopenharmony_ci		vreg_l24a_3p075: ldo24 {
1948c2ecf20Sopenharmony_ci			regulator-min-microvolt = <3075000>;
1958c2ecf20Sopenharmony_ci			regulator-max-microvolt = <3083000>;
1968c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
1978c2ecf20Sopenharmony_ci		};
1988c2ecf20Sopenharmony_ci
1998c2ecf20Sopenharmony_ci		vreg_l25a_3p3: ldo25 {
2008c2ecf20Sopenharmony_ci			regulator-min-microvolt = <3104000>;
2018c2ecf20Sopenharmony_ci			regulator-max-microvolt = <3112000>;
2028c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2038c2ecf20Sopenharmony_ci		};
2048c2ecf20Sopenharmony_ci
2058c2ecf20Sopenharmony_ci		vdda_hp_pcie_1p2:
2068c2ecf20Sopenharmony_ci		vdda_hv_ebi0:
2078c2ecf20Sopenharmony_ci		vdda_hv_ebi1:
2088c2ecf20Sopenharmony_ci		vdda_hv_ebi2:
2098c2ecf20Sopenharmony_ci		vdda_hv_ebi3:
2108c2ecf20Sopenharmony_ci		vdda_mipi_csi_1p25:
2118c2ecf20Sopenharmony_ci		vdda_mipi_dsi0_1p2:
2128c2ecf20Sopenharmony_ci		vdda_mipi_dsi1_1p2:
2138c2ecf20Sopenharmony_ci		vdda_pcie_1p2:
2148c2ecf20Sopenharmony_ci		vdda_ufs1_1p2:
2158c2ecf20Sopenharmony_ci		vdda_ufs2_1p2:
2168c2ecf20Sopenharmony_ci		vdda_usb1_ss_1p2:
2178c2ecf20Sopenharmony_ci		vdda_usb2_ss_1p2:
2188c2ecf20Sopenharmony_ci		vreg_l26a_1p2: ldo26 {
2198c2ecf20Sopenharmony_ci			regulator-min-microvolt = <1200000>;
2208c2ecf20Sopenharmony_ci			regulator-max-microvolt = <1208000>;
2218c2ecf20Sopenharmony_ci			regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
2228c2ecf20Sopenharmony_ci		};
2238c2ecf20Sopenharmony_ci
2248c2ecf20Sopenharmony_ci		vreg_l28a_3p0: ldo28 {
2258c2ecf20Sopenharmony_ci		};
2268c2ecf20Sopenharmony_ci
2278c2ecf20Sopenharmony_ci		vreg_lvs1a_1p8: lvs1 {
2288c2ecf20Sopenharmony_ci		};
2298c2ecf20Sopenharmony_ci
2308c2ecf20Sopenharmony_ci		vreg_lvs2a_1p8: lvs2 {
2318c2ecf20Sopenharmony_ci		};
2328c2ecf20Sopenharmony_ci	};
2338c2ecf20Sopenharmony_ci};
2348c2ecf20Sopenharmony_ci
2358c2ecf20Sopenharmony_ci&apps_smmu {
2368c2ecf20Sopenharmony_ci	/* TODO: Figure out how to survive booting with this enabled */
2378c2ecf20Sopenharmony_ci	status = "disabled";
2388c2ecf20Sopenharmony_ci};
2398c2ecf20Sopenharmony_ci
2408c2ecf20Sopenharmony_ci&cdsp_pas {
2418c2ecf20Sopenharmony_ci	firmware-name = "qcom/LENOVO/81JL/qccdsp850.mbn";
2428c2ecf20Sopenharmony_ci	status = "okay";
2438c2ecf20Sopenharmony_ci};
2448c2ecf20Sopenharmony_ci
2458c2ecf20Sopenharmony_ci&gcc {
2468c2ecf20Sopenharmony_ci	protected-clocks = <GCC_QSPI_CORE_CLK>,
2478c2ecf20Sopenharmony_ci			   <GCC_QSPI_CORE_CLK_SRC>,
2488c2ecf20Sopenharmony_ci			   <GCC_QSPI_CNOC_PERIPH_AHB_CLK>,
2498c2ecf20Sopenharmony_ci			   <GCC_LPASS_Q6_AXI_CLK>,
2508c2ecf20Sopenharmony_ci			   <GCC_LPASS_SWAY_CLK>;
2518c2ecf20Sopenharmony_ci};
2528c2ecf20Sopenharmony_ci
2538c2ecf20Sopenharmony_ci&gpu {
2548c2ecf20Sopenharmony_ci	zap-shader {
2558c2ecf20Sopenharmony_ci		memory-region = <&gpu_mem>;
2568c2ecf20Sopenharmony_ci		firmware-name = "qcom/LENOVO/81JL/qcdxkmsuc850.mbn";
2578c2ecf20Sopenharmony_ci	};
2588c2ecf20Sopenharmony_ci};
2598c2ecf20Sopenharmony_ci
2608c2ecf20Sopenharmony_ci&i2c1 {
2618c2ecf20Sopenharmony_ci	status = "okay";
2628c2ecf20Sopenharmony_ci	clock-frequency = <400000>;
2638c2ecf20Sopenharmony_ci};
2648c2ecf20Sopenharmony_ci
2658c2ecf20Sopenharmony_ci&i2c3 {
2668c2ecf20Sopenharmony_ci	status = "okay";
2678c2ecf20Sopenharmony_ci	clock-frequency = <400000>;
2688c2ecf20Sopenharmony_ci	/* Overwrite pinctrl-0 from sdm845.dtsi */
2698c2ecf20Sopenharmony_ci	pinctrl-0 = <&qup_i2c3_default &i2c3_hid_active>;
2708c2ecf20Sopenharmony_ci
2718c2ecf20Sopenharmony_ci	tsel: hid@15 {
2728c2ecf20Sopenharmony_ci		compatible = "hid-over-i2c";
2738c2ecf20Sopenharmony_ci		reg = <0x15>;
2748c2ecf20Sopenharmony_ci		hid-descr-addr = <0x1>;
2758c2ecf20Sopenharmony_ci
2768c2ecf20Sopenharmony_ci		interrupts-extended = <&tlmm 37 IRQ_TYPE_LEVEL_HIGH>;
2778c2ecf20Sopenharmony_ci	};
2788c2ecf20Sopenharmony_ci
2798c2ecf20Sopenharmony_ci	tsc2: hid@2c {
2808c2ecf20Sopenharmony_ci		compatible = "hid-over-i2c";
2818c2ecf20Sopenharmony_ci		reg = <0x2c>;
2828c2ecf20Sopenharmony_ci		hid-descr-addr = <0x20>;
2838c2ecf20Sopenharmony_ci
2848c2ecf20Sopenharmony_ci		interrupts-extended = <&tlmm 37 IRQ_TYPE_LEVEL_HIGH>;
2858c2ecf20Sopenharmony_ci	};
2868c2ecf20Sopenharmony_ci};
2878c2ecf20Sopenharmony_ci
2888c2ecf20Sopenharmony_ci&i2c5 {
2898c2ecf20Sopenharmony_ci	status = "okay";
2908c2ecf20Sopenharmony_ci	clock-frequency = <400000>;
2918c2ecf20Sopenharmony_ci
2928c2ecf20Sopenharmony_ci	tsc1: hid@10 {
2938c2ecf20Sopenharmony_ci		compatible = "hid-over-i2c";
2948c2ecf20Sopenharmony_ci		reg = <0x10>;
2958c2ecf20Sopenharmony_ci		hid-descr-addr = <0x1>;
2968c2ecf20Sopenharmony_ci
2978c2ecf20Sopenharmony_ci		interrupts-extended = <&tlmm 125 IRQ_TYPE_LEVEL_LOW>;
2988c2ecf20Sopenharmony_ci
2998c2ecf20Sopenharmony_ci		pinctrl-names = "default";
3008c2ecf20Sopenharmony_ci		pinctrl-0 = <&i2c5_hid_active>;
3018c2ecf20Sopenharmony_ci	};
3028c2ecf20Sopenharmony_ci};
3038c2ecf20Sopenharmony_ci
3048c2ecf20Sopenharmony_ci&i2c11 {
3058c2ecf20Sopenharmony_ci	status = "okay";
3068c2ecf20Sopenharmony_ci	clock-frequency = <400000>;
3078c2ecf20Sopenharmony_ci
3088c2ecf20Sopenharmony_ci	ecsh: hid@5c {
3098c2ecf20Sopenharmony_ci		compatible = "hid-over-i2c";
3108c2ecf20Sopenharmony_ci		reg = <0x5c>;
3118c2ecf20Sopenharmony_ci		hid-descr-addr = <0x1>;
3128c2ecf20Sopenharmony_ci
3138c2ecf20Sopenharmony_ci		interrupts-extended = <&tlmm 92 IRQ_TYPE_LEVEL_LOW>;
3148c2ecf20Sopenharmony_ci
3158c2ecf20Sopenharmony_ci		pinctrl-names = "default";
3168c2ecf20Sopenharmony_ci		pinctrl-0 = <&i2c11_hid_active>;
3178c2ecf20Sopenharmony_ci	};
3188c2ecf20Sopenharmony_ci};
3198c2ecf20Sopenharmony_ci
3208c2ecf20Sopenharmony_ci&mss_pil {
3218c2ecf20Sopenharmony_ci	firmware-name = "qcom/LENOVO/81JL/qcdsp1v2850.mbn", "qcom/LENOVO/81JL/qcdsp2850.mbn";
3228c2ecf20Sopenharmony_ci};
3238c2ecf20Sopenharmony_ci
3248c2ecf20Sopenharmony_ci&qup_i2c12_default {
3258c2ecf20Sopenharmony_ci	pinmux {
3268c2ecf20Sopenharmony_ci		drive-strength = <2>;
3278c2ecf20Sopenharmony_ci		bias-disable;
3288c2ecf20Sopenharmony_ci	};
3298c2ecf20Sopenharmony_ci};
3308c2ecf20Sopenharmony_ci
3318c2ecf20Sopenharmony_ci&qup_uart6_default {
3328c2ecf20Sopenharmony_ci	pinmux {
3338c2ecf20Sopenharmony_ci		 pins = "gpio45", "gpio46", "gpio47", "gpio48";
3348c2ecf20Sopenharmony_ci		 function = "qup6";
3358c2ecf20Sopenharmony_ci	};
3368c2ecf20Sopenharmony_ci
3378c2ecf20Sopenharmony_ci	cts {
3388c2ecf20Sopenharmony_ci		pins = "gpio45";
3398c2ecf20Sopenharmony_ci		bias-pull-down;
3408c2ecf20Sopenharmony_ci	};
3418c2ecf20Sopenharmony_ci
3428c2ecf20Sopenharmony_ci	rts-tx {
3438c2ecf20Sopenharmony_ci		pins = "gpio46", "gpio47";
3448c2ecf20Sopenharmony_ci		drive-strength = <2>;
3458c2ecf20Sopenharmony_ci		bias-disable;
3468c2ecf20Sopenharmony_ci	};
3478c2ecf20Sopenharmony_ci
3488c2ecf20Sopenharmony_ci	rx {
3498c2ecf20Sopenharmony_ci		pins = "gpio48";
3508c2ecf20Sopenharmony_ci		bias-pull-up;
3518c2ecf20Sopenharmony_ci	};
3528c2ecf20Sopenharmony_ci};
3538c2ecf20Sopenharmony_ci
3548c2ecf20Sopenharmony_ci&qupv3_id_0 {
3558c2ecf20Sopenharmony_ci	status = "okay";
3568c2ecf20Sopenharmony_ci};
3578c2ecf20Sopenharmony_ci
3588c2ecf20Sopenharmony_ci&qupv3_id_1 {
3598c2ecf20Sopenharmony_ci	status = "okay";
3608c2ecf20Sopenharmony_ci};
3618c2ecf20Sopenharmony_ci
3628c2ecf20Sopenharmony_ci&q6asmdai {
3638c2ecf20Sopenharmony_ci	dai@0 {
3648c2ecf20Sopenharmony_ci		reg = <0>;
3658c2ecf20Sopenharmony_ci	};
3668c2ecf20Sopenharmony_ci
3678c2ecf20Sopenharmony_ci	dai@1 {
3688c2ecf20Sopenharmony_ci		reg = <1>;
3698c2ecf20Sopenharmony_ci	};
3708c2ecf20Sopenharmony_ci
3718c2ecf20Sopenharmony_ci	dai@2 {
3728c2ecf20Sopenharmony_ci		reg = <2>;
3738c2ecf20Sopenharmony_ci	};
3748c2ecf20Sopenharmony_ci};
3758c2ecf20Sopenharmony_ci
3768c2ecf20Sopenharmony_ci&sound {
3778c2ecf20Sopenharmony_ci	compatible = "qcom,db845c-sndcard";
3788c2ecf20Sopenharmony_ci	model = "Lenovo-YOGA-C630-13Q50";
3798c2ecf20Sopenharmony_ci
3808c2ecf20Sopenharmony_ci	audio-routing =
3818c2ecf20Sopenharmony_ci		"RX_BIAS", "MCLK",
3828c2ecf20Sopenharmony_ci		"AMIC2", "MIC BIAS2",
3838c2ecf20Sopenharmony_ci		"SpkrLeft IN", "SPK1 OUT",
3848c2ecf20Sopenharmony_ci		"SpkrRight IN", "SPK2 OUT",
3858c2ecf20Sopenharmony_ci		"MM_DL1",  "MultiMedia1 Playback",
3868c2ecf20Sopenharmony_ci		"MM_DL3",  "MultiMedia3 Playback",
3878c2ecf20Sopenharmony_ci		"MultiMedia2 Capture", "MM_UL2";
3888c2ecf20Sopenharmony_ci
3898c2ecf20Sopenharmony_ci	mm1-dai-link {
3908c2ecf20Sopenharmony_ci		link-name = "MultiMedia1";
3918c2ecf20Sopenharmony_ci		cpu {
3928c2ecf20Sopenharmony_ci			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA1>;
3938c2ecf20Sopenharmony_ci		};
3948c2ecf20Sopenharmony_ci	};
3958c2ecf20Sopenharmony_ci
3968c2ecf20Sopenharmony_ci	mm2-dai-link {
3978c2ecf20Sopenharmony_ci		link-name = "MultiMedia2";
3988c2ecf20Sopenharmony_ci		cpu {
3998c2ecf20Sopenharmony_ci			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA2>;
4008c2ecf20Sopenharmony_ci		};
4018c2ecf20Sopenharmony_ci	};
4028c2ecf20Sopenharmony_ci
4038c2ecf20Sopenharmony_ci	mm3-dai-link {
4048c2ecf20Sopenharmony_ci		link-name = "MultiMedia3";
4058c2ecf20Sopenharmony_ci		cpu {
4068c2ecf20Sopenharmony_ci			sound-dai = <&q6asmdai  MSM_FRONTEND_DAI_MULTIMEDIA3>;
4078c2ecf20Sopenharmony_ci		};
4088c2ecf20Sopenharmony_ci	};
4098c2ecf20Sopenharmony_ci
4108c2ecf20Sopenharmony_ci	slim-dai-link {
4118c2ecf20Sopenharmony_ci		link-name = "SLIM Playback";
4128c2ecf20Sopenharmony_ci		cpu {
4138c2ecf20Sopenharmony_ci			sound-dai = <&q6afedai SLIMBUS_0_RX>;
4148c2ecf20Sopenharmony_ci		};
4158c2ecf20Sopenharmony_ci
4168c2ecf20Sopenharmony_ci		platform {
4178c2ecf20Sopenharmony_ci			sound-dai = <&q6routing>;
4188c2ecf20Sopenharmony_ci		};
4198c2ecf20Sopenharmony_ci
4208c2ecf20Sopenharmony_ci		codec {
4218c2ecf20Sopenharmony_ci			sound-dai =  <&left_spkr>, <&right_spkr>, <&swm 0>, <&wcd9340 0>;
4228c2ecf20Sopenharmony_ci		};
4238c2ecf20Sopenharmony_ci	};
4248c2ecf20Sopenharmony_ci
4258c2ecf20Sopenharmony_ci	slimcap-dai-link {
4268c2ecf20Sopenharmony_ci		link-name = "SLIM Capture";
4278c2ecf20Sopenharmony_ci		cpu {
4288c2ecf20Sopenharmony_ci			sound-dai = <&q6afedai SLIMBUS_0_TX>;
4298c2ecf20Sopenharmony_ci		};
4308c2ecf20Sopenharmony_ci
4318c2ecf20Sopenharmony_ci		platform {
4328c2ecf20Sopenharmony_ci			sound-dai = <&q6routing>;
4338c2ecf20Sopenharmony_ci		};
4348c2ecf20Sopenharmony_ci
4358c2ecf20Sopenharmony_ci		codec {
4368c2ecf20Sopenharmony_ci			sound-dai = <&wcd9340 1>;
4378c2ecf20Sopenharmony_ci		};
4388c2ecf20Sopenharmony_ci	};
4398c2ecf20Sopenharmony_ci
4408c2ecf20Sopenharmony_ci	slim-wcd-dai-link {
4418c2ecf20Sopenharmony_ci		link-name = "SLIM WCD Playback";
4428c2ecf20Sopenharmony_ci		cpu {
4438c2ecf20Sopenharmony_ci			sound-dai = <&q6afedai SLIMBUS_1_RX>;
4448c2ecf20Sopenharmony_ci		};
4458c2ecf20Sopenharmony_ci
4468c2ecf20Sopenharmony_ci		platform {
4478c2ecf20Sopenharmony_ci			sound-dai = <&q6routing>;
4488c2ecf20Sopenharmony_ci		};
4498c2ecf20Sopenharmony_ci
4508c2ecf20Sopenharmony_ci		codec {
4518c2ecf20Sopenharmony_ci			sound-dai =  <&wcd9340 2>;
4528c2ecf20Sopenharmony_ci		};
4538c2ecf20Sopenharmony_ci	};
4548c2ecf20Sopenharmony_ci};
4558c2ecf20Sopenharmony_ci
4568c2ecf20Sopenharmony_ci&tlmm {
4578c2ecf20Sopenharmony_ci	gpio-reserved-ranges = <0 4>, <81 4>;
4588c2ecf20Sopenharmony_ci
4598c2ecf20Sopenharmony_ci	i2c3_hid_active: i2c2-hid-active {
4608c2ecf20Sopenharmony_ci		pins = "gpio37";
4618c2ecf20Sopenharmony_ci		function = "gpio";
4628c2ecf20Sopenharmony_ci
4638c2ecf20Sopenharmony_ci		input-enable;
4648c2ecf20Sopenharmony_ci		bias-pull-up;
4658c2ecf20Sopenharmony_ci		drive-strength = <2>;
4668c2ecf20Sopenharmony_ci	};
4678c2ecf20Sopenharmony_ci
4688c2ecf20Sopenharmony_ci	i2c5_hid_active: i2c5-hid-active {
4698c2ecf20Sopenharmony_ci		pins = "gpio125";
4708c2ecf20Sopenharmony_ci		function = "gpio";
4718c2ecf20Sopenharmony_ci
4728c2ecf20Sopenharmony_ci		input-enable;
4738c2ecf20Sopenharmony_ci		bias-pull-up;
4748c2ecf20Sopenharmony_ci		drive-strength = <2>;
4758c2ecf20Sopenharmony_ci	};
4768c2ecf20Sopenharmony_ci
4778c2ecf20Sopenharmony_ci	i2c11_hid_active: i2c11-hid-active {
4788c2ecf20Sopenharmony_ci		pins = "gpio92";
4798c2ecf20Sopenharmony_ci		function = "gpio";
4808c2ecf20Sopenharmony_ci
4818c2ecf20Sopenharmony_ci		input-enable;
4828c2ecf20Sopenharmony_ci		bias-pull-up;
4838c2ecf20Sopenharmony_ci		drive-strength = <2>;
4848c2ecf20Sopenharmony_ci	};
4858c2ecf20Sopenharmony_ci
4868c2ecf20Sopenharmony_ci	wcd_intr_default: wcd_intr_default {
4878c2ecf20Sopenharmony_ci		pins = "gpio54";
4888c2ecf20Sopenharmony_ci		function = "gpio";
4898c2ecf20Sopenharmony_ci
4908c2ecf20Sopenharmony_ci		input-enable;
4918c2ecf20Sopenharmony_ci		bias-pull-down;
4928c2ecf20Sopenharmony_ci		drive-strength = <2>;
4938c2ecf20Sopenharmony_ci	};
4948c2ecf20Sopenharmony_ci};
4958c2ecf20Sopenharmony_ci
4968c2ecf20Sopenharmony_ci&uart6 {
4978c2ecf20Sopenharmony_ci	status = "okay";
4988c2ecf20Sopenharmony_ci
4998c2ecf20Sopenharmony_ci	bluetooth {
5008c2ecf20Sopenharmony_ci		compatible = "qcom,wcn3990-bt";
5018c2ecf20Sopenharmony_ci
5028c2ecf20Sopenharmony_ci		vddio-supply = <&vreg_s4a_1p8>;
5038c2ecf20Sopenharmony_ci		vddxo-supply = <&vreg_l7a_1p8>;
5048c2ecf20Sopenharmony_ci		vddrf-supply = <&vreg_l17a_1p3>;
5058c2ecf20Sopenharmony_ci		vddch0-supply = <&vreg_l25a_3p3>;
5068c2ecf20Sopenharmony_ci		max-speed = <3200000>;
5078c2ecf20Sopenharmony_ci	};
5088c2ecf20Sopenharmony_ci};
5098c2ecf20Sopenharmony_ci
5108c2ecf20Sopenharmony_ci&ufs_mem_hc {
5118c2ecf20Sopenharmony_ci	status = "okay";
5128c2ecf20Sopenharmony_ci
5138c2ecf20Sopenharmony_ci	reset-gpios = <&tlmm 150 GPIO_ACTIVE_LOW>;
5148c2ecf20Sopenharmony_ci
5158c2ecf20Sopenharmony_ci	vcc-supply = <&vreg_l20a_2p95>;
5168c2ecf20Sopenharmony_ci	vcc-max-microamp = <600000>;
5178c2ecf20Sopenharmony_ci};
5188c2ecf20Sopenharmony_ci
5198c2ecf20Sopenharmony_ci&ufs_mem_phy {
5208c2ecf20Sopenharmony_ci	status = "okay";
5218c2ecf20Sopenharmony_ci
5228c2ecf20Sopenharmony_ci	vdda-phy-supply = <&vdda_ufs1_core>;
5238c2ecf20Sopenharmony_ci	vdda-pll-supply = <&vdda_ufs1_1p2>;
5248c2ecf20Sopenharmony_ci};
5258c2ecf20Sopenharmony_ci
5268c2ecf20Sopenharmony_ci&usb_1 {
5278c2ecf20Sopenharmony_ci	status = "okay";
5288c2ecf20Sopenharmony_ci};
5298c2ecf20Sopenharmony_ci
5308c2ecf20Sopenharmony_ci&usb_1_dwc3 {
5318c2ecf20Sopenharmony_ci	dr_mode = "host";
5328c2ecf20Sopenharmony_ci};
5338c2ecf20Sopenharmony_ci
5348c2ecf20Sopenharmony_ci&usb_1_hsphy {
5358c2ecf20Sopenharmony_ci	status = "okay";
5368c2ecf20Sopenharmony_ci
5378c2ecf20Sopenharmony_ci	vdd-supply = <&vdda_usb1_ss_core>;
5388c2ecf20Sopenharmony_ci	vdda-pll-supply = <&vdda_qusb_hs0_1p8>;
5398c2ecf20Sopenharmony_ci	vdda-phy-dpdm-supply = <&vdda_qusb_hs0_3p1>;
5408c2ecf20Sopenharmony_ci
5418c2ecf20Sopenharmony_ci	qcom,imp-res-offset-value = <8>;
5428c2ecf20Sopenharmony_ci	qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_21_6_MA>;
5438c2ecf20Sopenharmony_ci	qcom,preemphasis-level = <QUSB2_V2_PREEMPHASIS_5_PERCENT>;
5448c2ecf20Sopenharmony_ci	qcom,preemphasis-width = <QUSB2_V2_PREEMPHASIS_WIDTH_HALF_BIT>;
5458c2ecf20Sopenharmony_ci};
5468c2ecf20Sopenharmony_ci
5478c2ecf20Sopenharmony_ci&usb_1_qmpphy {
5488c2ecf20Sopenharmony_ci	status = "okay";
5498c2ecf20Sopenharmony_ci
5508c2ecf20Sopenharmony_ci	vdda-phy-supply = <&vdda_usb1_ss_1p2>;
5518c2ecf20Sopenharmony_ci	vdda-pll-supply = <&vdda_usb1_ss_core>;
5528c2ecf20Sopenharmony_ci};
5538c2ecf20Sopenharmony_ci
5548c2ecf20Sopenharmony_ci&usb_2 {
5558c2ecf20Sopenharmony_ci	status = "okay";
5568c2ecf20Sopenharmony_ci};
5578c2ecf20Sopenharmony_ci
5588c2ecf20Sopenharmony_ci&usb_2_dwc3 {
5598c2ecf20Sopenharmony_ci	dr_mode = "host";
5608c2ecf20Sopenharmony_ci};
5618c2ecf20Sopenharmony_ci
5628c2ecf20Sopenharmony_ci&usb_2_hsphy {
5638c2ecf20Sopenharmony_ci	status = "okay";
5648c2ecf20Sopenharmony_ci
5658c2ecf20Sopenharmony_ci	vdd-supply = <&vdda_usb2_ss_core>;
5668c2ecf20Sopenharmony_ci	vdda-pll-supply = <&vdda_qusb_hs0_1p8>;
5678c2ecf20Sopenharmony_ci	vdda-phy-dpdm-supply = <&vdda_qusb_hs0_3p1>;
5688c2ecf20Sopenharmony_ci
5698c2ecf20Sopenharmony_ci	qcom,imp-res-offset-value = <8>;
5708c2ecf20Sopenharmony_ci	qcom,hstx-trim-value = <QUSB2_V2_HSTX_TRIM_22_8_MA>;
5718c2ecf20Sopenharmony_ci};
5728c2ecf20Sopenharmony_ci
5738c2ecf20Sopenharmony_ci&usb_2_qmpphy {
5748c2ecf20Sopenharmony_ci	status = "okay";
5758c2ecf20Sopenharmony_ci
5768c2ecf20Sopenharmony_ci	vdda-phy-supply = <&vdda_usb2_ss_1p2>;
5778c2ecf20Sopenharmony_ci	vdda-pll-supply = <&vdda_usb2_ss_core>;
5788c2ecf20Sopenharmony_ci};
5798c2ecf20Sopenharmony_ci
5808c2ecf20Sopenharmony_ci&wcd9340{
5818c2ecf20Sopenharmony_ci	pinctrl-0 = <&wcd_intr_default>;
5828c2ecf20Sopenharmony_ci	pinctrl-names = "default";
5838c2ecf20Sopenharmony_ci	clock-names = "extclk";
5848c2ecf20Sopenharmony_ci	clocks = <&rpmhcc RPMH_LN_BB_CLK2>;
5858c2ecf20Sopenharmony_ci	reset-gpios = <&tlmm 64 0>;
5868c2ecf20Sopenharmony_ci	vdd-buck-supply = <&vreg_s4a_1p8>;
5878c2ecf20Sopenharmony_ci	vdd-buck-sido-supply = <&vreg_s4a_1p8>;
5888c2ecf20Sopenharmony_ci	vdd-tx-supply = <&vreg_s4a_1p8>;
5898c2ecf20Sopenharmony_ci	vdd-rx-supply = <&vreg_s4a_1p8>;
5908c2ecf20Sopenharmony_ci	vdd-io-supply = <&vreg_s4a_1p8>;
5918c2ecf20Sopenharmony_ci
5928c2ecf20Sopenharmony_ci	swm: swm@c85 {
5938c2ecf20Sopenharmony_ci		left_spkr: wsa8810-left{
5948c2ecf20Sopenharmony_ci			compatible = "sdw10217211000";
5958c2ecf20Sopenharmony_ci			reg = <0 3>;
5968c2ecf20Sopenharmony_ci			powerdown-gpios = <&wcdgpio 1 GPIO_ACTIVE_HIGH>;
5978c2ecf20Sopenharmony_ci			#thermal-sensor-cells = <0>;
5988c2ecf20Sopenharmony_ci			sound-name-prefix = "SpkrLeft";
5998c2ecf20Sopenharmony_ci			#sound-dai-cells = <0>;
6008c2ecf20Sopenharmony_ci		};
6018c2ecf20Sopenharmony_ci
6028c2ecf20Sopenharmony_ci		right_spkr: wsa8810-right{
6038c2ecf20Sopenharmony_ci			compatible = "sdw10217211000";
6048c2ecf20Sopenharmony_ci			powerdown-gpios = <&wcdgpio 2 GPIO_ACTIVE_HIGH>;
6058c2ecf20Sopenharmony_ci			reg = <0 4>;
6068c2ecf20Sopenharmony_ci			#thermal-sensor-cells = <0>;
6078c2ecf20Sopenharmony_ci			sound-name-prefix = "SpkrRight";
6088c2ecf20Sopenharmony_ci			#sound-dai-cells = <0>;
6098c2ecf20Sopenharmony_ci		};
6108c2ecf20Sopenharmony_ci	};
6118c2ecf20Sopenharmony_ci};
6128c2ecf20Sopenharmony_ci
6138c2ecf20Sopenharmony_ci&wifi {
6148c2ecf20Sopenharmony_ci	status = "okay";
6158c2ecf20Sopenharmony_ci
6168c2ecf20Sopenharmony_ci	vdd-0.8-cx-mx-supply = <&vreg_l5a_0p8>;
6178c2ecf20Sopenharmony_ci	vdd-1.8-xo-supply = <&vreg_l7a_1p8>;
6188c2ecf20Sopenharmony_ci	vdd-1.3-rfa-supply = <&vreg_l17a_1p3>;
6198c2ecf20Sopenharmony_ci	vdd-3.3-ch0-supply = <&vreg_l25a_3p3>;
6208c2ecf20Sopenharmony_ci
6218c2ecf20Sopenharmony_ci	qcom,snoc-host-cap-8bit-quirk;
6228c2ecf20Sopenharmony_ci};
623