Skip to content

Commit 8b52a77

Browse files
mchunara007Komal-Bajaj
authored andcommitted
FROMLIST: arm64: dts: qcom: lemans-evk: Add SDHCI support for eMMC via overlay
Enable the SDHCI controller for eMMC functionality on the lemans EVK using a device tree overlay. Configure the corresponding addresse space and resources for eMMC. Link: https://lore.kernel.org/all/20260227102405.2339544-3-monish.chunara@oss.qualcomm.com/ Signed-off-by: Monish Chunara <monish.chunara@oss.qualcomm.com>
1 parent a9adf3c commit 8b52a77

3 files changed

Lines changed: 74 additions & 3 deletions

File tree

arch/arm64/boot/dts/qcom/Makefile

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,9 @@ dtb-$(CONFIG_ARCH_QCOM) += kaanapali-mtp.dtb
4343
dtb-$(CONFIG_ARCH_QCOM) += kaanapali-qrd.dtb
4444
dtb-$(CONFIG_ARCH_QCOM) += lemans-evk.dtb
4545

46+
lemans-evk-emmc-dtbs := lemans-evk.dtb lemans-evk-emmc.dtbo
47+
dtb-$(CONFIG_ARCH_QCOM) += lemans-evk-emmc.dtb
48+
4649
lemans-evk-sd-card-dtbs := lemans-evk.dtb lemans-evk-sd-card.dtbo
4750
dtb-$(CONFIG_ARCH_QCOM) += lemans-evk-sd-card.dtb
4851

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
// SPDX-License-Identifier: BSD-3-Clause
2+
/*
3+
* Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
4+
*/
5+
6+
/dts-v1/;
7+
/plugin/;
8+
9+
#include <dt-bindings/gpio/gpio.h>
10+
#include <dt-bindings/clock/qcom,rpmh.h>
11+
#include <dt-bindings/clock/qcom,sa8775p-gcc.h>
12+
13+
/ {
14+
vmmc_sdc1: regulator-l8c {
15+
compatible = "regulator-fixed";
16+
regulator-name = "vreg-sdc1";
17+
18+
regulator-min-microvolt = <2960000>;
19+
regulator-max-microvolt = <2960000>;
20+
};
21+
22+
vqmmc_sdc1: regulator-s4a {
23+
compatible = "regulator-fixed";
24+
regulator-name = "vqmmc-sdc1";
25+
26+
regulator-min-microvolt = <1800000>;
27+
regulator-max-microvolt = <1800000>;
28+
};
29+
};
30+
31+
&sdhc {
32+
vmmc-supply = <&vmmc_sdc1>;
33+
vqmmc-supply = <&vqmmc_sdc1>;
34+
35+
pinctrl-0 = <&sdc_default>, <&sdc_rclk>;
36+
pinctrl-1 = <&sdc_sleep>, <&sdc_rclk_sleep>;
37+
38+
pinctrl-names = "default", "sleep";
39+
40+
supports-cqe;
41+
non-removable;
42+
43+
qcom,dll-config = <0x000F64EC>;
44+
max-frequency = <50000000>;
45+
46+
bus-width = <8>;
47+
no-sd;
48+
no-sdio;
49+
50+
status = "okay";
51+
};
52+
53+
&tlmm {
54+
sdc_rclk: sdc1-rclk-state {
55+
pins = "sdc1_rclk";
56+
bias-pull-down;
57+
};
58+
59+
sdc_rclk_sleep: sdc1-rclk-sleep-state {
60+
pins = "sdc1_rclk";
61+
drive-strength = <2>;
62+
bias-bus-hold;
63+
};
64+
};

arch/arm64/boot/dts/qcom/lemans.dtsi

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3959,17 +3959,21 @@
39593959

39603960
sdhc: mmc@87c4000 {
39613961
compatible = "qcom,sa8775p-sdhci", "qcom,sdhci-msm-v5";
3962-
reg = <0x0 0x087c4000 0x0 0x1000>;
3962+
reg = <0x0 0x87C4000 0x0 0x1000>,
3963+
<0x0 0x87C5000 0x0 0x1000>;
3964+
reg-names = "hc", "cqhci";
39633965

39643966
interrupts = <GIC_SPI 383 IRQ_TYPE_LEVEL_HIGH>,
39653967
<GIC_SPI 521 IRQ_TYPE_LEVEL_HIGH>;
39663968
interrupt-names = "hc_irq",
39673969
"pwr_irq";
39683970

39693971
clocks = <&gcc GCC_SDCC1_AHB_CLK>,
3970-
<&gcc GCC_SDCC1_APPS_CLK>;
3972+
<&gcc GCC_SDCC1_APPS_CLK>,
3973+
<&rpmhcc RPMH_CXO_CLK>;
39713974
clock-names = "iface",
3972-
"core";
3975+
"core",
3976+
"xo";
39733977

39743978
interconnects = <&aggre1_noc MASTER_SDC QCOM_ICC_TAG_ALWAYS
39753979
&mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>,

0 commit comments

Comments
 (0)