1d1fdad99SLijuan Gao// SPDX-License-Identifier: BSD-3-Clause 2d1fdad99SLijuan Gao/* 3d1fdad99SLijuan Gao * Copyright (c) 2024, Qualcomm Innovation Center, Inc. All rights reserved. 4d1fdad99SLijuan Gao */ 5d1fdad99SLijuan Gao/dts-v1/; 6d1fdad99SLijuan Gao 7b8993bd7SKrishna Kurapati#include <dt-bindings/gpio/gpio.h> 8d1fdad99SLijuan Gao#include <dt-bindings/regulator/qcom,rpmh-regulator.h> 950f54d4fSYuanjie Yang#include <dt-bindings/gpio/gpio.h> 10d1fdad99SLijuan Gao#include "qcs615.dtsi" 1109cd0cb2STingguo Cheng#include "pm8150.dtsi" 12d1fdad99SLijuan Gao/ { 13d1fdad99SLijuan Gao model = "Qualcomm Technologies, Inc. QCS615 Ride"; 14d1fdad99SLijuan Gao compatible = "qcom,qcs615-ride", "qcom,qcs615"; 15d1fdad99SLijuan Gao chassis-type = "embedded"; 16d1fdad99SLijuan Gao 17d1fdad99SLijuan Gao aliases { 1850f54d4fSYuanjie Yang mmc0 = &sdhc_1; 1950f54d4fSYuanjie Yang mmc1 = &sdhc_2; 20d1fdad99SLijuan Gao serial0 = &uart0; 21d1fdad99SLijuan Gao }; 22d1fdad99SLijuan Gao 23d1fdad99SLijuan Gao chosen { 24d1fdad99SLijuan Gao stdout-path = "serial0:115200n8"; 25d1fdad99SLijuan Gao }; 26d1fdad99SLijuan Gao 27d1fdad99SLijuan Gao clocks { 28d1fdad99SLijuan Gao sleep_clk: sleep-clk { 29d1fdad99SLijuan Gao compatible = "fixed-clock"; 30d1fdad99SLijuan Gao clock-frequency = <32000>; 31d1fdad99SLijuan Gao #clock-cells = <0>; 32d1fdad99SLijuan Gao }; 33d1fdad99SLijuan Gao 34d1fdad99SLijuan Gao xo_board_clk: xo-board-clk { 35d1fdad99SLijuan Gao compatible = "fixed-clock"; 36d1fdad99SLijuan Gao clock-frequency = <38400000>; 37d1fdad99SLijuan Gao #clock-cells = <0>; 38d1fdad99SLijuan Gao }; 39d1fdad99SLijuan Gao }; 40b8993bd7SKrishna Kurapati 41b8993bd7SKrishna Kurapati regulator-usb2-vbus { 42b8993bd7SKrishna Kurapati compatible = "regulator-fixed"; 43b8993bd7SKrishna Kurapati regulator-name = "USB2_VBUS"; 44b8993bd7SKrishna Kurapati gpio = <&pm8150_gpios 10 GPIO_ACTIVE_HIGH>; 45b8993bd7SKrishna Kurapati pinctrl-0 = <&usb2_en>; 46b8993bd7SKrishna Kurapati pinctrl-names = "default"; 47b8993bd7SKrishna Kurapati enable-active-high; 48b8993bd7SKrishna Kurapati regulator-always-on; 49b8993bd7SKrishna Kurapati }; 50d1fdad99SLijuan Gao}; 51d1fdad99SLijuan Gao 52d1fdad99SLijuan Gao&apps_rsc { 53d1fdad99SLijuan Gao regulators-0 { 54d1fdad99SLijuan Gao compatible = "qcom,pm8150-rpmh-regulators"; 55d1fdad99SLijuan Gao qcom,pmic-id = "a"; 56d1fdad99SLijuan Gao 57d1fdad99SLijuan Gao vreg_s3a: smps3 { 58d1fdad99SLijuan Gao regulator-name = "vreg_s3a"; 59d1fdad99SLijuan Gao regulator-min-microvolt = <600000>; 60d1fdad99SLijuan Gao regulator-max-microvolt = <650000>; 61d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 62d1fdad99SLijuan Gao }; 63d1fdad99SLijuan Gao 64d1fdad99SLijuan Gao vreg_s4a: smps4 { 65d1fdad99SLijuan Gao regulator-name = "vreg_s4a"; 66d1fdad99SLijuan Gao regulator-min-microvolt = <1800000>; 67d1fdad99SLijuan Gao regulator-max-microvolt = <1829000>; 68d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 69d1fdad99SLijuan Gao }; 70d1fdad99SLijuan Gao 71d1fdad99SLijuan Gao vreg_s5a: smps5 { 72d1fdad99SLijuan Gao regulator-name = "vreg_s5a"; 73d1fdad99SLijuan Gao regulator-min-microvolt = <1896000>; 74d1fdad99SLijuan Gao regulator-max-microvolt = <2040000>; 75d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 76d1fdad99SLijuan Gao }; 77d1fdad99SLijuan Gao 78d1fdad99SLijuan Gao vreg_s6a: smps6 { 79d1fdad99SLijuan Gao regulator-name = "vreg_s6a"; 80d1fdad99SLijuan Gao regulator-min-microvolt = <1304000>; 81d1fdad99SLijuan Gao regulator-max-microvolt = <1404000>; 82d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 83d1fdad99SLijuan Gao }; 84d1fdad99SLijuan Gao 85d1fdad99SLijuan Gao vreg_l1a: ldo1 { 86d1fdad99SLijuan Gao regulator-name = "vreg_l1a"; 87d1fdad99SLijuan Gao regulator-min-microvolt = <488000>; 88d1fdad99SLijuan Gao regulator-max-microvolt = <852000>; 89d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; 90d1fdad99SLijuan Gao regulator-allow-set-load; 91d1fdad99SLijuan Gao regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 92d1fdad99SLijuan Gao RPMH_REGULATOR_MODE_HPM>; 93d1fdad99SLijuan Gao }; 94d1fdad99SLijuan Gao 95d1fdad99SLijuan Gao vreg_l2a: ldo2 { 96d1fdad99SLijuan Gao regulator-name = "vreg_l2a"; 97d1fdad99SLijuan Gao regulator-min-microvolt = <1650000>; 98d1fdad99SLijuan Gao regulator-max-microvolt = <3100000>; 99d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; 100d1fdad99SLijuan Gao regulator-allow-set-load; 101d1fdad99SLijuan Gao regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 102d1fdad99SLijuan Gao RPMH_REGULATOR_MODE_HPM>; 103d1fdad99SLijuan Gao }; 104d1fdad99SLijuan Gao 105d1fdad99SLijuan Gao vreg_l3a: ldo3 { 106d1fdad99SLijuan Gao regulator-name = "vreg_l3a"; 107d1fdad99SLijuan Gao regulator-min-microvolt = <1000000>; 108d1fdad99SLijuan Gao regulator-max-microvolt = <1248000>; 109d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; 110d1fdad99SLijuan Gao regulator-allow-set-load; 111d1fdad99SLijuan Gao regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 112d1fdad99SLijuan Gao RPMH_REGULATOR_MODE_HPM>; 113d1fdad99SLijuan Gao }; 114d1fdad99SLijuan Gao 115d1fdad99SLijuan Gao vreg_l5a: ldo5 { 116d1fdad99SLijuan Gao regulator-name = "vreg_l5a"; 117d1fdad99SLijuan Gao regulator-min-microvolt = <875000>; 118d1fdad99SLijuan Gao regulator-max-microvolt = <975000>; 119d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 120d1fdad99SLijuan Gao regulator-allow-set-load; 121d1fdad99SLijuan Gao regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 122d1fdad99SLijuan Gao RPMH_REGULATOR_MODE_HPM>; 123d1fdad99SLijuan Gao }; 124d1fdad99SLijuan Gao 125d1fdad99SLijuan Gao vreg_l7a: ldo7 { 126d1fdad99SLijuan Gao regulator-name = "vreg_l7a"; 127d1fdad99SLijuan Gao regulator-min-microvolt = <1800000>; 128d1fdad99SLijuan Gao regulator-max-microvolt = <1900000>; 129d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 130d1fdad99SLijuan Gao regulator-allow-set-load; 131d1fdad99SLijuan Gao regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 132d1fdad99SLijuan Gao RPMH_REGULATOR_MODE_HPM>; 133d1fdad99SLijuan Gao }; 134d1fdad99SLijuan Gao 135d1fdad99SLijuan Gao vreg_l8a: ldo8 { 136d1fdad99SLijuan Gao regulator-name = "vreg_l8a"; 137d1fdad99SLijuan Gao regulator-min-microvolt = <1150000>; 138d1fdad99SLijuan Gao regulator-max-microvolt = <1350000>; 139d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 140d1fdad99SLijuan Gao regulator-allow-set-load; 141d1fdad99SLijuan Gao regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 142d1fdad99SLijuan Gao RPMH_REGULATOR_MODE_HPM>; 143d1fdad99SLijuan Gao }; 144d1fdad99SLijuan Gao 145d1fdad99SLijuan Gao vreg_l10a: ldo10 { 146d1fdad99SLijuan Gao regulator-name = "vreg_l10a"; 147d1fdad99SLijuan Gao regulator-min-microvolt = <2950000>; 148d1fdad99SLijuan Gao regulator-max-microvolt = <3312000>; 149d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 150d1fdad99SLijuan Gao regulator-allow-set-load; 151d1fdad99SLijuan Gao regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 152d1fdad99SLijuan Gao RPMH_REGULATOR_MODE_HPM>; 153d1fdad99SLijuan Gao }; 154d1fdad99SLijuan Gao 155d1fdad99SLijuan Gao vreg_l11a: ldo11 { 156d1fdad99SLijuan Gao regulator-name = "vreg_l11a"; 157d1fdad99SLijuan Gao regulator-min-microvolt = <1232000>; 158d1fdad99SLijuan Gao regulator-max-microvolt = <1260000>; 159d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; 160d1fdad99SLijuan Gao regulator-allow-set-load; 161d1fdad99SLijuan Gao regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 162d1fdad99SLijuan Gao RPMH_REGULATOR_MODE_HPM>; 163d1fdad99SLijuan Gao }; 164d1fdad99SLijuan Gao 165d1fdad99SLijuan Gao vreg_l12a: ldo12 { 166d1fdad99SLijuan Gao regulator-name = "vreg_l12a"; 167d1fdad99SLijuan Gao regulator-min-microvolt = <1800000>; 168d1fdad99SLijuan Gao regulator-max-microvolt = <1890000>; 169d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; 170d1fdad99SLijuan Gao regulator-allow-set-load; 171d1fdad99SLijuan Gao regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 172d1fdad99SLijuan Gao RPMH_REGULATOR_MODE_HPM>; 173d1fdad99SLijuan Gao }; 174d1fdad99SLijuan Gao 175d1fdad99SLijuan Gao vreg_l13a: ldo13 { 176d1fdad99SLijuan Gao regulator-name = "vreg_l13a"; 177d1fdad99SLijuan Gao regulator-min-microvolt = <3000000>; 178d1fdad99SLijuan Gao regulator-max-microvolt = <3230000>; 179d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; 180d1fdad99SLijuan Gao regulator-allow-set-load; 181d1fdad99SLijuan Gao regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 182d1fdad99SLijuan Gao RPMH_REGULATOR_MODE_HPM>; 183d1fdad99SLijuan Gao }; 184d1fdad99SLijuan Gao 185d1fdad99SLijuan Gao vreg_l15a: ldo15 { 186d1fdad99SLijuan Gao regulator-name = "vreg_l15a"; 187d1fdad99SLijuan Gao regulator-min-microvolt = <1800000>; 188d1fdad99SLijuan Gao regulator-max-microvolt = <1904000>; 189d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; 190d1fdad99SLijuan Gao regulator-allow-set-load; 191d1fdad99SLijuan Gao regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 192d1fdad99SLijuan Gao RPMH_REGULATOR_MODE_HPM>; 193d1fdad99SLijuan Gao }; 194d1fdad99SLijuan Gao 195d1fdad99SLijuan Gao vreg_l16a: ldo16 { 196d1fdad99SLijuan Gao regulator-name = "vreg_l16a"; 197d1fdad99SLijuan Gao regulator-min-microvolt = <3000000>; 198d1fdad99SLijuan Gao regulator-max-microvolt = <3312000>; 199d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_LPM>; 200d1fdad99SLijuan Gao regulator-allow-set-load; 201d1fdad99SLijuan Gao regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM 202d1fdad99SLijuan Gao RPMH_REGULATOR_MODE_HPM>; 203d1fdad99SLijuan Gao }; 204d1fdad99SLijuan Gao 205d1fdad99SLijuan Gao vreg_l17a: ldo17 { 206d1fdad99SLijuan Gao regulator-name = "vreg_l17a"; 207d1fdad99SLijuan Gao regulator-min-microvolt = <2950000>; 208d1fdad99SLijuan Gao regulator-max-microvolt = <3312000>; 209d1fdad99SLijuan Gao regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>; 210d1fdad99SLijuan Gao }; 211d1fdad99SLijuan Gao }; 212d1fdad99SLijuan Gao}; 213d1fdad99SLijuan Gao 214d1fdad99SLijuan Gao&gcc { 215d1fdad99SLijuan Gao clocks = <&rpmhcc RPMH_CXO_CLK>, 216d1fdad99SLijuan Gao <&rpmhcc RPMH_CXO_CLK_A>, 217d1fdad99SLijuan Gao <&sleep_clk>; 218d1fdad99SLijuan Gao}; 219d1fdad99SLijuan Gao 220b8993bd7SKrishna Kurapati&pm8150_gpios { 221b8993bd7SKrishna Kurapati usb2_en: usb2-en-state { 222b8993bd7SKrishna Kurapati pins = "gpio10"; 223b8993bd7SKrishna Kurapati function = "normal"; 224b8993bd7SKrishna Kurapati output-enable; 225b8993bd7SKrishna Kurapati power-source = <0>; 226b8993bd7SKrishna Kurapati }; 227b8993bd7SKrishna Kurapati}; 228b8993bd7SKrishna Kurapati 22909cd0cb2STingguo Cheng&pon_pwrkey { 23009cd0cb2STingguo Cheng status = "okay"; 23109cd0cb2STingguo Cheng}; 23209cd0cb2STingguo Cheng 23309cd0cb2STingguo Cheng&pon_resin { 23409cd0cb2STingguo Cheng linux,code = <KEY_VOLUMEDOWN>; 23509cd0cb2STingguo Cheng 23609cd0cb2STingguo Cheng status = "okay"; 23709cd0cb2STingguo Cheng}; 23809cd0cb2STingguo Cheng 239d1fdad99SLijuan Gao&qupv3_id_0 { 240d1fdad99SLijuan Gao status = "okay"; 241d1fdad99SLijuan Gao}; 242d1fdad99SLijuan Gao 243*47d59463SLijuan Gao&remoteproc_adsp { 244*47d59463SLijuan Gao firmware-name = "qcom/qcs615/adsp.mbn"; 245*47d59463SLijuan Gao 246*47d59463SLijuan Gao status = "okay"; 247*47d59463SLijuan Gao}; 248*47d59463SLijuan Gao 249*47d59463SLijuan Gao&remoteproc_cdsp { 250*47d59463SLijuan Gao firmware-name = "qcom/qcs615/cdsp.mbn"; 251*47d59463SLijuan Gao 252*47d59463SLijuan Gao status = "okay"; 253*47d59463SLijuan Gao}; 254*47d59463SLijuan Gao 255d1fdad99SLijuan Gao&rpmhcc { 256d1fdad99SLijuan Gao clocks = <&xo_board_clk>; 257d1fdad99SLijuan Gao}; 258d1fdad99SLijuan Gao 25950f54d4fSYuanjie Yang&sdhc_1 { 26050f54d4fSYuanjie Yang pinctrl-0 = <&sdc1_state_on>; 26150f54d4fSYuanjie Yang pinctrl-1 = <&sdc1_state_off>; 26250f54d4fSYuanjie Yang pinctrl-names = "default", "sleep"; 26350f54d4fSYuanjie Yang 26450f54d4fSYuanjie Yang bus-width = <8>; 26550f54d4fSYuanjie Yang mmc-ddr-1_8v; 26650f54d4fSYuanjie Yang mmc-hs200-1_8v; 26750f54d4fSYuanjie Yang mmc-hs400-1_8v; 26850f54d4fSYuanjie Yang mmc-hs400-enhanced-strobe; 26950f54d4fSYuanjie Yang vmmc-supply = <&vreg_l17a>; 27050f54d4fSYuanjie Yang vqmmc-supply = <&vreg_s4a>; 27150f54d4fSYuanjie Yang 27250f54d4fSYuanjie Yang non-removable; 27350f54d4fSYuanjie Yang no-sd; 27450f54d4fSYuanjie Yang no-sdio; 27550f54d4fSYuanjie Yang 27650f54d4fSYuanjie Yang status = "okay"; 27750f54d4fSYuanjie Yang}; 27850f54d4fSYuanjie Yang 27950f54d4fSYuanjie Yang&sdhc_2 { 28050f54d4fSYuanjie Yang pinctrl-0 = <&sdc2_state_on>; 28150f54d4fSYuanjie Yang pinctrl-1 = <&sdc2_state_off>; 28250f54d4fSYuanjie Yang pinctrl-names = "default", "sleep"; 28350f54d4fSYuanjie Yang 28450f54d4fSYuanjie Yang bus-width = <4>; 28550f54d4fSYuanjie Yang cd-gpios = <&tlmm 99 GPIO_ACTIVE_LOW>; 28650f54d4fSYuanjie Yang 28750f54d4fSYuanjie Yang vmmc-supply = <&vreg_l10a>; 28850f54d4fSYuanjie Yang vqmmc-supply = <&vreg_s4a>; 28950f54d4fSYuanjie Yang 29050f54d4fSYuanjie Yang status = "okay"; 29150f54d4fSYuanjie Yang}; 29250f54d4fSYuanjie Yang 293d1fdad99SLijuan Gao&uart0 { 294d1fdad99SLijuan Gao status = "okay"; 295d1fdad99SLijuan Gao}; 296d1fdad99SLijuan Gao 2975c66811cSKrishna Kurapati&usb_1_hsphy { 2985c66811cSKrishna Kurapati vdd-supply = <&vreg_l5a>; 2995c66811cSKrishna Kurapati vdda-pll-supply = <&vreg_l12a>; 3005c66811cSKrishna Kurapati vdda-phy-dpdm-supply = <&vreg_l13a>; 3015c66811cSKrishna Kurapati 3025c66811cSKrishna Kurapati status = "okay"; 3035c66811cSKrishna Kurapati}; 3045c66811cSKrishna Kurapati 3055c66811cSKrishna Kurapati&usb_qmpphy { 3065c66811cSKrishna Kurapati vdda-phy-supply = <&vreg_l5a>; 3075c66811cSKrishna Kurapati vdda-pll-supply = <&vreg_l12a>; 3085c66811cSKrishna Kurapati 3095c66811cSKrishna Kurapati status = "okay"; 3105c66811cSKrishna Kurapati}; 3115c66811cSKrishna Kurapati 3125c66811cSKrishna Kurapati&usb_1 { 3135c66811cSKrishna Kurapati status = "okay"; 3145c66811cSKrishna Kurapati}; 3155c66811cSKrishna Kurapati 3165c66811cSKrishna Kurapati&usb_1_dwc3 { 3175c66811cSKrishna Kurapati dr_mode = "peripheral"; 3185c66811cSKrishna Kurapati}; 3195c66811cSKrishna Kurapati 320b8993bd7SKrishna Kurapati&usb_hsphy_2 { 321b8993bd7SKrishna Kurapati vdd-supply = <&vreg_l5a>; 322b8993bd7SKrishna Kurapati vdda-pll-supply = <&vreg_l12a>; 323b8993bd7SKrishna Kurapati vdda-phy-dpdm-supply = <&vreg_l13a>; 324b8993bd7SKrishna Kurapati 325b8993bd7SKrishna Kurapati status = "okay"; 326b8993bd7SKrishna Kurapati}; 327b8993bd7SKrishna Kurapati 328b8993bd7SKrishna Kurapati&usb_2 { 329b8993bd7SKrishna Kurapati status = "okay"; 330b8993bd7SKrishna Kurapati}; 331b8993bd7SKrishna Kurapati 332b8993bd7SKrishna Kurapati&usb_2_dwc3 { 333b8993bd7SKrishna Kurapati dr_mode = "host"; 334b8993bd7SKrishna Kurapati}; 335b8993bd7SKrishna Kurapati 3364b120ef6SSayali Lokhande&ufs_mem_hc { 3374b120ef6SSayali Lokhande reset-gpios = <&tlmm 123 GPIO_ACTIVE_LOW>; 3384b120ef6SSayali Lokhande vcc-supply = <&vreg_l17a>; 3394b120ef6SSayali Lokhande vcc-max-microamp = <600000>; 3404b120ef6SSayali Lokhande vccq2-supply = <&vreg_s4a>; 3414b120ef6SSayali Lokhande vccq2-max-microamp = <600000>; 3424b120ef6SSayali Lokhande 3434b120ef6SSayali Lokhande status = "okay"; 3444b120ef6SSayali Lokhande}; 3454b120ef6SSayali Lokhande 3464b120ef6SSayali Lokhande&ufs_mem_phy { 3474b120ef6SSayali Lokhande vdda-phy-supply = <&vreg_l5a>; 3484b120ef6SSayali Lokhande vdda-pll-supply = <&vreg_l12a>; 3494b120ef6SSayali Lokhande 3504b120ef6SSayali Lokhande status = "okay"; 3514b120ef6SSayali Lokhande}; 3524b120ef6SSayali Lokhande 353d1fdad99SLijuan Gao&watchdog { 354d1fdad99SLijuan Gao clocks = <&sleep_clk>; 355d1fdad99SLijuan Gao}; 356