linux-loongson/arch/arm64/boot/dts/qcom/sm7125-xiaomi-common.dtsi
Danila Tikhonov 0bdadbf5c6 arm64: dts: qcom: sm7125-xiaomi-common: Add reset-gpios for ufs_mem_hc
The SC7180/SM7125 SoCs have a special pin for UFS reset. Generally, this
pin is the same for all devices on the same SoC because it is hardcoded
in the pinctrl driver. Therefore, it might seem appropriate to add this
pin configuration in sc7180.dtsi. However, this pin is defined in the
device-specific DTS files instead of the SoC-level DTS files in all
Qualcomm DTS. To maintain consistency with this approach, we will follow
the same style.

Add reset-gpios to ufs_mem_hc.

Signed-off-by: Danila Tikhonov <danila@jiaxyga.com>
Link: https://lore.kernel.org/r/20240731182412.27966-1-danila@jiaxyga.com
Signed-off-by: Bjorn Andersson <andersson@kernel.org>
2024-08-14 21:48:17 -05:00

452 lines
9.8 KiB
Plaintext

// SPDX-License-Identifier: GPL-2.0
/*
* Copyright (c) 2021, The Linux Foundation. All rights reserved.
*/
/dts-v1/;
#include <dt-bindings/arm/qcom,ids.h>
#include <dt-bindings/firmware/qcom,scm.h>
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/regulator/qcom,rpmh-regulator.h>
#include "sm7125.dtsi"
#include "pm6150.dtsi"
#include "pm6150l.dtsi"
/delete-node/ &ipa_fw_mem;
/delete-node/ &rmtfs_mem;
/ {
chassis-type = "handset";
qcom,msm-id = <QCOM_ID_SM7125 0>;
chosen {
#address-cells = <2>;
#size-cells = <2>;
ranges;
framebuffer@9c000000 {
compatible = "simple-framebuffer";
reg = <0x0 0x9c000000 0x0 (1080 * 2400 * 4)>;
width = <1080>;
height = <2400>;
stride = <(1080 * 4)>;
format = "a8r8g8b8";
clocks = <&gcc GCC_DISP_HF_AXI_CLK>;
};
};
gpio_keys: gpio-keys {
compatible = "gpio-keys";
key-vol-up {
label = "Volume Up";
linux,code = <KEY_VOLUMEUP>;
gpios = <&pm6150l_gpios 2 GPIO_ACTIVE_LOW>;
debounce-interval = <15>;
linux,can-disable;
wakeup-source;
};
};
reserved-memory {
mpss_mem: memory@86000000 {
reg = <0x0 0x86000000 0x0 0x8400000>;
no-map;
};
venus_mem: memory@8ee00000 {
reg = <0x0 0x8ee00000 0x0 0x500000>;
no-map;
};
cdsp_mem: memory@8f300000 {
reg = <0x0 0x8f300000 0x0 0x1e00000>;
no-map;
};
adsp_mem: memory@91100000 {
reg = <0x0 0x91100000 0x0 0x2800000>;
no-map;
};
wlan_mem: memory@93900000 {
reg = <0x0 0x93900000 0x0 0x200000>;
no-map;
};
ipa_fw_mem: memory@93b00000 {
reg = <0x0 0x93b00000 0x0 0x10000>;
no-map;
};
gpu_mem: memory@93b15000 {
reg = <0x0 0x93b15000 0x0 0x2000>;
no-map;
};
cont_splash_mem: memory@9c000000 {
reg = <0x0 0x9c000000 0x0 (1080 * 2400 * 4)>;
no-map;
};
pstore_mem: ramoops@9d800000 {
compatible = "ramoops";
reg = <0x0 0x9d800000 0x0 0x400000>;
record-size = <0x80000>;
pmsg-size = <0x200000>;
console-size = <0x100000>;
};
rmtfs_mem: memory@fa601000 {
compatible = "qcom,rmtfs-mem";
reg = <0x0 0xfa601000 0x0 0x200000>;
no-map;
qcom,client-id = <1>;
qcom,vmid = <QCOM_SCM_VMID_MSS_MSA>;
};
};
};
&apps_rsc {
regulators-0 {
compatible = "qcom,pm6150-rpmh-regulators";
qcom,pmic-id = "a";
vreg_s1a_1p1: smps1 {
regulator-min-microvolt = <1128000>;
regulator-max-microvolt = <1128000>;
};
vreg_s4a_1p0: smps4 {
regulator-min-microvolt = <824000>;
regulator-max-microvolt = <1120000>;
};
vreg_s5a_2p0: smps5 {
regulator-min-microvolt = <1744000>;
regulator-max-microvolt = <2040000>;
};
vreg_l1a_1p2: ldo1 {
regulator-min-microvolt = <1178000>;
regulator-max-microvolt = <1256000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l2a_1p0: ldo2 {
regulator-min-microvolt = <944000>;
regulator-max-microvolt = <1056000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l3a_1p0: ldo3 {
regulator-min-microvolt = <968000>;
regulator-max-microvolt = <1064000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l4a_0p88: ldo4 {
regulator-min-microvolt = <824000>;
regulator-max-microvolt = <928000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
regulator-allow-set-load;
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
};
vreg_l5a_2p7: ldo5 {
regulator-min-microvolt = <2496000>;
regulator-max-microvolt = <3000000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l6a_0p6: ldo6 {
regulator-min-microvolt = <568000>;
regulator-max-microvolt = <648000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l9a_0p664: ldo9 {
regulator-min-microvolt = <488000>;
regulator-max-microvolt = <800000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l10a_1p8: ldo10 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1832000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l11a_1p8: ldo11 {
regulator-min-microvolt = <1696000>;
regulator-max-microvolt = <1904000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l12a_1p8: ldo12 {
regulator-min-microvolt = <1696000>;
regulator-max-microvolt = <1952000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
regulator-allow-set-load;
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
};
vreg_l13a_1p8: ldo13 {
regulator-min-microvolt = <1696000>;
regulator-max-microvolt = <1904000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l14a_1p8: ldo14 {
regulator-min-microvolt = <1728000>;
regulator-max-microvolt = <1832000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l15a_1p8: ldo15 {
regulator-min-microvolt = <1696000>;
regulator-max-microvolt = <1904000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l16a_2p7: ldo16 {
regulator-min-microvolt = <2496000>;
regulator-max-microvolt = <3304000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l17a_3p1: ldo17 {
regulator-min-microvolt = <2920000>;
regulator-max-microvolt = <3232000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l18a_3p0: ldo18 {
regulator-min-microvolt = <1696000>;
regulator-max-microvolt = <1904000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l19a_3p0: ldo19 {
regulator-min-microvolt = <2696000>;
regulator-max-microvolt = <3304000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
regulator-allow-set-load;
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
};
};
regulators-1 {
compatible = "qcom,pm6150l-rpmh-regulators";
qcom,pmic-id = "c";
vreg_s8c_1p3: smps8 {
regulator-min-microvolt = <1120000>;
regulator-max-microvolt = <1408000>;
};
vreg_l1c_1p8: ldo1 {
regulator-min-microvolt = <1616000>;
regulator-max-microvolt = <1984000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l2c_1p3: ldo2 {
regulator-min-microvolt = <1168000>;
regulator-max-microvolt = <1304000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l3c_1p23: ldo3 {
regulator-min-microvolt = <1144000>;
regulator-max-microvolt = <1304000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
regulator-allow-set-load;
regulator-allowed-modes = <RPMH_REGULATOR_MODE_LPM
RPMH_REGULATOR_MODE_HPM>;
};
vreg_l4c_1p8: ldo4 {
regulator-min-microvolt = <1648000>;
regulator-max-microvolt = <3304000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l5c_1p8: ldo5 {
regulator-min-microvolt = <1648000>;
regulator-max-microvolt = <3304000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l6c_3p0: ldo6 {
regulator-min-microvolt = <1648000>;
regulator-max-microvolt = <3304000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l7c_3p0: ldo7 {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3312000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l8c_1p8: ldo8 {
regulator-min-microvolt = <1800000>;
regulator-max-microvolt = <1904000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l9c_2p9: ldo9 {
regulator-min-microvolt = <2952000>;
regulator-max-microvolt = <3304000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l10c_3p3: ldo10 {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3400000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_l11c_3p3: ldo11 {
regulator-min-microvolt = <3000000>;
regulator-max-microvolt = <3400000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_HPM>;
};
vreg_bob: bob {
regulator-min-microvolt = <3008000>;
regulator-max-microvolt = <3960000>;
regulator-initial-mode = <RPMH_REGULATOR_MODE_AUTO>;
};
};
};
&dispcc {
/* HACK: disable until a panel driver is ready to retain simplefb */
status = "disabled";
};
&pm6150_resin {
linux,code = <KEY_VOLUMEDOWN>;
status = "okay";
};
&pm6150_rtc {
status = "okay";
};
&sdhc_2 {
cd-gpios = <&tlmm 69 GPIO_ACTIVE_HIGH>;
pinctrl-names = "default","sleep";
pinctrl-0 = <&sdc2_on>;
pinctrl-1 = <&sdc2_off>;
vmmc-supply = <&vreg_l9c_2p9>;
vqmmc-supply = <&vreg_l6c_3p0>;
status = "okay";
};
&tlmm {
gpio-reserved-ranges = <0 4>, <34 4>, <59 4>;
sdc2_on: sdc2-on-state {
clk-pins {
pins = "sdc2_clk";
bias-disable;
drive-strength = <16>;
};
cmd-pins {
pins = "sdc2_cmd";
bias-pull-up;
drive-strength = <10>;
};
data-pins {
pins = "sdc2_data";
bias-pull-up;
drive-strength = <10>;
};
sd-cd-pins {
pins = "gpio69";
function = "gpio";
bias-pull-up;
drive-strength = <2>;
};
};
sdc2_off: sdc2-off-state {
clk-pins {
pins = "sdc2_clk";
bias-disable;
drive-strength = <2>;
};
cmd-pins {
pins = "sdc2_cmd";
bias-pull-up;
drive-strength = <2>;
};
data-pins {
pins = "sdc2_data";
bias-pull-up;
drive-strength = <2>;
};
sd-cd-pins {
pins = "gpio69";
function = "gpio";
bias-pull-up;
drive-strength = <2>;
};
};
};
&ufs_mem_hc {
reset-gpios = <&tlmm 119 GPIO_ACTIVE_LOW>;
vcc-supply = <&vreg_l19a_3p0>;
vcc-max-microamp = <600000>;
vccq2-supply = <&vreg_l12a_1p8>;
vccq2-max-microamp = <600000>;
status = "okay";
};
&ufs_mem_phy {
vdda-phy-supply = <&vreg_l4a_0p88>;
vdda-pll-supply = <&vreg_l3c_1p23>;
status = "okay";
};
&usb_1 {
qcom,select-utmi-as-pipe-clk;
status = "okay";
};
&usb_1_dwc3 {
dr_mode = "peripheral";
maximum-speed = "high-speed";
status = "okay";
};
&usb_1_hsphy {
vdd-supply = <&vreg_l4a_0p88>;
vdda-phy-dpdm-supply = <&vreg_l17a_3p1>;
vdda-pll-supply = <&vreg_l11a_1p8>;
status = "okay";
};
&usb_1_qmpphy {
vdda-phy-supply = <&vreg_l4a_0p88>;
vdda-pll-supply = <&vreg_l3c_1p23>;
status = "okay";
};