| // SPDX-License-Identifier: BSD-3-Clause
|
| /*
|
| * Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
|
| */
|
|
|
| /dts-v1/;
|
|
|
| #include <dt-bindings/gpio/gpio.h>
|
| #include <dt-bindings/input/gpio-keys.h>
|
| #include <dt-bindings/input/input.h>
|
| #include <dt-bindings/pinctrl/qcom,pmic-gpio.h>
|
| #include <dt-bindings/regulator/qcom,rpmh-regulator.h>
|
|
|
| #include "x1e80100.dtsi"
|
| #include "x1e80100-pmics.dtsi"
|
|
|
| / {
|
| model = "Lenovo Yoga Slim 7x";
|
| compatible = "lenovo,yoga-slim7x", "qcom,x1e80100";
|
|
|
| aliases {
|
| serial0 = &uart21;
|
| serial1 = &uart14;
|
| };
|
|
|
| chosen {
|
| stdout-path = "serial0:115200n8";
|
| };
|
|
|
| gpio-keys {
|
| compatible = "gpio-keys";
|
|
|
| pinctrl-0 = <&hall_int_n_default>;
|
| pinctrl-names = "default";
|
|
|
| switch-lid {
|
| gpios = <&tlmm 92 GPIO_ACTIVE_LOW>;
|
| linux,input-type = <EV_SW>;
|
| linux,code = <SW_LID>;
|
| wakeup-source;
|
| wakeup-event-action = <EV_ACT_DEASSERTED>;
|
| };
|
| };
|
|
|
| pmic-glink {
|
| compatible = "qcom,x1e80100-pmic-glink",
|
| "qcom,sm8550-pmic-glink",
|
| "qcom,pmic-glink";
|
| #address-cells = <1>;
|
| #size-cells = <0>;
|
| orientation-gpios = <&tlmm 121 GPIO_ACTIVE_HIGH>,
|
| <&tlmm 123 GPIO_ACTIVE_HIGH>,
|
| <&tlmm 125 GPIO_ACTIVE_HIGH>;
|
|
|
| /* Left-side rear port */
|
| connector@0 {
|
| compatible = "usb-c-connector";
|
| reg = <0>;
|
| power-role = "dual";
|
| data-role = "dual";
|
|
|
| ports {
|
| #address-cells = <1>;
|
| #size-cells = <0>;
|
|
|
| port@0 {
|
| reg = <0>;
|
|
|
| pmic_glink_ss0_hs_in: endpoint {
|
| remote-endpoint = <&usb_1_ss0_dwc3_hs>;
|
| };
|
| };
|
|
|
| port@1 {
|
| reg = <1>;
|
|
|
| pmic_glink_ss0_ss_in: endpoint {
|
| remote-endpoint = <&retimer_ss0_ss_out>;
|
| };
|
| };
|
|
|
| port@2 {
|
| reg = <2>;
|
|
|
| pmic_glink_ss0_con_sbu_in: endpoint {
|
| remote-endpoint = <&retimer_ss0_con_sbu_out>;
|
| };
|
| };
|
| };
|
| };
|
|
|
| /* Left-side front port */
|
| connector@1 {
|
| compatible = "usb-c-connector";
|
| reg = <1>;
|
| power-role = "dual";
|
| data-role = "dual";
|
|
|
| ports {
|
| #address-cells = <1>;
|
| #size-cells = <0>;
|
|
|
| port@0 {
|
| reg = <0>;
|
|
|
| pmic_glink_ss1_hs_in: endpoint {
|
| remote-endpoint = <&usb_1_ss1_dwc3_hs>;
|
| };
|
| };
|
|
|
| port@1 {
|
| reg = <1>;
|
|
|
| pmic_glink_ss1_ss_in: endpoint {
|
| remote-endpoint = <&retimer_ss1_ss_out>;
|
| };
|
| };
|
|
|
| port@2 {
|
| reg = <2>;
|
|
|
| pmic_glink_ss1_con_sbu_in: endpoint {
|
| remote-endpoint = <&retimer_ss1_con_sbu_out>;
|
| };
|
| };
|
| };
|
| };
|
|
|
| /* Right-side port */
|
| connector@2 {
|
| compatible = "usb-c-connector";
|
| reg = <2>;
|
| power-role = "dual";
|
| data-role = "dual";
|
|
|
| ports {
|
| #address-cells = <1>;
|
| #size-cells = <0>;
|
|
|
| port@0 {
|
| reg = <0>;
|
|
|
| pmic_glink_ss2_hs_in: endpoint {
|
| remote-endpoint = <&usb_1_ss2_dwc3_hs>;
|
| };
|
| };
|
|
|
| port@1 {
|
| reg = <1>;
|
|
|
| pmic_glink_ss2_ss_in: endpoint {
|
| remote-endpoint = <&retimer_ss2_ss_out>;
|
| };
|
| };
|
|
|
| port@2 {
|
| reg = <2>;
|
|
|
| pmic_glink_ss2_con_sbu_in: endpoint {
|
| remote-endpoint = <&retimer_ss2_con_sbu_out>;
|
| };
|
| };
|
| };
|
| };
|
| };
|
|
|
| reserved-memory {
|
| linux,cma {
|
| compatible = "shared-dma-pool";
|
| size = <0x0 0x8000000>;
|
| reusable;
|
| linux,cma-default;
|
| };
|
| };
|
|
|
| sound {
|
| compatible = "qcom,x1e80100-sndcard";
|
| model = "X1E80100-LENOVO-Yoga-Slim7x";
|
| audio-routing = "WooferLeft IN", "WSA WSA_SPK1 OUT",
|
| "TweeterLeft IN", "WSA WSA_SPK2 OUT",
|
| "WooferRight IN", "WSA2 WSA_SPK2 OUT",
|
| "TweeterRight IN", "WSA2 WSA_SPK2 OUT";
|
|
|
| wcd-playback-dai-link {
|
| link-name = "WCD Playback";
|
|
|
| cpu {
|
| sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>;
|
| };
|
|
|
| codec {
|
| sound-dai = <&wcd938x 0>, <&swr1 0>, <&lpass_rxmacro 0>;
|
| };
|
|
|
| platform {
|
| sound-dai = <&q6apm>;
|
| };
|
| };
|
|
|
| wcd-capture-dai-link {
|
| link-name = "WCD Capture";
|
|
|
| cpu {
|
| sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>;
|
| };
|
|
|
| codec {
|
| sound-dai = <&wcd938x 1>, <&swr2 1>, <&lpass_txmacro 0>;
|
| };
|
|
|
| platform {
|
| sound-dai = <&q6apm>;
|
| };
|
| };
|
|
|
| wsa-dai-link {
|
| link-name = "WSA Playback";
|
|
|
| cpu {
|
| sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>;
|
| };
|
|
|
| codec {
|
| sound-dai = <&left_woofer>, <&left_tweeter>,
|
| <&swr0 0>, <&lpass_wsamacro 0>,
|
| <&right_woofer>, <&right_tweeter>,
|
| <&swr3 0>, <&lpass_wsa2macro 0>;
|
| };
|
|
|
| platform {
|
| sound-dai = <&q6apm>;
|
| };
|
| };
|
|
|
| va-dai-link {
|
| link-name = "VA Capture";
|
|
|
| cpu {
|
| sound-dai = <&q6apmbedai VA_CODEC_DMA_TX_0>;
|
| };
|
|
|
| codec {
|
| sound-dai = <&lpass_vamacro 0>;
|
| };
|
|
|
| platform {
|
| sound-dai = <&q6apm>;
|
| };
|
| };
|
| };
|
|
|
| vreg_misc_3p3: regulator-misc-3p3 {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_MISC_3P3";
|
| regulator-min-microvolt = <3300000>;
|
| regulator-max-microvolt = <3300000>;
|
|
|
| gpio = <&pm8550ve_8_gpios 6 GPIO_ACTIVE_HIGH>;
|
| enable-active-high;
|
|
|
| pinctrl-names = "default";
|
| pinctrl-0 = <&misc_3p3_reg_en>;
|
|
|
| regulator-boot-on;
|
| regulator-always-on;
|
| };
|
|
|
| vreg_edp_3p3: regulator-edp-3p3 {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_EDP_3P3";
|
| regulator-min-microvolt = <3300000>;
|
| regulator-max-microvolt = <3300000>;
|
|
|
| gpio = <&tlmm 70 GPIO_ACTIVE_HIGH>;
|
| enable-active-high;
|
|
|
| pinctrl-0 = <&edp_reg_en>;
|
| pinctrl-names = "default";
|
|
|
| regulator-boot-on;
|
| };
|
|
|
| vreg_nvme: regulator-nvme {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_NVME_3P3";
|
| regulator-min-microvolt = <3300000>;
|
| regulator-max-microvolt = <3300000>;
|
|
|
| gpio = <&tlmm 18 GPIO_ACTIVE_HIGH>;
|
| enable-active-high;
|
|
|
| pinctrl-0 = <&nvme_reg_en>;
|
| pinctrl-names = "default";
|
|
|
| regulator-boot-on;
|
| };
|
|
|
| vreg_rtmr0_1p15: regulator-rtmr0-1p15 {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_RTMR0_1P15";
|
| regulator-min-microvolt = <1150000>;
|
| regulator-max-microvolt = <1150000>;
|
|
|
| gpio = <&pmc8380_5_gpios 8 GPIO_ACTIVE_HIGH>;
|
| enable-active-high;
|
|
|
| pinctrl-0 = <&usb0_pwr_1p15_reg_en>;
|
| pinctrl-names = "default";
|
|
|
| regulator-boot-on;
|
| };
|
|
|
| vreg_rtmr0_1p8: regulator-rtmr0-1p8 {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_RTMR0_1P8";
|
| regulator-min-microvolt = <1800000>;
|
| regulator-max-microvolt = <1800000>;
|
|
|
| gpio = <&pm8550ve_9_gpios 8 GPIO_ACTIVE_HIGH>;
|
| enable-active-high;
|
|
|
| pinctrl-0 = <&usb0_1p8_reg_en>;
|
| pinctrl-names = "default";
|
|
|
| regulator-boot-on;
|
| };
|
|
|
| vreg_rtmr0_3p3: regulator-rtmr0-3p3 {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_RTMR0_3P3";
|
| regulator-min-microvolt = <3300000>;
|
| regulator-max-microvolt = <3300000>;
|
|
|
| gpio = <&pm8550_gpios 11 GPIO_ACTIVE_HIGH>;
|
| enable-active-high;
|
|
|
| pinctrl-0 = <&usb0_3p3_reg_en>;
|
| pinctrl-names = "default";
|
|
|
| regulator-boot-on;
|
| };
|
|
|
| vreg_rtmr1_1p15: regulator-rtmr1-1p15 {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_RTMR1_1P15";
|
| regulator-min-microvolt = <1150000>;
|
| regulator-max-microvolt = <1150000>;
|
|
|
| gpio = <&tlmm 188 GPIO_ACTIVE_HIGH>;
|
| enable-active-high;
|
|
|
| pinctrl-0 = <&usb1_pwr_1p15_reg_en>;
|
| pinctrl-names = "default";
|
|
|
| regulator-boot-on;
|
| };
|
|
|
| vreg_rtmr1_1p8: regulator-rtmr1-1p8 {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_RTMR1_1P8";
|
| regulator-min-microvolt = <1800000>;
|
| regulator-max-microvolt = <1800000>;
|
|
|
| gpio = <&tlmm 175 GPIO_ACTIVE_HIGH>;
|
| enable-active-high;
|
|
|
| pinctrl-0 = <&usb1_pwr_1p8_reg_en>;
|
| pinctrl-names = "default";
|
|
|
| regulator-boot-on;
|
| };
|
|
|
| vreg_rtmr1_3p3: regulator-rtmr1-3p3 {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_RTMR1_3P3";
|
| regulator-min-microvolt = <3300000>;
|
| regulator-max-microvolt = <3300000>;
|
|
|
| gpio = <&tlmm 186 GPIO_ACTIVE_HIGH>;
|
| enable-active-high;
|
|
|
| pinctrl-0 = <&usb1_pwr_3p3_reg_en>;
|
| pinctrl-names = "default";
|
|
|
| regulator-boot-on;
|
| };
|
|
|
| vreg_rtmr2_1p15: regulator-rtmr2-1p15 {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_RTMR2_1P15";
|
| regulator-min-microvolt = <1150000>;
|
| regulator-max-microvolt = <1150000>;
|
|
|
| gpio = <&tlmm 189 GPIO_ACTIVE_HIGH>;
|
| enable-active-high;
|
|
|
| pinctrl-0 = <&usb2_pwr_1p15_reg_en>;
|
| pinctrl-names = "default";
|
|
|
| regulator-boot-on;
|
| };
|
|
|
| vreg_rtmr2_1p8: regulator-rtmr2-1p8 {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_RTMR2_1P8";
|
| regulator-min-microvolt = <1800000>;
|
| regulator-max-microvolt = <1800000>;
|
|
|
| gpio = <&tlmm 126 GPIO_ACTIVE_HIGH>;
|
| enable-active-high;
|
|
|
| pinctrl-0 = <&usb2_pwr_1p8_reg_en>;
|
| pinctrl-names = "default";
|
|
|
| regulator-boot-on;
|
| };
|
|
|
| vreg_rtmr2_3p3: regulator-rtmr2-3p3 {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_RTMR2_3P3";
|
| regulator-min-microvolt = <3300000>;
|
| regulator-max-microvolt = <3300000>;
|
|
|
| gpio = <&tlmm 187 GPIO_ACTIVE_HIGH>;
|
| enable-active-high;
|
|
|
| pinctrl-0 = <&usb2_pwr_3p3_reg_en>;
|
| pinctrl-names = "default";
|
|
|
| regulator-boot-on;
|
| };
|
|
|
|
|
| vph_pwr: regulator-vph-pwr {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "vph_pwr";
|
| regulator-min-microvolt = <3700000>;
|
| regulator-max-microvolt = <3700000>;
|
|
|
| regulator-always-on;
|
| regulator-boot-on;
|
| };
|
|
|
| wcd938x: audio-codec {
|
| compatible = "qcom,wcd9385-codec";
|
|
|
| pinctrl-names = "default";
|
| pinctrl-0 = <&wcd_default>;
|
|
|
| qcom,micbias1-microvolt = <1800000>;
|
| qcom,micbias2-microvolt = <1800000>;
|
| qcom,micbias3-microvolt = <1800000>;
|
| qcom,micbias4-microvolt = <1800000>;
|
| qcom,mbhc-buttons-vthreshold-microvolt = <75000 150000 237000 500000 500000 500000 500000 500000>;
|
| qcom,mbhc-headset-vthreshold-microvolt = <1700000>;
|
| qcom,mbhc-headphone-vthreshold-microvolt = <50000>;
|
| qcom,rx-device = <&wcd_rx>;
|
| qcom,tx-device = <&wcd_tx>;
|
|
|
| reset-gpios = <&tlmm 191 GPIO_ACTIVE_LOW>;
|
|
|
| vdd-buck-supply = <&vreg_l15b_1p8>;
|
| vdd-rxtx-supply = <&vreg_l15b_1p8>;
|
| vdd-io-supply = <&vreg_l15b_1p8>;
|
| vdd-mic-bias-supply = <&vreg_bob1>;
|
|
|
| #sound-dai-cells = <1>;
|
| };
|
|
|
| vreg_wcn_3p3: regulator-wcn-3p3 {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_WCN_3P3";
|
| regulator-min-microvolt = <3300000>;
|
| regulator-max-microvolt = <3300000>;
|
|
|
| gpio = <&tlmm 214 GPIO_ACTIVE_HIGH>;
|
| enable-active-high;
|
|
|
| pinctrl-0 = <&wcn_sw_en>;
|
| pinctrl-names = "default";
|
|
|
| regulator-boot-on;
|
| };
|
|
|
| /*
|
| * TODO: These two regulators are actually part of the removable M.2
|
| * card and not the CRD mainboard. Need to describe this differently.
|
| * Functionally it works correctly, because all we need to do is to
|
| * turn on the actual 3.3V supply above.
|
| */
|
| vreg_wcn_0p95: regulator-wcn-0p95 {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_WCN_0P95";
|
| regulator-min-microvolt = <950000>;
|
| regulator-max-microvolt = <950000>;
|
|
|
| vin-supply = <&vreg_wcn_3p3>;
|
| };
|
|
|
| vreg_wcn_1p9: regulator-wcn-1p9 {
|
| compatible = "regulator-fixed";
|
|
|
| regulator-name = "VREG_WCN_1P9";
|
| regulator-min-microvolt = <1900000>;
|
| regulator-max-microvolt = <1900000>;
|
|
|
| vin-supply = <&vreg_wcn_3p3>;
|
| };
|
|
|
| wcn7850-pmu {
|
| compatible = "qcom,wcn7850-pmu";
|
|
|
| vdd-supply = <&vreg_wcn_0p95>;
|
| vddio-supply = <&vreg_l15b_1p8>;
|
| vddaon-supply = <&vreg_wcn_0p95>;
|
| vdddig-supply = <&vreg_wcn_0p95>;
|
| vddrfa1p2-supply = <&vreg_wcn_1p9>;
|
| vddrfa1p8-supply = <&vreg_wcn_1p9>;
|
|
|
| wlan-enable-gpios = <&tlmm 117 GPIO_ACTIVE_HIGH>;
|
| bt-enable-gpios = <&tlmm 116 GPIO_ACTIVE_HIGH>;
|
|
|
| pinctrl-0 = <&wcn_wlan_bt_en>;
|
| pinctrl-names = "default";
|
|
|
| regulators {
|
| vreg_pmu_rfa_cmn: ldo0 {
|
| regulator-name = "vreg_pmu_rfa_cmn";
|
| };
|
|
|
| vreg_pmu_aon_0p59: ldo1 {
|
| regulator-name = "vreg_pmu_aon_0p59";
|
| };
|
|
|
| vreg_pmu_wlcx_0p8: ldo2 {
|
| regulator-name = "vreg_pmu_wlcx_0p8";
|
| };
|
|
|
| vreg_pmu_wlmx_0p85: ldo3 {
|
| regulator-name = "vreg_pmu_wlmx_0p85";
|
| };
|
|
|
| vreg_pmu_btcmx_0p85: ldo4 {
|
| regulator-name = "vreg_pmu_btcmx_0p85";
|
| };
|
|
|
| vreg_pmu_rfa_0p8: ldo5 {
|
| regulator-name = "vreg_pmu_rfa_0p8";
|
| };
|
|
|
| vreg_pmu_rfa_1p2: ldo6 {
|
| regulator-name = "vreg_pmu_rfa_1p2";
|
| };
|
|
|
| vreg_pmu_rfa_1p8: ldo7 {
|
| regulator-name = "vreg_pmu_rfa_1p8";
|
| };
|
|
|
| vreg_pmu_pcie_0p9: ldo8 {
|
| regulator-name = "vreg_pmu_pcie_0p9";
|
| };
|
|
|
| vreg_pmu_pcie_1p8: ldo9 {
|
| regulator-name = "vreg_pmu_pcie_1p8";
|
| };
|
| };
|
| };
|
| };
|
|
|
| &apps_rsc {
|
| regulators-0 {
|
| compatible = "qcom,pm8550-rpmh-regulators";
|
| qcom,pmic-id = "b";
|
|
|
| vdd-bob1-supply = <&vph_pwr>;
|
| vdd-bob2-supply = <&vph_pwr>;
|
| vdd-l1-l4-l10-supply = <&vreg_s4c_1p8>;
|
| vdd-l2-l13-l14-supply = <&vreg_bob1>;
|
| vdd-l5-l16-supply = <&vreg_bob1>;
|
| vdd-l6-l7-supply = <&vreg_bob2>;
|
| vdd-l8-l9-supply = <&vreg_bob1>;
|
| vdd-l12-supply = <&vreg_s5j_1p2>;
|
| vdd-l15-supply = <&vreg_s4c_1p8>;
|
| vdd-l17-supply = <&vreg_bob2>;
|
|
|
| vreg_bob1: bob1 {
|
| regulator-name = "vreg_bob1";
|
| regulator-min-microvolt = <3008000>;
|
| regulator-max-microvolt = <3960000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_bob2: bob2 {
|
| regulator-name = "vreg_bob2";
|
| regulator-min-microvolt = <2504000>;
|
| regulator-max-microvolt = <3008000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l1b_1p8: ldo1 {
|
| regulator-name = "vreg_l1b_1p8";
|
| regulator-min-microvolt = <1800000>;
|
| regulator-max-microvolt = <1800000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l2b_3p0: ldo2 {
|
| regulator-name = "vreg_l2b_3p0";
|
| regulator-min-microvolt = <3072000>;
|
| regulator-max-microvolt = <3100000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l4b_1p8: ldo4 {
|
| regulator-name = "vreg_l4b_1p8";
|
| regulator-min-microvolt = <1800000>;
|
| regulator-max-microvolt = <1800000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l5b_3p0: ldo5 {
|
| regulator-name = "vreg_l5b_3p0";
|
| regulator-min-microvolt = <3000000>;
|
| regulator-max-microvolt = <3000000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l6b_1p8: ldo6 {
|
| regulator-name = "vreg_l6b_1p8";
|
| regulator-min-microvolt = <1800000>;
|
| regulator-max-microvolt = <2960000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l7b_2p8: ldo7 {
|
| regulator-name = "vreg_l7b_2p8";
|
| regulator-min-microvolt = <2800000>;
|
| regulator-max-microvolt = <2800000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l8b_3p0: ldo8 {
|
| regulator-name = "vreg_l8b_3p0";
|
| regulator-min-microvolt = <3072000>;
|
| regulator-max-microvolt = <3072000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l9b_2p9: ldo9 {
|
| regulator-name = "vreg_l9b_2p9";
|
| regulator-min-microvolt = <2960000>;
|
| regulator-max-microvolt = <2960000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l10b_1p8: ldo10 {
|
| regulator-name = "vreg_l10b_1p8";
|
| regulator-min-microvolt = <1800000>;
|
| regulator-max-microvolt = <1800000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l12b_1p2: ldo12 {
|
| regulator-name = "vreg_l12b_1p2";
|
| regulator-min-microvolt = <1200000>;
|
| regulator-max-microvolt = <1200000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l13b_3p0: ldo13 {
|
| regulator-name = "vreg_l13b_3p0";
|
| regulator-min-microvolt = <3072000>;
|
| regulator-max-microvolt = <3100000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l14b_3p0: ldo14 {
|
| regulator-name = "vreg_l14b_3p0";
|
| regulator-min-microvolt = <3072000>;
|
| regulator-max-microvolt = <3072000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l15b_1p8: ldo15 {
|
| regulator-name = "vreg_l15b_1p8";
|
| regulator-min-microvolt = <1800000>;
|
| regulator-max-microvolt = <1800000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l16b_2p9: ldo16 {
|
| regulator-name = "vreg_l16b_2p9";
|
| regulator-min-microvolt = <2912000>;
|
| regulator-max-microvolt = <2912000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l17b_2p5: ldo17 {
|
| regulator-name = "vreg_l17b_2p5";
|
| regulator-min-microvolt = <2504000>;
|
| regulator-max-microvolt = <2504000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
| };
|
|
|
| regulators-1 {
|
| compatible = "qcom,pm8550ve-rpmh-regulators";
|
| qcom,pmic-id = "c";
|
|
|
| vdd-l1-supply = <&vreg_s5j_1p2>;
|
| vdd-l2-supply = <&vreg_s1f_0p7>;
|
| vdd-l3-supply = <&vreg_s1f_0p7>;
|
| vdd-s4-supply = <&vph_pwr>;
|
|
|
| vreg_s4c_1p8: smps4 {
|
| regulator-name = "vreg_s4c_1p8";
|
| regulator-min-microvolt = <1856000>;
|
| regulator-max-microvolt = <2000000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l1c_1p2: ldo1 {
|
| regulator-name = "vreg_l1c_1p2";
|
| regulator-min-microvolt = <1200000>;
|
| regulator-max-microvolt = <1200000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l2c_0p8: ldo2 {
|
| regulator-name = "vreg_l2c_0p8";
|
| regulator-min-microvolt = <880000>;
|
| regulator-max-microvolt = <920000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l3c_0p8: ldo3 {
|
| regulator-name = "vreg_l3c_0p8";
|
| regulator-min-microvolt = <880000>;
|
| regulator-max-microvolt = <920000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
| };
|
|
|
| regulators-2 {
|
| compatible = "qcom,pmc8380-rpmh-regulators";
|
| qcom,pmic-id = "d";
|
|
|
| vdd-l1-supply = <&vreg_s1f_0p7>;
|
| vdd-l2-supply = <&vreg_s1f_0p7>;
|
| vdd-l3-supply = <&vreg_s4c_1p8>;
|
| vdd-s1-supply = <&vph_pwr>;
|
|
|
| vreg_l1d_0p8: ldo1 {
|
| regulator-name = "vreg_l1d_0p8";
|
| regulator-min-microvolt = <880000>;
|
| regulator-max-microvolt = <920000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l2d_0p9: ldo2 {
|
| regulator-name = "vreg_l2d_0p9";
|
| regulator-min-microvolt = <912000>;
|
| regulator-max-microvolt = <920000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l3d_1p8: ldo3 {
|
| regulator-name = "vreg_l3d_1p8";
|
| regulator-min-microvolt = <1800000>;
|
| regulator-max-microvolt = <1800000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
| };
|
|
|
| regulators-3 {
|
| compatible = "qcom,pmc8380-rpmh-regulators";
|
| qcom,pmic-id = "e";
|
|
|
| vdd-l2-supply = <&vreg_s1f_0p7>;
|
| vdd-l3-supply = <&vreg_s5j_1p2>;
|
|
|
| vreg_l2e_0p8: ldo2 {
|
| regulator-name = "vreg_l2e_0p8";
|
| regulator-min-microvolt = <880000>;
|
| regulator-max-microvolt = <920000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l3e_1p2: ldo3 {
|
| regulator-name = "vreg_l3e_1p2";
|
| regulator-min-microvolt = <1200000>;
|
| regulator-max-microvolt = <1200000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
| };
|
|
|
| regulators-4 {
|
| compatible = "qcom,pmc8380-rpmh-regulators";
|
| qcom,pmic-id = "f";
|
|
|
| vdd-l1-supply = <&vreg_s5j_1p2>;
|
| vdd-l2-supply = <&vreg_s5j_1p2>;
|
| vdd-l3-supply = <&vreg_s5j_1p2>;
|
| vdd-s1-supply = <&vph_pwr>;
|
|
|
| vreg_s1f_0p7: smps1 {
|
| regulator-name = "vreg_s1f_0p7";
|
| regulator-min-microvolt = <700000>;
|
| regulator-max-microvolt = <1100000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l1f_1p0: ldo1 {
|
| regulator-name = "vreg_l1f_1p0";
|
| regulator-min-microvolt = <1024000>;
|
| regulator-max-microvolt = <1024000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l2f_1p0: ldo2 {
|
| regulator-name = "vreg_l2f_1p0";
|
| regulator-min-microvolt = <1024000>;
|
| regulator-max-microvolt = <1024000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l3f_1p0: ldo3 {
|
| regulator-name = "vreg_l3f_1p0";
|
| regulator-min-microvolt = <1024000>;
|
| regulator-max-microvolt = <1024000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
| };
|
|
|
| regulators-6 {
|
| compatible = "qcom,pm8550ve-rpmh-regulators";
|
| qcom,pmic-id = "i";
|
|
|
| vdd-l1-supply = <&vreg_s4c_1p8>;
|
| vdd-l2-supply = <&vreg_s5j_1p2>;
|
| vdd-l3-supply = <&vreg_s1f_0p7>;
|
| vdd-s1-supply = <&vph_pwr>;
|
| vdd-s2-supply = <&vph_pwr>;
|
|
|
| vreg_s1i_0p9: smps1 {
|
| regulator-name = "vreg_s1i_0p9";
|
| regulator-min-microvolt = <900000>;
|
| regulator-max-microvolt = <920000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_s2i_1p0: smps2 {
|
| regulator-name = "vreg_s2i_1p0";
|
| regulator-min-microvolt = <1000000>;
|
| regulator-max-microvolt = <1100000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l1i_1p8: ldo1 {
|
| regulator-name = "vreg_l1i_1p8";
|
| regulator-min-microvolt = <1800000>;
|
| regulator-max-microvolt = <1800000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l2i_1p2: ldo2 {
|
| regulator-name = "vreg_l2i_1p2";
|
| regulator-min-microvolt = <1200000>;
|
| regulator-max-microvolt = <1200000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l3i_0p8: ldo3 {
|
| regulator-name = "vreg_l3i_0p8";
|
| regulator-min-microvolt = <880000>;
|
| regulator-max-microvolt = <920000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
| };
|
|
|
| regulators-7 {
|
| compatible = "qcom,pm8550ve-rpmh-regulators";
|
| qcom,pmic-id = "j";
|
|
|
| vdd-l1-supply = <&vreg_s1f_0p7>;
|
| vdd-l2-supply = <&vreg_s5j_1p2>;
|
| vdd-l3-supply = <&vreg_s1f_0p7>;
|
| vdd-s5-supply = <&vph_pwr>;
|
|
|
| vreg_s5j_1p2: smps5 {
|
| regulator-name = "vreg_s5j_1p2";
|
| regulator-min-microvolt = <1256000>;
|
| regulator-max-microvolt = <1304000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l1j_0p8: ldo1 {
|
| regulator-name = "vreg_l1j_0p8";
|
| regulator-min-microvolt = <880000>;
|
| regulator-max-microvolt = <920000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l2j_1p2: ldo2 {
|
| regulator-name = "vreg_l2j_1p2";
|
| regulator-min-microvolt = <1200000>;
|
| regulator-max-microvolt = <1200000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
|
|
| vreg_l3j_0p8: ldo3 {
|
| regulator-name = "vreg_l3j_0p8";
|
| regulator-min-microvolt = <880000>;
|
| regulator-max-microvolt = <920000>;
|
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
|
| };
|
| };
|
| };
|
|
|
| &gpu {
|
| status = "okay";
|
|
|
| zap-shader {
|
| firmware-name = "qcom/x1e80100/LENOVO/83ED/qcdxkmsuc8380.mbn";
|
| };
|
| };
|
|
|
| &i2c0 {
|
| clock-frequency = <400000>;
|
|
|
| status = "okay";
|
|
|
| touchpad@2c {
|
| compatible = "hid-over-i2c";
|
| reg = <0x2c>;
|
|
|
| hid-descr-addr = <0x20>;
|
| interrupts-extended = <&tlmm 3 IRQ_TYPE_LEVEL_LOW>;
|
|
|
| vdd-supply = <&vreg_misc_3p3>;
|
| vddl-supply = <&vreg_l12b_1p2>;
|
|
|
| pinctrl-0 = <&tpad_default>;
|
| pinctrl-names = "default";
|
|
|
| wakeup-source;
|
| };
|
|
|
| keyboard@3a {
|
| compatible = "hid-over-i2c";
|
| reg = <0x3a>;
|
|
|
| hid-descr-addr = <0x1>;
|
| interrupts-extended = <&tlmm 67 IRQ_TYPE_LEVEL_LOW>;
|
|
|
| vdd-supply = <&vreg_misc_3p3>;
|
| vddl-supply = <&vreg_l12b_1p2>;
|
|
|
| pinctrl-0 = <&kybd_default>;
|
| pinctrl-names = "default";
|
|
|
| wakeup-source;
|
| };
|
| };
|
|
|
| &i2c1 {
|
| clock-frequency = <400000>;
|
|
|
| status = "okay";
|
|
|
| typec-mux@8 {
|
| compatible = "parade,ps8830";
|
| reg = <0x08>;
|
|
|
| clocks = <&rpmhcc RPMH_RF_CLK5>;
|
|
|
| vdd-supply = <&vreg_rtmr2_1p15>;
|
| vdd33-supply = <&vreg_rtmr2_3p3>;
|
| vdd33-cap-supply = <&vreg_rtmr2_3p3>;
|
| vddar-supply = <&vreg_rtmr2_1p15>;
|
| vddat-supply = <&vreg_rtmr2_1p15>;
|
| vddio-supply = <&vreg_rtmr2_1p8>;
|
|
|
| reset-gpios = <&tlmm 185 GPIO_ACTIVE_LOW>;
|
|
|
| pinctrl-0 = <&rtmr2_default>;
|
| pinctrl-names = "default";
|
|
|
| orientation-switch;
|
| retimer-switch;
|
|
|
| ports {
|
| #address-cells = <1>;
|
| #size-cells = <0>;
|
|
|
| port@0 {
|
| reg = <0>;
|
|
|
| retimer_ss2_ss_out: endpoint {
|
| remote-endpoint = <&pmic_glink_ss2_ss_in>;
|
| };
|
| };
|
|
|
| port@1 {
|
| reg = <1>;
|
|
|
| retimer_ss2_ss_in: endpoint {
|
| remote-endpoint = <&usb_1_ss2_qmpphy_out>;
|
| };
|
| };
|
|
|
| port@2 {
|
| reg = <2>;
|
|
|
| retimer_ss2_con_sbu_out: endpoint {
|
| remote-endpoint = <&pmic_glink_ss2_con_sbu_in>;
|
| };
|
| };
|
| };
|
| };
|
| };
|
|
|
| &i2c3 {
|
| clock-frequency = <400000>;
|
|
|
| status = "okay";
|
|
|
| typec-mux@8 {
|
| compatible = "parade,ps8830";
|
| reg = <0x08>;
|
|
|
| clocks = <&rpmhcc RPMH_RF_CLK3>;
|
|
|
| vdd-supply = <&vreg_rtmr0_1p15>;
|
| vdd33-supply = <&vreg_rtmr0_3p3>;
|
| vdd33-cap-supply = <&vreg_rtmr0_3p3>;
|
| vddar-supply = <&vreg_rtmr0_1p15>;
|
| vddat-supply = <&vreg_rtmr0_1p15>;
|
| vddio-supply = <&vreg_rtmr0_1p8>;
|
|
|
| reset-gpios = <&pm8550_gpios 10 GPIO_ACTIVE_LOW>;
|
|
|
| pinctrl-0 = <&rtmr0_default>;
|
| pinctrl-names = "default";
|
|
|
| retimer-switch;
|
| orientation-switch;
|
|
|
| ports {
|
| #address-cells = <1>;
|
| #size-cells = <0>;
|
|
|
| port@0 {
|
| reg = <0>;
|
|
|
| retimer_ss0_ss_out: endpoint {
|
| remote-endpoint = <&pmic_glink_ss0_ss_in>;
|
| };
|
| };
|
|
|
| port@1 {
|
| reg = <1>;
|
|
|
| retimer_ss0_ss_in: endpoint {
|
| remote-endpoint = <&usb_1_ss0_qmpphy_out>;
|
| };
|
| };
|
|
|
| port@2 {
|
| reg = <2>;
|
|
|
| retimer_ss0_con_sbu_out: endpoint {
|
| remote-endpoint = <&pmic_glink_ss0_con_sbu_in>;
|
| };
|
| };
|
| };
|
| };
|
| };
|
|
|
| &i2c5 {
|
| clock-frequency = <400000>;
|
|
|
| status = "okay";
|
|
|
| embedded-controller@76 {
|
| compatible = "lenovo,yoga-slim7x-ec", "qcom,x1e-it8987-ec";
|
| reg = <0x76>;
|
|
|
| interrupts-extended = <&tlmm 66 IRQ_TYPE_EDGE_FALLING>;
|
|
|
| pinctrl-0 = <&ec_int_n_default>;
|
| pinctrl-names = "default";
|
| };
|
| };
|
|
|
| &i2c7 {
|
| clock-frequency = <400000>;
|
|
|
| status = "okay";
|
|
|
| typec-mux@8 {
|
| compatible = "parade,ps8830";
|
| reg = <0x8>;
|
|
|
| clocks = <&rpmhcc RPMH_RF_CLK4>;
|
|
|
| vdd-supply = <&vreg_rtmr1_1p15>;
|
| vdd33-supply = <&vreg_rtmr1_3p3>;
|
| vdd33-cap-supply = <&vreg_rtmr1_3p3>;
|
| vddar-supply = <&vreg_rtmr1_1p15>;
|
| vddat-supply = <&vreg_rtmr1_1p15>;
|
| vddio-supply = <&vreg_rtmr1_1p8>;
|
|
|
| reset-gpios = <&tlmm 176 GPIO_ACTIVE_LOW>;
|
|
|
| pinctrl-0 = <&rtmr1_default>;
|
| pinctrl-names = "default";
|
|
|
| retimer-switch;
|
| orientation-switch;
|
|
|
| ports {
|
| #address-cells = <1>;
|
| #size-cells = <0>;
|
|
|
| port@0 {
|
| reg = <0>;
|
|
|
| retimer_ss1_ss_out: endpoint {
|
| remote-endpoint = <&pmic_glink_ss1_ss_in>;
|
| };
|
| };
|
|
|
| port@1 {
|
| reg = <1>;
|
|
|
| retimer_ss1_ss_in: endpoint {
|
| remote-endpoint = <&usb_1_ss1_qmpphy_out>;
|
| };
|
| };
|
|
|
| port@2 {
|
| reg = <2>;
|
|
|
| retimer_ss1_con_sbu_out: endpoint {
|
| remote-endpoint = <&pmic_glink_ss1_con_sbu_in>;
|
| };
|
| };
|
|
|
| };
|
| };
|
| };
|
|
|
| &i2c8 {
|
| clock-frequency = <400000>;
|
|
|
| status = "okay";
|
|
|
| touchscreen@14 {
|
| compatible = "hid-over-i2c";
|
| reg = <0x14>;
|
|
|
| hid-descr-addr = <0x1>;
|
| interrupts-extended = <&tlmm 51 IRQ_TYPE_LEVEL_LOW>;
|
|
|
| vdd-supply = <&vreg_misc_3p3>;
|
| vddl-supply = <&vreg_l15b_1p8>;
|
|
|
| pinctrl-0 = <&ts0_default>;
|
| pinctrl-names = "default";
|
| };
|
| };
|
|
|
| &iris {
|
| firmware-name = "qcom/x1e80100/LENOVO/83ED/qcvss8380.mbn";
|
| status = "okay";
|
| };
|
|
|
| &lpass_tlmm {
|
| spkr_01_sd_n_active: spkr-01-sd-n-active-state {
|
| pins = "gpio12";
|
| function = "gpio";
|
| drive-strength = <16>;
|
| bias-disable;
|
| output-low;
|
| };
|
|
|
| spkr_23_sd_n_active: spkr-23-sd-n-active-state {
|
| pins = "gpio13";
|
| function = "gpio";
|
| drive-strength = <16>;
|
| bias-disable;
|
| output-low;
|
| };
|
| };
|
|
|
| &lpass_vamacro {
|
| pinctrl-0 = <&dmic01_default>, <&dmic23_default>;
|
| pinctrl-names = "default";
|
|
|
| vdd-micb-supply = <&vreg_l1b_1p8>;
|
| qcom,dmic-sample-rate = <4800000>;
|
| };
|
|
|
| &mdss {
|
| status = "okay";
|
| };
|
|
|
| &mdss_dp0 {
|
| status = "okay";
|
| };
|
|
|
| &mdss_dp0_out {
|
| data-lanes = <0 1>;
|
| link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
|
| };
|
|
|
| &mdss_dp1 {
|
| status = "okay";
|
| };
|
|
|
| &mdss_dp1_out {
|
| data-lanes = <0 1>;
|
| link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
|
| };
|
|
|
| &mdss_dp2 {
|
| status = "okay";
|
| };
|
|
|
| &mdss_dp2_out {
|
| data-lanes = <0 1>;
|
| link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
|
| };
|
|
|
| &mdss_dp3 {
|
| compatible = "qcom,x1e80100-dp";
|
| /delete-property/ #sound-dai-cells;
|
|
|
| status = "okay";
|
|
|
| aux-bus {
|
| panel {
|
| compatible = "samsung,atna45dc02", "samsung,atna33xc20";
|
| enable-gpios = <&pmc8380_3_gpios 4 GPIO_ACTIVE_HIGH>;
|
| power-supply = <&vreg_edp_3p3>;
|
|
|
| pinctrl-0 = <&edp_bl_en>;
|
| pinctrl-names = "default";
|
|
|
| port {
|
| edp_panel_in: endpoint {
|
| remote-endpoint = <&mdss_dp3_out>;
|
| };
|
| };
|
| };
|
| };
|
|
|
| ports {
|
| port@1 {
|
| reg = <1>;
|
|
|
| mdss_dp3_out: endpoint {
|
| data-lanes = <0 1 2 3>;
|
| link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>;
|
|
|
| remote-endpoint = <&edp_panel_in>;
|
| };
|
| };
|
| };
|
| };
|
|
|
| &mdss_dp3_phy {
|
| vdda-phy-supply = <&vreg_l3j_0p8>;
|
| vdda-pll-supply = <&vreg_l2j_1p2>;
|
|
|
| status = "okay";
|
| };
|
|
|
| &pcie4 {
|
| perst-gpios = <&tlmm 146 GPIO_ACTIVE_LOW>;
|
| wake-gpios = <&tlmm 148 GPIO_ACTIVE_LOW>;
|
|
|
| pinctrl-0 = <&pcie4_default>;
|
| pinctrl-names = "default";
|
|
|
| status = "okay";
|
| };
|
|
|
| &pcie4_phy {
|
| vdda-phy-supply = <&vreg_l3i_0p8>;
|
| vdda-pll-supply = <&vreg_l3e_1p2>;
|
|
|
| status = "okay";
|
| };
|
|
|
| &pcie4_port0 {
|
| wifi@0 {
|
| compatible = "pci17cb,1107";
|
| reg = <0x10000 0x0 0x0 0x0 0x0>;
|
|
|
| vddaon-supply = <&vreg_pmu_aon_0p59>;
|
| vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
|
| vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
|
| vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
|
| vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
|
| vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
|
| vddrfa1p8-supply = <&vreg_pmu_rfa_1p8>;
|
| vddpcie0p9-supply = <&vreg_pmu_pcie_0p9>;
|
| vddpcie1p8-supply = <&vreg_pmu_pcie_1p8>;
|
| qcom,ath12k-calibration-variant = "LES790";
|
| };
|
| };
|
|
|
| &pcie6a {
|
| perst-gpios = <&tlmm 152 GPIO_ACTIVE_LOW>;
|
| wake-gpios = <&tlmm 154 GPIO_ACTIVE_LOW>;
|
|
|
| vddpe-3v3-supply = <&vreg_nvme>;
|
|
|
| pinctrl-0 = <&pcie6a_default>;
|
| pinctrl-names = "default";
|
|
|
| status = "okay";
|
| };
|
|
|
| &pcie6a_phy {
|
| vdda-phy-supply = <&vreg_l1d_0p8>;
|
| vdda-pll-supply = <&vreg_l2j_1p2>;
|
|
|
| status = "okay";
|
| };
|
|
|
| &pm8550_gpios {
|
| rtmr0_default: rtmr0-reset-n-active-state {
|
| pins = "gpio10";
|
| function = "normal";
|
| power-source = <1>; /* 1.8V */
|
| bias-disable;
|
| input-disable;
|
| output-enable;
|
| };
|
|
|
| usb0_3p3_reg_en: usb0-3p3-reg-en-state {
|
| pins = "gpio11";
|
| function = "normal";
|
| power-source = <1>; /* 1.8V */
|
| bias-disable;
|
| input-disable;
|
| output-enable;
|
| };
|
| };
|
|
|
| &pm8550ve_8_gpios {
|
| misc_3p3_reg_en: misc-3p3-reg-en-state {
|
| pins = "gpio6";
|
| function = "normal";
|
| bias-disable;
|
| input-disable;
|
| output-enable;
|
| drive-push-pull;
|
| power-source = <1>; /* 1.8 V */
|
| qcom,drive-strength = <PMIC_GPIO_STRENGTH_LOW>;
|
| };
|
| };
|
|
|
| &pm8550ve_9_gpios {
|
| usb0_1p8_reg_en: usb0-1p8-reg-en-state {
|
| pins = "gpio8";
|
| function = "normal";
|
| power-source = <1>; /* 1.8V */
|
| bias-disable;
|
| input-disable;
|
| output-enable;
|
| };
|
| };
|
|
|
| &pmc8380_3_gpios {
|
| edp_bl_en: edp-bl-en-state {
|
| pins = "gpio4";
|
| function = "normal";
|
| power-source = <0>;
|
| input-disable;
|
| output-enable;
|
| };
|
| };
|
|
|
| &pmc8380_5_gpios {
|
| usb0_pwr_1p15_reg_en: usb0-pwr-1p15-reg-en-state {
|
| pins = "gpio8";
|
| function = "normal";
|
| power-source = <1>; /* 1.8V */
|
| bias-disable;
|
| input-disable;
|
| output-enable;
|
| };
|
| };
|
|
|
| &qupv3_0 {
|
| status = "okay";
|
| };
|
|
|
| &qupv3_1 {
|
| status = "okay";
|
| };
|
|
|
| &qupv3_2 {
|
| status = "okay";
|
| };
|
|
|
| &remoteproc_adsp {
|
| firmware-name = "qcom/x1e80100/LENOVO/83ED/qcadsp8380.mbn",
|
| "qcom/x1e80100/LENOVO/83ED/adsp_dtbs.elf";
|
| status = "okay";
|
| };
|
|
|
| &remoteproc_cdsp {
|
| firmware-name = "qcom/x1e80100/LENOVO/83ED/qccdsp8380.mbn",
|
| "qcom/x1e80100/LENOVO/83ED/cdsp_dtbs.elf";
|
|
|
| status = "okay";
|
| };
|
|
|
| &smb2360_0 {
|
| status = "okay";
|
| };
|
|
|
| &smb2360_0_eusb2_repeater {
|
| vdd18-supply = <&vreg_l3d_1p8>;
|
| vdd3-supply = <&vreg_l2b_3p0>;
|
| };
|
|
|
| &smb2360_1 {
|
| status = "okay";
|
| };
|
|
|
| &smb2360_1_eusb2_repeater {
|
| vdd18-supply = <&vreg_l3d_1p8>;
|
| vdd3-supply = <&vreg_l14b_3p0>;
|
| };
|
|
|
| &smb2360_2 {
|
| status = "okay";
|
| };
|
|
|
| &smb2360_2_eusb2_repeater {
|
| vdd18-supply = <&vreg_l3d_1p8>;
|
| vdd3-supply = <&vreg_l8b_3p0>;
|
| };
|
|
|
| &swr0 {
|
| status = "okay";
|
|
|
| pinctrl-0 = <&wsa_swr_active>, <&spkr_01_sd_n_active>;
|
| pinctrl-names = "default";
|
|
|
| /* WSA8845, Left Woofer */
|
| left_woofer: speaker@0,0 {
|
| compatible = "sdw20217020400";
|
| reg = <0 0>;
|
| reset-gpios = <&lpass_tlmm 12 GPIO_ACTIVE_LOW>;
|
| #sound-dai-cells = <0>;
|
| sound-name-prefix = "WooferLeft";
|
| vdd-1p8-supply = <&vreg_l15b_1p8>;
|
| vdd-io-supply = <&vreg_l12b_1p2>;
|
| qcom,port-mapping = <1 2 3 7 10 13>;
|
| };
|
|
|
| /* WSA8845, Left Tweeter */
|
| left_tweeter: speaker@0,1 {
|
| compatible = "sdw20217020400";
|
| reg = <0 1>;
|
| reset-gpios = <&lpass_tlmm 12 GPIO_ACTIVE_LOW>;
|
| #sound-dai-cells = <0>;
|
| sound-name-prefix = "TweeterLeft";
|
| vdd-1p8-supply = <&vreg_l15b_1p8>;
|
| vdd-io-supply = <&vreg_l12b_1p2>;
|
| qcom,port-mapping = <4 5 6 7 11 13>;
|
| };
|
| };
|
|
|
| &swr1 {
|
| status = "okay";
|
|
|
| /* WCD9385 RX */
|
| wcd_rx: codec@0,4 {
|
| compatible = "sdw20217010d00";
|
| reg = <0 4>;
|
| qcom,rx-port-mapping = <1 2 3 4 5>;
|
| };
|
| };
|
|
|
| &swr2 {
|
| status = "okay";
|
|
|
| /* WCD9385 TX */
|
| wcd_tx: codec@0,3 {
|
| compatible = "sdw20217010d00";
|
| reg = <0 3>;
|
| qcom,tx-port-mapping = <2 2 3 4>;
|
| };
|
| };
|
|
|
| &swr3 {
|
| status = "okay";
|
|
|
| pinctrl-0 = <&wsa2_swr_active>, <&spkr_23_sd_n_active>;
|
| pinctrl-names = "default";
|
|
|
| /* WSA8845, Right Woofer */
|
| right_woofer: speaker@0,0 {
|
| compatible = "sdw20217020400";
|
| reg = <0 0>;
|
| reset-gpios = <&lpass_tlmm 13 GPIO_ACTIVE_LOW>;
|
| #sound-dai-cells = <0>;
|
| sound-name-prefix = "WooferRight";
|
| vdd-1p8-supply = <&vreg_l15b_1p8>;
|
| vdd-io-supply = <&vreg_l12b_1p2>;
|
| qcom,port-mapping = <1 2 3 7 10 13>;
|
| };
|
|
|
| /* WSA8845, Right Tweeter */
|
| right_tweeter: speaker@0,1 {
|
| compatible = "sdw20217020400";
|
| reg = <0 1>;
|
| reset-gpios = <&lpass_tlmm 13 GPIO_ACTIVE_LOW>;
|
| #sound-dai-cells = <0>;
|
| sound-name-prefix = "TweeterRight";
|
| vdd-1p8-supply = <&vreg_l15b_1p8>;
|
| vdd-io-supply = <&vreg_l12b_1p2>;
|
| qcom,port-mapping = <4 5 6 7 11 13>;
|
| };
|
| };
|
|
|
| &tlmm {
|
| gpio-reserved-ranges = <34 2>, /* Unused */
|
| <44 4>, /* SPI (TPM) */
|
| <238 1>; /* UFS Reset */
|
|
|
| ec_int_n_default: ec-int-n-state {
|
| pins = "gpio66";
|
| function = "gpio";
|
| bias-disable;
|
| };
|
|
|
| edp_reg_en: edp-reg-en-state {
|
| pins = "gpio70";
|
| function = "gpio";
|
| drive-strength = <16>;
|
| bias-disable;
|
| };
|
|
|
| hall_int_n_default: hall-int-n-state {
|
| lid-n-pins {
|
| pins = "gpio92";
|
| function = "gpio";
|
| bias-disable;
|
| };
|
|
|
| /*
|
| * Pins 71 and 92 seem to be bridged together (pin 71 and 92 show the same
|
| * events). By default, pin 71 is set as output-high, which blocks any
|
| * event on pin 92. Output-disable on pin 71 is necessary to get events on
|
| * pin 92.
|
| * The purpose of pin 71 is not yet known; lid-pull is a supposition.
|
| */
|
| lid-pull-n-pins {
|
| pins = "gpio71";
|
| function = "gpio";
|
| bias-pull-up;
|
| output-disable;
|
| };
|
| };
|
|
|
| kybd_default: kybd-default-state {
|
| pins = "gpio67";
|
| function = "gpio";
|
| bias-disable;
|
| };
|
|
|
| nvme_reg_en: nvme-reg-en-state {
|
| pins = "gpio18";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-disable;
|
| };
|
|
|
| pcie4_default: pcie4-default-state {
|
| clkreq-n-pins {
|
| pins = "gpio147";
|
| function = "pcie4_clk";
|
| drive-strength = <2>;
|
| bias-pull-up;
|
| };
|
|
|
| perst-n-pins {
|
| pins = "gpio146";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-disable;
|
| };
|
|
|
| wake-n-pins {
|
| pins = "gpio148";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-pull-up;
|
| };
|
| };
|
|
|
| pcie6a_default: pcie6a-default-state {
|
| clkreq-n-pins {
|
| pins = "gpio153";
|
| function = "pcie6a_clk";
|
| drive-strength = <2>;
|
| bias-pull-up;
|
| };
|
|
|
| perst-n-pins {
|
| pins = "gpio152";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-disable;
|
| };
|
|
|
| wake-n-pins {
|
| pins = "gpio154";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-pull-up;
|
| };
|
| };
|
|
|
| rtmr1_default: rtmr1-reset-n-active-state {
|
| pins = "gpio176";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-disable;
|
| };
|
|
|
| rtmr2_default: rtmr2-reset-n-active-state {
|
| pins = "gpio185";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-disable;
|
| };
|
|
|
| tpad_default: tpad-default-state {
|
| pins = "gpio3";
|
| function = "gpio";
|
| bias-disable;
|
| };
|
|
|
| ts0_default: ts0-default-state {
|
| int-n-pins {
|
| pins = "gpio51";
|
| function = "gpio";
|
| bias-disable;
|
| };
|
|
|
| reset-n-pins {
|
| pins = "gpio48";
|
| function = "gpio";
|
| output-high;
|
| drive-strength = <16>;
|
| };
|
| };
|
|
|
| usb1_pwr_1p15_reg_en: usb1-pwr-1p15-reg-en-state {
|
| pins = "gpio188";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-disable;
|
| };
|
|
|
| usb1_pwr_1p8_reg_en: usb1-pwr-1p8-reg-en-state {
|
| pins = "gpio175";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-disable;
|
| };
|
|
|
| usb1_pwr_3p3_reg_en: usb1-pwr-3p3-reg-en-state {
|
| pins = "gpio186";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-disable;
|
| };
|
|
|
| usb2_pwr_1p15_reg_en: usb2-pwr-1p15-reg-en-state {
|
| pins = "gpio189";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-disable;
|
| };
|
|
|
| usb2_pwr_1p8_reg_en: usb2-pwr-1p8-reg-en-state {
|
| pins = "gpio126";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-disable;
|
| };
|
|
|
| usb2_pwr_3p3_reg_en: usb2-pwr-3p3-reg-en-state {
|
| pins = "gpio187";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-disable;
|
| };
|
|
|
| wcd_default: wcd-reset-n-active-state {
|
| pins = "gpio191";
|
| function = "gpio";
|
| drive-strength = <16>;
|
| bias-disable;
|
| output-low;
|
| };
|
|
|
| wcn_sw_en: wcn-sw-en-state {
|
| pins = "gpio214";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-disable;
|
| };
|
|
|
| wcn_wlan_bt_en: wcn-wlan-bt-en-state {
|
| pins = "gpio116", "gpio117";
|
| function = "gpio";
|
| drive-strength = <2>;
|
| bias-disable;
|
| };
|
|
|
| wwan_sw_en: wwan-sw-en-state {
|
| pins = "gpio221";
|
| function = "gpio";
|
| drive-strength = <4>;
|
| bias-disable;
|
| };
|
| };
|
|
|
| &uart14 {
|
| status = "okay";
|
|
|
| bluetooth {
|
| compatible = "qcom,wcn7850-bt";
|
| max-speed = <3200000>;
|
|
|
| vddaon-supply = <&vreg_pmu_aon_0p59>;
|
| vddwlcx-supply = <&vreg_pmu_wlcx_0p8>;
|
| vddwlmx-supply = <&vreg_pmu_wlmx_0p85>;
|
| vddrfacmn-supply = <&vreg_pmu_rfa_cmn>;
|
| vddrfa0p8-supply = <&vreg_pmu_rfa_0p8>;
|
| vddrfa1p2-supply = <&vreg_pmu_rfa_1p2>;
|
| vddrfa1p8-supply = <&vreg_pmu_rfa_1p8>;
|
| };
|
| };
|
|
|
| &uart21 {
|
| compatible = "qcom,geni-debug-uart";
|
| status = "okay";
|
| };
|
|
|
| &usb_1_ss0_hsphy {
|
| vdd-supply = <&vreg_l3j_0p8>;
|
| vdda12-supply = <&vreg_l2j_1p2>;
|
|
|
| phys = <&smb2360_0_eusb2_repeater>;
|
|
|
| status = "okay";
|
| };
|
|
|
| &usb_1_ss0_qmpphy {
|
| vdda-phy-supply = <&vreg_l2j_1p2>;
|
| vdda-pll-supply = <&vreg_l1j_0p8>;
|
|
|
| status = "okay";
|
| };
|
|
|
| &usb_1_ss0 {
|
| status = "okay";
|
| };
|
|
|
| &usb_1_ss0_dwc3 {
|
| dr_mode = "host";
|
| };
|
|
|
| &usb_1_ss0_dwc3_hs {
|
| remote-endpoint = <&pmic_glink_ss0_hs_in>;
|
| };
|
|
|
| &usb_1_ss0_qmpphy_out {
|
| remote-endpoint = <&retimer_ss0_ss_in>;
|
| };
|
|
|
| &usb_1_ss1_hsphy {
|
| vdd-supply = <&vreg_l3j_0p8>;
|
| vdda12-supply = <&vreg_l2j_1p2>;
|
|
|
| phys = <&smb2360_1_eusb2_repeater>;
|
|
|
| status = "okay";
|
| };
|
|
|
| &usb_1_ss1_qmpphy {
|
| vdda-phy-supply = <&vreg_l2j_1p2>;
|
| vdda-pll-supply = <&vreg_l2d_0p9>;
|
|
|
| status = "okay";
|
| };
|
|
|
| &usb_1_ss1 {
|
| status = "okay";
|
| };
|
|
|
| &usb_1_ss1_dwc3 {
|
| dr_mode = "host";
|
| };
|
|
|
| &usb_1_ss1_dwc3_hs {
|
| remote-endpoint = <&pmic_glink_ss1_hs_in>;
|
| };
|
|
|
| &usb_1_ss1_qmpphy_out {
|
| remote-endpoint = <&retimer_ss1_ss_in>;
|
| };
|
|
|
| &usb_1_ss2_hsphy {
|
| vdd-supply = <&vreg_l3j_0p8>;
|
| vdda12-supply = <&vreg_l2j_1p2>;
|
|
|
| phys = <&smb2360_2_eusb2_repeater>;
|
|
|
| status = "okay";
|
| };
|
|
|
| &usb_1_ss2_qmpphy {
|
| vdda-phy-supply = <&vreg_l2j_1p2>;
|
| vdda-pll-supply = <&vreg_l2d_0p9>;
|
|
|
| status = "okay";
|
| };
|
|
|
| &usb_1_ss2 {
|
| status = "okay";
|
| };
|
|
|
| &usb_1_ss2_dwc3 {
|
| dr_mode = "host";
|
| };
|
|
|
| &usb_1_ss2_dwc3_hs {
|
| remote-endpoint = <&pmic_glink_ss2_hs_in>;
|
| };
|
|
|
| &usb_1_ss2_qmpphy_out {
|
| remote-endpoint = <&retimer_ss2_ss_in>;
|
| };
|