| // SPDX-License-Identifier: BSD-3-Clause |
| /* |
| * Copyright (c) 2024, Qualcomm Innovation Center, Inc. All rights reserved. |
| */ |
| /dts-v1/; |
| |
| #include <dt-bindings/gpio/gpio.h> |
| #include <dt-bindings/regulator/qcom,rpmh-regulator.h> |
| #include <dt-bindings/gpio/gpio.h> |
| #include "qcs615.dtsi" |
| #include "pm8150.dtsi" |
| / { |
| model = "Qualcomm Technologies, Inc. QCS615 Ride"; |
| compatible = "qcom,qcs615-ride", "qcom,qcs615"; |
| chassis-type = "embedded"; |
| |
| aliases { |
| mmc0 = &sdhc_1; |
| mmc1 = &sdhc_2; |
| serial0 = &uart0; |
| }; |
| |
| chosen { |
| stdout-path = "serial0:115200n8"; |
| }; |
| |
| clocks { |
| sleep_clk: sleep-clk { |
| compatible = "fixed-clock"; |
| clock-frequency = <32000>; |
| #clock-cells = <0>; |
| }; |
| |
| xo_board_clk: xo-board-clk { |
| compatible = "fixed-clock"; |
| clock-frequency = <38400000>; |
| #clock-cells = <0>; |
| }; |
| }; |
| |
| regulator-usb2-vbus { |
| compatible = "regulator-fixed"; |
| regulator-name = "USB2_VBUS"; |
| gpio = <&pm8150_gpios 10 GPIO_ACTIVE_HIGH>; |
| pinctrl-0 = <&usb2_en>; |
| pinctrl-names = "default"; |
| enable-active-high; |
| regulator-always-on; |
| }; |
| }; |
| |
| &apps_rsc { |
| regulators-0 { |
| compatible = "qcom,pm8150-rpmh-regulators"; |
| qcom,pmic-id = "a"; |
| |
| vreg_s3a: smps3 { |
| regulator-name = "vreg_s3a"; |
| regulator-min-microvolt = <600000>; |
| regulator-max-microvolt = <650000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_s4a: smps4 { |
| regulator-name = "vreg_s4a"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1829000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_s5a: smps5 { |
| regulator-name = "vreg_s5a"; |
| regulator-min-microvolt = <1896000>; |
| regulator-max-microvolt = <2040000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_s6a: smps6 { |
| regulator-name = "vreg_s6a"; |
| regulator-min-microvolt = <1304000>; |
| regulator-max-microvolt = <1404000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l1a: ldo1 { |
| regulator-name = "vreg_l1a"; |
| regulator-min-microvolt = <488000>; |
| regulator-max-microvolt = <852000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l2a: ldo2 { |
| regulator-name = "vreg_l2a"; |
| regulator-min-microvolt = <1650000>; |
| regulator-max-microvolt = <3100000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l3a: ldo3 { |
| regulator-name = "vreg_l3a"; |
| regulator-min-microvolt = <1000000>; |
| regulator-max-microvolt = <1248000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l5a: ldo5 { |
| regulator-name = "vreg_l5a"; |
| regulator-min-microvolt = <875000>; |
| regulator-max-microvolt = <975000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l7a: ldo7 { |
| regulator-name = "vreg_l7a"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1900000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l8a: ldo8 { |
| regulator-name = "vreg_l8a"; |
| regulator-min-microvolt = <1150000>; |
| regulator-max-microvolt = <1350000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l10a: ldo10 { |
| regulator-name = "vreg_l10a"; |
| regulator-min-microvolt = <2950000>; |
| regulator-max-microvolt = <3312000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l11a: ldo11 { |
| regulator-name = "vreg_l11a"; |
| regulator-min-microvolt = <1232000>; |
| regulator-max-microvolt = <1260000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l12a: ldo12 { |
| regulator-name = "vreg_l12a"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1890000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l13a: ldo13 { |
| regulator-name = "vreg_l13a"; |
| regulator-min-microvolt = <3000000>; |
| regulator-max-microvolt = <3230000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l15a: ldo15 { |
| regulator-name = "vreg_l15a"; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1904000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l16a: ldo16 { |
| regulator-name = "vreg_l16a"; |
| regulator-min-microvolt = <3000000>; |
| regulator-max-microvolt = <3312000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; |
| regulator-allow-set-load; |
| regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM |
| RPMH_REGULATOR_MODE_HPM>; |
| }; |
| |
| vreg_l17a: ldo17 { |
| regulator-name = "vreg_l17a"; |
| regulator-min-microvolt = <2950000>; |
| regulator-max-microvolt = <3312000>; |
| regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; |
| }; |
| }; |
| }; |
| |
| &gcc { |
| clocks = <&rpmhcc RPMH_CXO_CLK>, |
| <&rpmhcc RPMH_CXO_CLK_A>, |
| <&sleep_clk>; |
| }; |
| |
| &pm8150_gpios { |
| usb2_en: usb2-en-state { |
| pins = "gpio10"; |
| function = "normal"; |
| output-enable; |
| power-source = <0>; |
| }; |
| }; |
| |
| &pon_pwrkey { |
| status = "okay"; |
| }; |
| |
| &pon_resin { |
| linux,code = <KEY_VOLUMEDOWN>; |
| |
| status = "okay"; |
| }; |
| |
| &qupv3_id_0 { |
| status = "okay"; |
| }; |
| |
| &rpmhcc { |
| clocks = <&xo_board_clk>; |
| }; |
| |
| &sdhc_1 { |
| pinctrl-0 = <&sdc1_state_on>; |
| pinctrl-1 = <&sdc1_state_off>; |
| pinctrl-names = "default", "sleep"; |
| |
| bus-width = <8>; |
| mmc-ddr-1_8v; |
| mmc-hs200-1_8v; |
| mmc-hs400-1_8v; |
| mmc-hs400-enhanced-strobe; |
| vmmc-supply = <&vreg_l17a>; |
| vqmmc-supply = <&vreg_s4a>; |
| |
| non-removable; |
| no-sd; |
| no-sdio; |
| |
| status = "okay"; |
| }; |
| |
| &sdhc_2 { |
| pinctrl-0 = <&sdc2_state_on>; |
| pinctrl-1 = <&sdc2_state_off>; |
| pinctrl-names = "default", "sleep"; |
| |
| bus-width = <4>; |
| cd-gpios = <&tlmm 99 GPIO_ACTIVE_LOW>; |
| |
| vmmc-supply = <&vreg_l10a>; |
| vqmmc-supply = <&vreg_s4a>; |
| |
| status = "okay"; |
| }; |
| |
| &uart0 { |
| status = "okay"; |
| }; |
| |
| &usb_1_hsphy { |
| vdd-supply = <&vreg_l5a>; |
| vdda-pll-supply = <&vreg_l12a>; |
| vdda-phy-dpdm-supply = <&vreg_l13a>; |
| |
| status = "okay"; |
| }; |
| |
| &usb_qmpphy { |
| vdda-phy-supply = <&vreg_l5a>; |
| vdda-pll-supply = <&vreg_l12a>; |
| |
| status = "okay"; |
| }; |
| |
| &usb_1 { |
| status = "okay"; |
| }; |
| |
| &usb_1_dwc3 { |
| dr_mode = "peripheral"; |
| }; |
| |
| &usb_hsphy_2 { |
| vdd-supply = <&vreg_l5a>; |
| vdda-pll-supply = <&vreg_l12a>; |
| vdda-phy-dpdm-supply = <&vreg_l13a>; |
| |
| status = "okay"; |
| }; |
| |
| &usb_2 { |
| status = "okay"; |
| }; |
| |
| &usb_2_dwc3 { |
| dr_mode = "host"; |
| }; |
| |
| &ufs_mem_hc { |
| reset-gpios = <&tlmm 123 GPIO_ACTIVE_LOW>; |
| vcc-supply = <&vreg_l17a>; |
| vcc-max-microamp = <600000>; |
| vccq2-supply = <&vreg_s4a>; |
| vccq2-max-microamp = <600000>; |
| |
| status = "okay"; |
| }; |
| |
| &ufs_mem_phy { |
| vdda-phy-supply = <&vreg_l5a>; |
| vdda-pll-supply = <&vreg_l12a>; |
| |
| status = "okay"; |
| }; |
| |
| &watchdog { |
| clocks = <&sleep_clk>; |
| }; |