Skip to content

Commit 894b99f

Browse files
mchunara007Monish Chunara
authored andcommitted
FROMLIST: arm64: dts: qcom: monaco-evk: Enable SDHCI for SD Card via overlay
The monaco EVK board supports either eMMC or SD-card, but only one can be active at a time. Enable the SD Host Controller Interface (SDHCI) on the monaco EVK board to support SD Card for storage via a device tree overlay. This allows eMMC support to be enabled through a separate overlay when required. Link: https://lore.kernel.org/all/20260227105055.2364348-3-monish.chunara@oss.qualcomm.com/ Signed-off-by: Monish Chunara <monish.chunara@oss.qualcomm.com>
1 parent 923ea19 commit 894b99f

2 files changed

Lines changed: 76 additions & 0 deletions

File tree

arch/arm64/boot/dts/qcom/Makefile

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,10 @@ dtb-$(CONFIG_ARCH_QCOM) += monaco-evk-camera-imx577.dtb
6464
monaco-evk-ifp-mezzanine-dtbs := monaco-evk.dtb monaco-evk-ifp-mezzanine.dtbo
6565

6666
dtb-$(CONFIG_ARCH_QCOM) += monaco-evk-ifp-mezzanine.dtb
67+
68+
monaco-evk-sd-card-dtbs := monaco-evk.dtb monaco-evk-sd-card.dtbo
69+
dtb-$(CONFIG_ARCH_QCOM) += monaco-evk-sd-card.dtb
70+
6771
dtb-$(CONFIG_ARCH_QCOM) += msm8216-samsung-fortuna3g.dtb
6872
dtb-$(CONFIG_ARCH_QCOM) += msm8916-acer-a1-724.dtb
6973
dtb-$(CONFIG_ARCH_QCOM) += msm8916-alcatel-idol347.dtb
Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
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+
11+
/ {
12+
vmmc_sdc: regulator-dummy {
13+
compatible = "regulator-fixed";
14+
15+
regulator-name = "vmmc_sdc";
16+
regulator-min-microvolt = <2950000>;
17+
regulator-max-microvolt = <2950000>;
18+
};
19+
20+
vreg_sdc: regulator-sdc {
21+
compatible = "regulator-gpio";
22+
23+
regulator-name = "vreg_sdc";
24+
regulator-type = "voltage";
25+
regulator-min-microvolt = <1800000>;
26+
regulator-max-microvolt = <2950000>;
27+
28+
gpios = <&expander1 7 GPIO_ACTIVE_HIGH>;
29+
states = <1800000 1>, <2950000 0>;
30+
31+
startup-delay-us = <100>;
32+
};
33+
};
34+
35+
&sdhc_1 {
36+
vmmc-supply = <&vmmc_sdc>;
37+
vqmmc-supply = <&vreg_sdc>;
38+
39+
pinctrl-0 = <&sdc1_state_on>, <&sd_cd>;
40+
pinctrl-1 = <&sdc1_state_off>, <&sd_cd>;
41+
pinctrl-names = "default", "sleep";
42+
43+
cap-sd-highspeed;
44+
no-1-8-v;
45+
46+
bus-width = <4>;
47+
cd-gpios = <&tlmm 11 GPIO_ACTIVE_LOW>;
48+
no-mmc;
49+
no-sdio;
50+
51+
status = "okay";
52+
};
53+
54+
&sdhc1_opp_table {
55+
opp-100000000 {
56+
opp-hz = /bits/ 64 <100000000>;
57+
required-opps = <&rpmhpd_opp_low_svs>;
58+
};
59+
60+
opp-202000000 {
61+
opp-hz = /bits/ 64 <202000000>;
62+
required-opps = <&rpmhpd_opp_svs_l1>;
63+
};
64+
};
65+
66+
&tlmm {
67+
sd_cd: sd-cd-state {
68+
pins = "gpio11";
69+
function = "gpio";
70+
bias-pull-up;
71+
};
72+
};

0 commit comments

Comments
 (0)