| // SPDX-License-Identifier: BSD-3-Clause |
| /* |
| * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries. |
| */ |
| |
| /dts-v1/; |
| |
| #include <dt-bindings/leds/common.h> |
| #include "hamoa-iot-som.dtsi" |
| #include <dt-bindings/pinctrl/qcom,pmic-gpio.h> |
| |
| / { |
| model = "Qualcomm Technologies, Inc. Hamoa IoT EVK"; |
| compatible = "qcom,hamoa-iot-evk", "qcom,hamoa-iot-som", "qcom,x1e80100"; |
| chassis-type = "embedded"; |
| |
| aliases { |
| serial0 = &uart21; |
| serial1 = &uart14; |
| }; |
| |
| backlight: backlight { |
| compatible = "pwm-backlight"; |
| pwms = <&pmk8550_pwm 0 5000000>; |
| enable-gpios = <&pmc8380_3_gpios 4 GPIO_ACTIVE_HIGH>; |
| power-supply = <&vreg_edp_bl>; |
| |
| pinctrl-0 = <&edp_bl_en>, <&edp_bl_pwm>; |
| pinctrl-names = "default"; |
| }; |
| |
| wcd938x: audio-codec { |
| compatible = "qcom,wcd9385-codec"; |
| |
| pinctrl-0 = <&wcd_default>; |
| pinctrl-names = "default"; |
| |
| reset-gpios = <&tlmm 191 GPIO_ACTIVE_LOW>; |
| |
| 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>; |
| |
| 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>; |
| }; |
| |
| chosen { |
| stdout-path = "serial0:115200n8"; |
| }; |
| |
| connector3 { |
| compatible = "usb-a-connector"; |
| label = "USB-3-Type-A"; |
| power-role = "source"; |
| |
| vbus-supply = <®ulator_usb3_vbus>; |
| |
| port { |
| connector_3_in: endpoint { |
| }; |
| }; |
| }; |
| |
| connector6 { |
| compatible = "usb-a-connector"; |
| label = "USB-6-Type-A"; |
| power-role = "source"; |
| |
| vbus-supply = <®ulator_usb6_vbus>; |
| |
| port { |
| connector_4_in: endpoint { |
| }; |
| }; |
| }; |
| |
| 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>; |
| |
| 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 = <&usb_1_ss0_qmpphy_out>; |
| }; |
| }; |
| |
| port@2 { |
| reg = <2>; |
| |
| pmic_glink_ss0_sbu: endpoint { |
| remote-endpoint = <&usb_1_ss0_sbu_mux>; |
| }; |
| }; |
| }; |
| }; |
| |
| 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>; |
| }; |
| }; |
| }; |
| }; |
| |
| 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>; |
| }; |
| }; |
| }; |
| }; |
| }; |
| |
| 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_edp_bl: regulator-edp-bl { |
| compatible = "regulator-fixed"; |
| |
| regulator-name = "VBL9"; |
| regulator-min-microvolt = <3600000>; |
| regulator-max-microvolt = <3600000>; |
| |
| gpio = <&pmc8380_3_gpios 10 GPIO_ACTIVE_HIGH>; |
| enable-active-high; |
| |
| pinctrl-0 = <&edp_bl_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_pcie_12v: regulator-pcie-12v { |
| compatible = "regulator-fixed"; |
| |
| regulator-name = "VREG_PCIE_12V"; |
| regulator-min-microvolt = <12000000>; |
| regulator-max-microvolt = <12000000>; |
| |
| gpio = <&pm8550ve_8_gpios 8 GPIO_ACTIVE_HIGH>; |
| enable-active-high; |
| |
| pinctrl-0 = <&pcie_x8_12v>; |
| pinctrl-names = "default"; |
| }; |
| |
| vreg_pcie_3v3: regulator-pcie-3v3 { |
| compatible = "regulator-fixed"; |
| |
| regulator-name = "VREG_PCIE_3P3"; |
| regulator-min-microvolt = <3300000>; |
| regulator-max-microvolt = <3300000>; |
| |
| gpio = <&pmc8380_3_gpios 6 GPIO_ACTIVE_HIGH>; |
| enable-active-high; |
| |
| pinctrl-0 = <&pm_sde7_main_3p3_en>; |
| pinctrl-names = "default"; |
| }; |
| |
| vreg_pcie_3v3_aux: regulator-pcie-3v3-aux { |
| compatible = "regulator-fixed"; |
| |
| regulator-name = "VREG_PCIE_3P3_AUX"; |
| regulator-min-microvolt = <3300000>; |
| regulator-max-microvolt = <3300000>; |
| |
| gpio = <&pmc8380_3_gpios 8 GPIO_ACTIVE_HIGH>; |
| enable-active-high; |
| |
| pinctrl-0 = <&pm_sde7_aux_3p3_en>; |
| pinctrl-names = "default"; |
| }; |
| |
| /* Left unused as the retimer is not used on this board. */ |
| 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; |
| }; |
| |
| regulator_usb3_vbus: regulator-usb3-vbus { |
| compatible = "regulator-fixed"; |
| regulator-name = "USB3_VBUS"; |
| gpio = <&pm8550ve_9_gpios 4 GPIO_ACTIVE_HIGH>; |
| pinctrl-0 = <&usb3_en>; |
| pinctrl-names = "default"; |
| enable-active-high; |
| regulator-always-on; |
| }; |
| |
| regulator_usb6_vbus: regulator-usb6-vbus { |
| compatible = "regulator-fixed"; |
| regulator-name = "USB6_VBUS"; |
| gpio = <&pm8550ve_9_gpios 5 GPIO_ACTIVE_HIGH>; |
| pinctrl-0 = <&usb6_en>; |
| pinctrl-names = "default"; |
| enable-active-high; |
| regulator-always-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; |
| }; |
| |
| /* |
| * TODO: These two regulators are actually part of the removable M.2 |
| * card and not the EVK 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>; |
| }; |
| |
| 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-always-on; |
| regulator-boot-on; |
| }; |
| |
| vreg_wwan: regulator-wwan { |
| compatible = "regulator-fixed"; |
| |
| regulator-name = "SDX_VPH_PWR"; |
| regulator-min-microvolt = <3300000>; |
| regulator-max-microvolt = <3300000>; |
| |
| gpio = <&tlmm 221 GPIO_ACTIVE_HIGH>; |
| enable-active-high; |
| |
| pinctrl-0 = <&wwan_sw_en>; |
| pinctrl-names = "default"; |
| |
| regulator-boot-on; |
| }; |
| |
| sound { |
| compatible = "qcom,x1e80100-sndcard"; |
| model = "X1E80100-EVK"; |
| 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", |
| "IN1_HPHL", "HPHL_OUT", |
| "IN2_HPHR", "HPHR_OUT", |
| "AMIC2", "MIC BIAS2", |
| "VA DMIC0", "MIC BIAS3", |
| "VA DMIC1", "MIC BIAS3", |
| "VA DMIC2", "MIC BIAS1", |
| "VA DMIC3", "MIC BIAS1", |
| "TX SWR_INPUT1", "ADC2_OUTPUT"; |
| |
| wcd-playback-dai-link { |
| link-name = "WCD Playback"; |
| |
| codec { |
| sound-dai = <&wcd938x 0>, <&swr1 0>, <&lpass_rxmacro 0>; |
| }; |
| |
| cpu { |
| sound-dai = <&q6apmbedai RX_CODEC_DMA_RX_0>; |
| }; |
| |
| platform { |
| sound-dai = <&q6apm>; |
| }; |
| }; |
| |
| wcd-capture-dai-link { |
| link-name = "WCD Capture"; |
| |
| codec { |
| sound-dai = <&wcd938x 1>, <&swr2 1>, <&lpass_txmacro 0>; |
| }; |
| |
| cpu { |
| sound-dai = <&q6apmbedai TX_CODEC_DMA_TX_3>; |
| }; |
| |
| platform { |
| sound-dai = <&q6apm>; |
| }; |
| }; |
| |
| wsa-dai-link { |
| link-name = "WSA Playback"; |
| |
| codec { |
| sound-dai = <&left_woofer>, |
| <&left_tweeter>, |
| <&swr0 0>, |
| <&lpass_wsamacro 0>, |
| <&right_woofer>, |
| <&right_tweeter>, |
| <&swr3 0>, |
| <&lpass_wsa2macro 0>; |
| }; |
| |
| cpu { |
| sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>; |
| }; |
| |
| platform { |
| sound-dai = <&q6apm>; |
| }; |
| }; |
| |
| va-dai-link { |
| link-name = "VA Capture"; |
| |
| codec { |
| sound-dai = <&lpass_vamacro 0>; |
| }; |
| |
| cpu { |
| sound-dai = <&q6apmbedai VA_CODEC_DMA_TX_0>; |
| }; |
| |
| platform { |
| sound-dai = <&q6apm>; |
| }; |
| }; |
| }; |
| |
| usb-1-ss0-sbu-mux { |
| compatible = "onnn,fsusb42", "gpio-sbu-mux"; |
| |
| enable-gpios = <&tlmm 168 GPIO_ACTIVE_LOW>; |
| select-gpios = <&tlmm 167 GPIO_ACTIVE_HIGH>; |
| |
| pinctrl-0 = <&usb_1_ss0_sbu_default>; |
| pinctrl-names = "default"; |
| |
| mode-switch; |
| orientation-switch; |
| |
| port { |
| usb_1_ss0_sbu_mux: endpoint { |
| remote-endpoint = <&pmic_glink_ss0_sbu>; |
| }; |
| }; |
| }; |
| |
| 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>; |
| |
| bt-enable-gpios = <&tlmm 116 GPIO_ACTIVE_HIGH>; |
| wlan-enable-gpios = <&tlmm 117 GPIO_ACTIVE_HIGH>; |
| |
| pinctrl-0 = <&wcn_bt_en>, <&wcn_wlan_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"; |
| }; |
| }; |
| }; |
| }; |
| |
| &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>; |
| }; |
| }; |
| }; |
| }; |
| }; |
| |
| &i2c5 { |
| clock-frequency = <400000>; |
| |
| status = "okay"; |
| |
| eusb3_repeater: redriver@47 { |
| compatible = "nxp,ptn3222"; |
| reg = <0x47>; |
| #phy-cells = <0>; |
| |
| vdd3v3-supply = <&vreg_l13b_3p0>; |
| vdd1v8-supply = <&vreg_l4b_1p8>; |
| |
| reset-gpios = <&tlmm 6 GPIO_ACTIVE_LOW>; |
| |
| pinctrl-0 = <&eusb3_reset_n>; |
| pinctrl-names = "default"; |
| }; |
| |
| eusb5_repeater: redriver@43 { |
| compatible = "nxp,ptn3222"; |
| reg = <0x43>; |
| #phy-cells = <0>; |
| |
| vdd3v3-supply = <&vreg_l13b_3p0>; |
| vdd1v8-supply = <&vreg_l4b_1p8>; |
| |
| reset-gpios = <&tlmm 7 GPIO_ACTIVE_LOW>; |
| |
| pinctrl-0 = <&eusb5_reset_n>; |
| pinctrl-names = "default"; |
| }; |
| |
| eusb6_repeater: redriver@4f { |
| compatible = "nxp,ptn3222"; |
| reg = <0x4f>; |
| #phy-cells = <0>; |
| |
| vdd3v3-supply = <&vreg_l13b_3p0>; |
| vdd1v8-supply = <&vreg_l4b_1p8>; |
| |
| reset-gpios = <&tlmm 184 GPIO_ACTIVE_LOW>; |
| |
| pinctrl-0 = <&eusb6_reset_n>; |
| 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>; |
| }; |
| }; |
| }; |
| }; |
| }; |
| |
| &lpass_tlmm { |
| spkr_0_sd_n_active: spkr-0-sd-n-active-state { |
| pins = "gpio12"; |
| function = "gpio"; |
| drive-strength = <16>; |
| bias-disable; |
| }; |
| |
| spkr_1_sd_n_active: spkr-1-sd-n-active-state { |
| pins = "gpio13"; |
| function = "gpio"; |
| drive-strength = <16>; |
| bias-disable; |
| }; |
| |
| spkr_2_sd_n_active: spkr-2-sd-n-active-state { |
| pins = "gpio17"; |
| function = "gpio"; |
| drive-strength = <16>; |
| bias-disable; |
| }; |
| |
| spkr_3_sd_n_active: spkr-3-sd-n-active-state { |
| pins = "gpio18"; |
| function = "gpio"; |
| drive-strength = <16>; |
| bias-disable; |
| }; |
| }; |
| |
| &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 { |
| link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>; |
| }; |
| |
| &mdss_dp1 { |
| status = "okay"; |
| }; |
| |
| &mdss_dp1_out { |
| link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>; |
| }; |
| |
| &mdss_dp2 { |
| status = "okay"; |
| }; |
| |
| &mdss_dp2_out { |
| link-frequencies = /bits/ 64 <1620000000 2700000000 5400000000 8100000000>; |
| }; |
| |
| &mdss_dp3 { |
| /delete-property/ #sound-dai-cells; |
| |
| pinctrl-0 = <&edp0_hpd_default>; |
| pinctrl-names = "default"; |
| |
| status = "okay"; |
| |
| aux-bus { |
| panel { |
| compatible = "edp-panel"; |
| |
| backlight = <&backlight>; |
| power-supply = <&vreg_edp_3p3>; |
| |
| port { |
| edp_panel_in: endpoint { |
| remote-endpoint = <&mdss_dp3_out>; |
| }; |
| }; |
| }; |
| }; |
| }; |
| |
| &mdss_dp3_out { |
| 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"; |
| }; |
| |
| &pcie3_port0 { |
| vpcie12v-supply = <&vreg_pcie_12v>; |
| vpcie3v3-supply = <&vreg_pcie_3v3>; |
| vpcie3v3aux-supply = <&vreg_pcie_3v3_aux>; |
| |
| reset-gpios = <&tlmm 143 GPIO_ACTIVE_LOW>; |
| wake-gpios = <&tlmm 145 GPIO_ACTIVE_LOW>; |
| }; |
| |
| &pcie4_port0 { |
| reset-gpios = <&tlmm 146 GPIO_ACTIVE_LOW>; |
| wake-gpios = <&tlmm 148 GPIO_ACTIVE_LOW>; |
| |
| 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>; |
| }; |
| }; |
| |
| &pcie5 { |
| vddpe-3v3-supply = <&vreg_wwan>; |
| }; |
| |
| &pcie5_port0 { |
| reset-gpios = <&tlmm 149 GPIO_ACTIVE_LOW>; |
| wake-gpios = <&tlmm 151 GPIO_ACTIVE_LOW>; |
| }; |
| |
| &pcie6a { |
| vddpe-3v3-supply = <&vreg_nvme>; |
| }; |
| |
| &pcie6a_port0 { |
| reset-gpios = <&tlmm 152 GPIO_ACTIVE_LOW>; |
| wake-gpios = <&tlmm 154 GPIO_ACTIVE_LOW>; |
| }; |
| |
| &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 { |
| pcie_x8_12v: pcie-12v-default-state { |
| pins = "gpio8"; |
| function = "normal"; |
| output-enable; |
| output-high; |
| bias-pull-down; |
| power-source = <0>; |
| }; |
| }; |
| |
| &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; |
| }; |
| |
| usb3_en: usb3-en-state { |
| pins = "gpio4"; |
| function = "normal"; |
| qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>; |
| output-enable; |
| power-source = <0>; |
| }; |
| |
| usb6_en: usb6-en-state { |
| pins = "gpio5"; |
| function = "normal"; |
| qcom,drive-strength = <PMIC_GPIO_STRENGTH_HIGH>; |
| output-enable; |
| power-source = <0>; |
| }; |
| }; |
| |
| &pm8550_pwm { |
| status = "okay"; |
| |
| multi-led { |
| color = <LED_COLOR_ID_MULTI>; |
| function = LED_FUNCTION_STATUS; |
| |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| led@1 { |
| reg = <1>; |
| color = <LED_COLOR_ID_RED>; |
| }; |
| |
| led@2 { |
| reg = <2>; |
| color = <LED_COLOR_ID_GREEN>; |
| }; |
| }; |
| }; |
| |
| &pmc8380_3_gpios { |
| edp_bl_en: edp-bl-en-state { |
| pins = "gpio4"; |
| function = "normal"; |
| power-source = <1>; |
| input-disable; |
| output-enable; |
| }; |
| |
| edp_bl_reg_en: edp-bl-reg-en-state { |
| pins = "gpio10"; |
| function = "normal"; |
| }; |
| }; |
| |
| &pmc8380_3_gpios { |
| pm_sde7_aux_3p3_en: pcie-aux-3p3-default-state { |
| pins = "gpio8"; |
| function = "normal"; |
| output-enable; |
| bias-pull-down; |
| power-source = <0>; |
| }; |
| |
| pm_sde7_main_3p3_en: pcie-main-3p3-default-state { |
| pins = "gpio6"; |
| function = "normal"; |
| output-enable; |
| bias-pull-down; |
| power-source = <0>; |
| }; |
| }; |
| |
| &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; |
| }; |
| }; |
| |
| &pmk8550_gpios { |
| edp_bl_pwm: edp-bl-pwm-state { |
| pins = "gpio5"; |
| function = "func3"; |
| }; |
| }; |
| |
| &pmk8550_pwm { |
| 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>; |
| }; |
| |
| &spi11 { |
| status = "okay"; |
| |
| tpm@0 { |
| compatible = "st,st33htpm-spi", "tcg,tpm_tis-spi"; |
| reg = <0>; |
| spi-max-frequency = <20000000>; |
| }; |
| }; |
| |
| &swr0 { |
| status = "okay"; |
| |
| pinctrl-0 = <&wsa_swr_active>; |
| pinctrl-names = "default"; |
| |
| /* WSA8845, Left Woofer */ |
| left_woofer: speaker@0,0 { |
| compatible = "sdw20217020400"; |
| pinctrl-0 = <&spkr_0_sd_n_active>; |
| pinctrl-names = "default"; |
| 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"; |
| pinctrl-0 = <&spkr_1_sd_n_active>; |
| pinctrl-names = "default"; |
| reg = <0 1>; |
| reset-gpios = <&lpass_tlmm 13 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>; |
| pinctrl-names = "default"; |
| |
| /* WSA8845, Right Woofer */ |
| right_woofer: speaker@0,0 { |
| compatible = "sdw20217020400"; |
| pinctrl-0 = <&spkr_2_sd_n_active>; |
| pinctrl-names = "default"; |
| reg = <0 0>; |
| reset-gpios = <&lpass_tlmm 17 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"; |
| pinctrl-0 = <&spkr_3_sd_n_active>; |
| pinctrl-names = "default"; |
| reg = <0 1>; |
| reset-gpios = <&lpass_tlmm 18 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 { |
| edp_reg_en: edp-reg-en-state { |
| pins = "gpio70"; |
| function = "gpio"; |
| drive-strength = <16>; |
| bias-disable; |
| }; |
| |
| eusb3_reset_n: eusb3-reset-n-state { |
| pins = "gpio6"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-disable; |
| output-low; |
| }; |
| |
| eusb5_reset_n: eusb5-reset-n-state { |
| pins = "gpio7"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-pull-up; |
| output-low; |
| }; |
| |
| eusb6_reset_n: eusb6-reset-n-state { |
| pins = "gpio184"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-pull-up; |
| output-low; |
| }; |
| |
| nvme_reg_en: nvme-reg-en-state { |
| pins = "gpio18"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-disable; |
| }; |
| |
| 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; |
| }; |
| |
| 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; |
| }; |
| |
| usb_1_ss0_sbu_default: usb-1-ss0-sbu-state { |
| mode-pins { |
| pins = "gpio166"; |
| function = "gpio"; |
| bias-disable; |
| drive-strength = <2>; |
| output-high; |
| }; |
| |
| oe-n-pins { |
| pins = "gpio168"; |
| function = "gpio"; |
| bias-disable; |
| drive-strength = <2>; |
| }; |
| |
| sel-pins { |
| pins = "gpio167"; |
| function = "gpio"; |
| bias-disable; |
| drive-strength = <2>; |
| }; |
| }; |
| |
| wcd_default: wcd-reset-n-active-state { |
| pins = "gpio191"; |
| function = "gpio"; |
| drive-strength = <16>; |
| bias-disable; |
| output-low; |
| }; |
| |
| wcn_bt_en: wcn-bt-en-state { |
| pins = "gpio116"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-disable; |
| }; |
| |
| wcn_wlan_en: wcn-wlan-en-state { |
| pins = "gpio117"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-disable; |
| }; |
| |
| wwan_sw_en: wwan-sw-en-state { |
| pins = "gpio221"; |
| function = "gpio"; |
| drive-strength = <4>; |
| bias-disable; |
| }; |
| |
| wcn_sw_en: wcn-sw-en-state { |
| pins = "gpio214"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-disable; |
| }; |
| |
| /* Switches USB signal routing between the USB connector and the Wi-Fi card. */ |
| wcn_usb_sw_n: wcn-usb-sw-n-state { |
| pins = "gpio225"; |
| function = "gpio"; |
| drive-strength = <2>; |
| bias-disable; |
| output-high; |
| }; |
| }; |
| |
| &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_dwc3_hs { |
| remote-endpoint = <&pmic_glink_ss0_hs_in>; |
| }; |
| |
| &usb_1_ss0_hsphy { |
| phys = <&smb2360_0_eusb2_repeater>; |
| }; |
| |
| &usb_1_ss0_qmpphy_out { |
| remote-endpoint = <&pmic_glink_ss0_ss_in>; |
| }; |
| |
| &usb_1_ss1_dwc3_hs { |
| remote-endpoint = <&pmic_glink_ss1_hs_in>; |
| }; |
| |
| &usb_1_ss1_hsphy { |
| phys = <&smb2360_1_eusb2_repeater>; |
| }; |
| |
| &usb_1_ss1_qmpphy_out { |
| remote-endpoint = <&retimer_ss1_ss_in>; |
| }; |
| |
| &usb_1_ss2_dwc3_hs { |
| remote-endpoint = <&pmic_glink_ss2_hs_in>; |
| }; |
| |
| &usb_1_ss2_hsphy { |
| phys = <&smb2360_2_eusb2_repeater>; |
| }; |
| |
| &usb_1_ss2_qmpphy_out { |
| remote-endpoint = <&retimer_ss2_ss_in>; |
| }; |
| |
| &usb_2_hsphy { |
| phys = <&eusb5_repeater>; |
| |
| pinctrl-0 = <&wcn_usb_sw_n>; |
| pinctrl-names = "default"; |
| }; |
| |
| &usb_mp_hsphy0 { |
| phys = <&eusb3_repeater>; |
| }; |
| |
| &usb_mp_hsphy1 { |
| phys = <&eusb6_repeater>; |
| }; |