* [PATCH V2 0/3] arm64: dts: qcom: Monaco: Enable SDHCI storage support
@ 2026-06-16 13:03 Monish Chunara
2026-06-16 13:03 ` [PATCH V2 1/3] arm64: dts: qcom: monaco: Move eMMC CQE support from SoC to board DT Monish Chunara
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Monish Chunara @ 2026-06-16 13:03 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Dmitry Baryshkov, Manivannan Sadhasivam
Cc: linux-arm-msm, devicetree, linux-kernel, Sarthak Garg,
Pradeep Pragallapati, Nitin Rawat, Shiraz Hashim, Monish Chunara
Hello respected Maintainers,
This is v2 of the Monaco SDHCI storage support series.
V1 was sent here:
https://lore.kernel.org/all/20260227105055.2364348-1-monish.chunara@oss.qualcomm.com/
Compared to v1, this revision makes the storage split more explicit and keeps
the SoC description generic:
- Avoids using the reference to direct supplies as dummy
- Updates the eMMC overlay to remove the static UFS host disablement and
vreg_l8a voltage override, allowing DT-fixup to manage the UFS-eMMC mutual
exclusion dynamically for flexible UFS/eMMC configurations.
Validated on Qualcomm Monaco EVK with both SD card and eMMC modules.
Monish Chunara (3):
arm64: dts: qcom: monaco: Move eMMC CQE support from SoC to board DT
arm64: dts: qcom: monaco-evk: Enable SDHCI for SD Card via overlay
arm64: dts: qcom: monaco-evk: Add SDHCI support for eMMC via overlay
arch/arm64/boot/dts/qcom/Makefile | 7 ++
arch/arm64/boot/dts/qcom/monaco-evk-emmc.dtso | 37 ++++++++++
.../boot/dts/qcom/monaco-evk-sd-card.dtso | 72 +++++++++++++++++++
arch/arm64/boot/dts/qcom/monaco.dtsi | 1 -
arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 1 +
5 files changed, 117 insertions(+), 1 deletion(-)
create mode 100644 arch/arm64/boot/dts/qcom/monaco-evk-emmc.dtso
create mode 100644 arch/arm64/boot/dts/qcom/monaco-evk-sd-card.dtso
--
2.34.1
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH V2 1/3] arm64: dts: qcom: monaco: Move eMMC CQE support from SoC to board DT
2026-06-16 13:03 [PATCH V2 0/3] arm64: dts: qcom: Monaco: Enable SDHCI storage support Monish Chunara
@ 2026-06-16 13:03 ` Monish Chunara
2026-06-17 10:17 ` Konrad Dybcio
2026-06-16 13:03 ` [PATCH V2 2/3] arm64: dts: qcom: monaco-evk: Enable SDHCI for SD Card via overlay Monish Chunara
2026-06-16 13:03 ` [PATCH V2 3/3] arm64: dts: qcom: monaco-evk: Add SDHCI support for eMMC " Monish Chunara
2 siblings, 1 reply; 6+ messages in thread
From: Monish Chunara @ 2026-06-16 13:03 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Dmitry Baryshkov, Manivannan Sadhasivam
Cc: linux-arm-msm, devicetree, linux-kernel, Sarthak Garg,
Pradeep Pragallapati, Nitin Rawat, Shiraz Hashim, Monish Chunara
The Monaco SoC SDHC controller supports both eMMC and SD cards. However,
the 'supports-cqe' property (Command Queue Engine) is specific to eMMC
and conflicts with SD card operation.
Remove 'supports-cqe' from the SoC device tree to ensure compatibility
with SD cards. Simultaneously, add the property explicitly to the
qcs8300-ride board device tree, as this board uses the controller in
eMMC mode.
This ensures the SoC definition remains generic while enabling features
correctly at the board level.
Signed-off-by: Monish Chunara <monish.chunara@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/monaco.dtsi | 1 -
arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 1 +
2 files changed, 1 insertion(+), 1 deletion(-)
diff --git a/arch/arm64/boot/dts/qcom/monaco.dtsi b/arch/arm64/boot/dts/qcom/monaco.dtsi
index e4c8466f941b..e82cba350842 100644
--- a/arch/arm64/boot/dts/qcom/monaco.dtsi
+++ b/arch/arm64/boot/dts/qcom/monaco.dtsi
@@ -4832,7 +4832,6 @@ &mc_virt SLAVE_EBI1 QCOM_ICC_TAG_ALWAYS>,
qcom,dll-config = <0x000f64ee>;
qcom,ddr-config = <0x80040868>;
bus-width = <8>;
- supports-cqe;
dma-coherent;
mmc-ddr-1_8v;
diff --git a/arch/arm64/boot/dts/qcom/qcs8300-ride.dts b/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
index e9a8553a8d82..3090eba0317a 100644
--- a/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
+++ b/arch/arm64/boot/dts/qcom/qcs8300-ride.dts
@@ -719,6 +719,7 @@ &sdhc_1 {
vmmc-supply = <&vreg_l8a>;
vqmmc-supply = <&vreg_s4a>;
+ supports-cqe;
non-removable;
no-sd;
no-sdio;
--
2.34.1
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH V2 2/3] arm64: dts: qcom: monaco-evk: Enable SDHCI for SD Card via overlay
2026-06-16 13:03 [PATCH V2 0/3] arm64: dts: qcom: Monaco: Enable SDHCI storage support Monish Chunara
2026-06-16 13:03 ` [PATCH V2 1/3] arm64: dts: qcom: monaco: Move eMMC CQE support from SoC to board DT Monish Chunara
@ 2026-06-16 13:03 ` Monish Chunara
2026-06-16 13:03 ` [PATCH V2 3/3] arm64: dts: qcom: monaco-evk: Add SDHCI support for eMMC " Monish Chunara
2 siblings, 0 replies; 6+ messages in thread
From: Monish Chunara @ 2026-06-16 13:03 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Dmitry Baryshkov, Manivannan Sadhasivam
Cc: linux-arm-msm, devicetree, linux-kernel, Sarthak Garg,
Pradeep Pragallapati, Nitin Rawat, Shiraz Hashim, Monish Chunara
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.
Signed-off-by: Monish Chunara <monish.chunara@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/Makefile | 4 ++
.../boot/dts/qcom/monaco-evk-sd-card.dtso | 72 +++++++++++++++++++
2 files changed, 76 insertions(+)
create mode 100644 arch/arm64/boot/dts/qcom/monaco-evk-sd-card.dtso
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index 6f33c4e2f09c..3c5983bff00c 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -69,6 +69,10 @@ monaco-evk-el2-dtbs := monaco-evk.dtb monaco-el2.dtbo
dtb-$(CONFIG_ARCH_QCOM) += monaco-evk-el2.dtb
monaco-evk-ifp-mezzanine-dtbs := monaco-evk.dtb monaco-evk-ifp-mezzanine.dtbo
dtb-$(CONFIG_ARCH_QCOM) += monaco-evk-ifp-mezzanine.dtb
+
+monaco-evk-sd-card-dtbs := monaco-evk.dtb monaco-evk-sd-card.dtbo
+dtb-$(CONFIG_ARCH_QCOM) += monaco-evk-sd-card.dtb
+
dtb-$(CONFIG_ARCH_QCOM) += msm8216-samsung-fortuna3g.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8916-acer-a1-724.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8916-alcatel-idol347.dtb
diff --git a/arch/arm64/boot/dts/qcom/monaco-evk-sd-card.dtso b/arch/arm64/boot/dts/qcom/monaco-evk-sd-card.dtso
new file mode 100644
index 000000000000..bc4ea12587a2
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/monaco-evk-sd-card.dtso
@@ -0,0 +1,72 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
+ */
+
+/dts-v1/;
+/plugin/;
+
+#include <dt-bindings/gpio/gpio.h>
+
+/ {
+ vmmc_sdc: regulator-mmc-sdc {
+ compatible = "regulator-fixed";
+
+ regulator-name = "vmmc_sdc";
+ regulator-min-microvolt = <2950000>;
+ regulator-max-microvolt = <2950000>;
+ };
+
+ vreg_sdc: regulator-sdc {
+ compatible = "regulator-gpio";
+
+ regulator-name = "vreg_sdc";
+ regulator-type = "voltage";
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <2950000>;
+
+ gpios = <&expander1 7 GPIO_ACTIVE_HIGH>;
+ states = <1800000 1>, <2950000 0>;
+
+ startup-delay-us = <100>;
+ };
+};
+
+&sdhc_1 {
+ vmmc-supply = <&vmmc_sdc>;
+ vqmmc-supply = <&vreg_sdc>;
+
+ pinctrl-0 = <&sdc1_state_on>, <&sd_cd>;
+ pinctrl-1 = <&sdc1_state_off>, <&sd_cd>;
+ pinctrl-names = "default", "sleep";
+
+ cap-sd-highspeed;
+ no-1-8-v;
+
+ bus-width = <4>;
+ cd-gpios = <&tlmm 11 GPIO_ACTIVE_LOW>;
+ no-mmc;
+ no-sdio;
+
+ status = "okay";
+};
+
+&sdhc1_opp_table {
+ opp-100000000 {
+ opp-hz = /bits/ 64 <100000000>;
+ required-opps = <&rpmhpd_opp_low_svs>;
+ };
+
+ opp-202000000 {
+ opp-hz = /bits/ 64 <202000000>;
+ required-opps = <&rpmhpd_opp_svs_l1>;
+ };
+};
+
+&tlmm {
+ sd_cd: sd-cd-state {
+ pins = "gpio11";
+ function = "gpio";
+ bias-pull-up;
+ };
+};
--
2.34.1
^ permalink raw reply [flat|nested] 6+ messages in thread
* [PATCH V2 3/3] arm64: dts: qcom: monaco-evk: Add SDHCI support for eMMC via overlay
2026-06-16 13:03 [PATCH V2 0/3] arm64: dts: qcom: Monaco: Enable SDHCI storage support Monish Chunara
2026-06-16 13:03 ` [PATCH V2 1/3] arm64: dts: qcom: monaco: Move eMMC CQE support from SoC to board DT Monish Chunara
2026-06-16 13:03 ` [PATCH V2 2/3] arm64: dts: qcom: monaco-evk: Enable SDHCI for SD Card via overlay Monish Chunara
@ 2026-06-16 13:03 ` Monish Chunara
2 siblings, 0 replies; 6+ messages in thread
From: Monish Chunara @ 2026-06-16 13:03 UTC (permalink / raw)
To: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Dmitry Baryshkov, Manivannan Sadhasivam
Cc: linux-arm-msm, devicetree, linux-kernel, Sarthak Garg,
Pradeep Pragallapati, Nitin Rawat, Shiraz Hashim, Monish Chunara
Enable the SDHCI controller for eMMC functionality on the Monaco EVK
using a device tree overlay.
Signed-off-by: Monish Chunara <monish.chunara@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/Makefile | 3 ++
arch/arm64/boot/dts/qcom/monaco-evk-emmc.dtso | 37 +++++++++++++++++++
2 files changed, 40 insertions(+)
create mode 100644 arch/arm64/boot/dts/qcom/monaco-evk-emmc.dtso
diff --git a/arch/arm64/boot/dts/qcom/Makefile b/arch/arm64/boot/dts/qcom/Makefile
index 3c5983bff00c..e9a21c83001c 100644
--- a/arch/arm64/boot/dts/qcom/Makefile
+++ b/arch/arm64/boot/dts/qcom/Makefile
@@ -73,6 +73,9 @@ dtb-$(CONFIG_ARCH_QCOM) += monaco-evk-ifp-mezzanine.dtb
monaco-evk-sd-card-dtbs := monaco-evk.dtb monaco-evk-sd-card.dtbo
dtb-$(CONFIG_ARCH_QCOM) += monaco-evk-sd-card.dtb
+monaco-evk-emmc-dtbs := monaco-evk.dtb monaco-evk-emmc.dtbo
+dtb-$(CONFIG_ARCH_QCOM) += monaco-evk-emmc.dtb
+
dtb-$(CONFIG_ARCH_QCOM) += msm8216-samsung-fortuna3g.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8916-acer-a1-724.dtb
dtb-$(CONFIG_ARCH_QCOM) += msm8916-alcatel-idol347.dtb
diff --git a/arch/arm64/boot/dts/qcom/monaco-evk-emmc.dtso b/arch/arm64/boot/dts/qcom/monaco-evk-emmc.dtso
new file mode 100644
index 000000000000..cb2566ac6923
--- /dev/null
+++ b/arch/arm64/boot/dts/qcom/monaco-evk-emmc.dtso
@@ -0,0 +1,37 @@
+// SPDX-License-Identifier: BSD-3-Clause
+/*
+ * Copyright (c) Qualcomm Technologies, Inc. and/or its subsidiaries.
+ */
+
+/dts-v1/;
+/plugin/;
+
+/ {
+ vreg_s2s: regulator-vreg-s2s {
+ compatible = "regulator-fixed";
+ regulator-name = "regulator-s2s";
+
+ regulator-min-microvolt = <1800000>;
+ regulator-max-microvolt = <1800000>;
+ };
+};
+
+&sdhc_1 {
+ vmmc-supply = <&vreg_l8a>;
+ vqmmc-supply = <&vreg_s2s>;
+
+ supports-cqe;
+
+ pinctrl-0 = <&sdc1_state_on>;
+ pinctrl-1 = <&sdc1_state_off>;
+
+ pinctrl-names = "default", "sleep";
+
+ non-removable;
+
+ bus-width = <8>;
+ no-sd;
+ no-sdio;
+
+ status = "okay";
+};
--
2.34.1
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH V2 1/3] arm64: dts: qcom: monaco: Move eMMC CQE support from SoC to board DT
2026-06-16 13:03 ` [PATCH V2 1/3] arm64: dts: qcom: monaco: Move eMMC CQE support from SoC to board DT Monish Chunara
@ 2026-06-17 10:17 ` Konrad Dybcio
2026-07-01 8:23 ` Monish Chunara
0 siblings, 1 reply; 6+ messages in thread
From: Konrad Dybcio @ 2026-06-17 10:17 UTC (permalink / raw)
To: Monish Chunara, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Dmitry Baryshkov,
Manivannan Sadhasivam
Cc: linux-arm-msm, devicetree, linux-kernel, Sarthak Garg,
Pradeep Pragallapati, Nitin Rawat, Shiraz Hashim
On 6/16/26 3:03 PM, Monish Chunara wrote:
> The Monaco SoC SDHC controller supports both eMMC and SD cards. However,
> the 'supports-cqe' property (Command Queue Engine) is specific to eMMC
> and conflicts with SD card operation.
>
> Remove 'supports-cqe' from the SoC device tree to ensure compatibility
> with SD cards. Simultaneously, add the property explicitly to the
> qcs8300-ride board device tree, as this board uses the controller in
> eMMC mode.
>
> This ensures the SoC definition remains generic while enabling features
> correctly at the board level.
>
> Signed-off-by: Monish Chunara <monish.chunara@oss.qualcomm.com>
> ---
> arch/arm64/boot/dts/qcom/monaco.dtsi | 1 -
> arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 1 +
Please also fix up monaco-monza-som.dtsi
Konrad
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH V2 1/3] arm64: dts: qcom: monaco: Move eMMC CQE support from SoC to board DT
2026-06-17 10:17 ` Konrad Dybcio
@ 2026-07-01 8:23 ` Monish Chunara
0 siblings, 0 replies; 6+ messages in thread
From: Monish Chunara @ 2026-07-01 8:23 UTC (permalink / raw)
To: Konrad Dybcio
Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
Conor Dooley, Dmitry Baryshkov, Manivannan Sadhasivam,
linux-arm-msm, devicetree, linux-kernel, Sarthak Garg,
Pradeep Pragallapati, Nitin Rawat, Shiraz Hashim
On Wed, Jun 17, 2026 at 12:17:28PM +0200, Konrad Dybcio wrote:
> On 6/16/26 3:03 PM, Monish Chunara wrote:
> > The Monaco SoC SDHC controller supports both eMMC and SD cards. However,
> > the 'supports-cqe' property (Command Queue Engine) is specific to eMMC
> > and conflicts with SD card operation.
> >
> > Remove 'supports-cqe' from the SoC device tree to ensure compatibility
> > with SD cards. Simultaneously, add the property explicitly to the
> > qcs8300-ride board device tree, as this board uses the controller in
> > eMMC mode.
> >
> > This ensures the SoC definition remains generic while enabling features
> > correctly at the board level.
> >
> > Signed-off-by: Monish Chunara <monish.chunara@oss.qualcomm.com>
> > ---
> > arch/arm64/boot/dts/qcom/monaco.dtsi | 1 -
> > arch/arm64/boot/dts/qcom/qcs8300-ride.dts | 1 +
>
> Please also fix up monaco-monza-som.dtsi
>
Sure, updated in v3: https://lore.kernel.org/all/20260701081715.2580329-1-monish.chunara@oss.qualcomm.com/
Regards,
Monish
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2026-07-01 8:23 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-06-16 13:03 [PATCH V2 0/3] arm64: dts: qcom: Monaco: Enable SDHCI storage support Monish Chunara
2026-06-16 13:03 ` [PATCH V2 1/3] arm64: dts: qcom: monaco: Move eMMC CQE support from SoC to board DT Monish Chunara
2026-06-17 10:17 ` Konrad Dybcio
2026-07-01 8:23 ` Monish Chunara
2026-06-16 13:03 ` [PATCH V2 2/3] arm64: dts: qcom: monaco-evk: Enable SDHCI for SD Card via overlay Monish Chunara
2026-06-16 13:03 ` [PATCH V2 3/3] arm64: dts: qcom: monaco-evk: Add SDHCI support for eMMC " Monish Chunara
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox