Files
android_kernel_samsung_sm87…/qcom/sun-rumi.dtsi
Xubin Bai 6c074a4b4c ARM: dts: qcom: keep VDD_MMCX and VDD_MXC supplies always on for Sun RUMI
Set regulator-always-on for VDD_MMCX and VDD_MXC on Sun
RUMI. This ensures that clock controller register values
are maintained since RUMI isn't simulating register
retention across VDD_MMCX or VDD_MXC power collapse.

Change-Id: I5adaa243066df64f6f04f569a05eb124734d7611
Signed-off-by: Xubin Bai <quic_xubibai@quicinc.com>
2023-09-05 10:57:57 -07:00

135 lines
2.5 KiB
Plaintext

// SPDX-License-Identifier: BSD-3-Clause
/*
* Copyright (c) 2023 Qualcomm Innovation Center, Inc. All rights reserved.
*/
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/clock/qcom,gcc-pineapple.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator-levels.h>
&reserved_memory {
spintable: spintable_region@90000000 {
no-map;
reg = <0x0 0x90000000 0x0 0x100000>;
};
};
&arch_timer {
clock-frequency = <500000>;
};
&memtimer {
clock-frequency = <500000>;
};
&qupv3_se7_2uart {
qcom,rumi_platform;
};
&soc {
usb_nop_phy: usb_nop_phy {
compatible = "usb-nop-xceiv";
};
usb_emuphy: phy@a784000 {
compatible = "qcom,usb-emu-phy";
reg = <0x0a784000 0x9500>;
qcom,emu-init-seq = <0xfffff 0x4
0xffff0 0x4
0x100000 0x20
0x0 0x20
0x000101F0 0x20
0x00100000 0x3c
0x0 0x3c
0x0 0x4>;
};
};
&usb0 {
dwc3@a600000 {
usb-phy = <&usb_emuphy>, <&usb_nop_phy>;
dr_mode = "peripheral";
maximum-speed = "high-speed";
};
};
&ufsphy_mem {
compatible = "qcom,ufs-phy-qrbtc-sdm845";
/* VDDA_UFS_CORE */
vdda-phy-supply = <&pm_v6j_l1>;
vdda-phy-max-microamp = <211000>;
/* VDDA_UFS_0_1P2 */
vdda-pll-supply = <&pm_v8g_l3>;
vdda-pll-max-microamp = <18300>;
/* Phy GDSC for VDD_MX, always on */
vdd-phy-gdsc-supply = <&gcc_ufs_mem_phy_gdsc>;
/* Qref power supply, Refer Qref diagram */
vdda-qref-supply = <&pm_v8i_l3>;
vdda-qref-max-microamp = <64500>;
status = "ok";
};
&ufshc_mem {
limit-tx-hs-gear = <1>;
limit-rx-hs-gear = <1>;
limit-rate = <2>; /* HS Rate-B */
rpm-level = <0>;
spm-level = <0>;
vdd-hba-supply = <&gcc_ufs_phy_gdsc>;
vcc-supply = <&pm_humu_l17>;
vcc-max-microamp = <1300000>;
vccq-supply = <&pm_v8d_l1>;
vccq-max-microamp = <750000>;
qcom,vddp-ref-clk-supply = <&pm_v8i_l2>;
qcom,vddp-ref-clk-max-microamp = <100>;
qcom,vccq-parent-supply = <&pm_v8i_s7>;
qcom,vccq-parent-max-microamp = <210000>;
vdda-qref-supply = <&pm_v8i_l3>;
vdda-qref-max-microamp = <30000>;
qcom,disable-lpm;
status = "ok";
};
&sdhc_2 {
status = "ok";
vdd-supply = <&pm_humu_l9>;
qcom,vdd-voltage-level = <2950000 2960000>;
qcom,vdd-current-level = <0 800000>;
vdd-io-supply = <&pm_humu_l8>;
qcom,vdd-io-voltage-level = <1800000 2960000>;
qcom,vdd-io-current-level = <0 5600>;
pinctrl-names = "default", "sleep";
pinctrl-0 = <&sdc2_on>;
pinctrl-1 = <&sdc2_off>;
cd-gpios = <&tlmm 55 GPIO_ACTIVE_LOW>;
resets = <&gcc GCC_SDCC2_BCR>;
reset-names = "core_reset";
};
&VDD_MMCX_LEVEL {
regulator-always-on;
};
&VDD_MXC_LEVEL {
regulator-always-on;
regulator-min-microvolt = <RPMH_REGULATOR_LEVEL_MIN_SVS>;
};