* [PATCH V4 0/2] arm64: dts: qcom: Shikra SD Card support
@ 2026-08-04 12:20 Monish Chunara
2026-08-04 12:20 ` [PATCH V4 1/2] arm64: dts: qcom: Add SD Card support for Shikra SoC Monish Chunara
2026-08-04 12:20 ` [PATCH V4 2/2] arm64: dts: qcom: Enable SD card for Shikra EVK Monish Chunara
0 siblings, 2 replies; 5+ messages in thread
From: Monish Chunara @ 2026-08-04 12:20 UTC (permalink / raw)
To: Monish Chunara, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Vinod Koul, Neil Armstrong,
Wesley Cheng, Ulf Hansson, Kernel Team
Cc: linux-arm-msm, devicetree, linux-kernel, linux-phy, linux-mmc,
Nitin Rawat, Pradeep Pragallapati, Komal Bajaj
This is v4 of the Shikra SD Card support series.
This series adds SD card support for the Shikra platform.
The first patch adds the SDHC2 controller node and the necessary pinctrl
configurations to the base Shikra SoC dtsi. The second patch enables
this support on the Shikra EVK (CQS, CQM, and IQS variants) by defining
the regulator supplies and the card detection GPIO.
Signed-off-by: Monish Chunara <monish.chunara@oss.qualcomm.com>
Changes in v4:
- Rebase on latest code base
- Collect Reviewed-by tags (Konrad)
- Drop the dependency link - since all base changes are merged
Changes in v3:
- Padded the address part of the reg property in the sdhc_2 node to
8 hex digits with leading zeroes for consistency with other nodes
in the file
- Moved the common sdhc_2 properties to shikra-evk DT file
- Link to v2: https://lore.kernel.org/all/20260630165700.1886608-1-monish.chunara@oss.qualcomm.com
Changes in v2:
- Rectify the alignment for clocks and interconnect properties for SD
card
- Link to v1: https://lore.kernel.org/all/20260604122045.494712-1-monish.chunara@oss.qualcomm.com
Testing:
- Validated on Shikra EVK variants.
Monish Chunara (2):
arm64: dts: qcom: Add SD Card support for Shikra SoC
arm64: dts: qcom: Enable SD card for Shikra EVK
arch/arm64/boot/dts/qcom/shikra-cqm-evk.dts | 9 ++
arch/arm64/boot/dts/qcom/shikra-cqs-evk.dts | 9 ++
arch/arm64/boot/dts/qcom/shikra-evk.dtsi | 11 +++
arch/arm64/boot/dts/qcom/shikra-iqs-evk.dts | 9 ++
arch/arm64/boot/dts/qcom/shikra.dtsi | 97 +++++++++++++++++++++
5 files changed, 135 insertions(+)
--
2.34.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH V4 1/2] arm64: dts: qcom: Add SD Card support for Shikra SoC
2026-08-04 12:20 [PATCH V4 0/2] arm64: dts: qcom: Shikra SD Card support Monish Chunara
@ 2026-08-04 12:20 ` Monish Chunara
2026-08-04 12:37 ` sashiko-bot
2026-08-04 12:20 ` [PATCH V4 2/2] arm64: dts: qcom: Enable SD card for Shikra EVK Monish Chunara
1 sibling, 1 reply; 5+ messages in thread
From: Monish Chunara @ 2026-08-04 12:20 UTC (permalink / raw)
To: Monish Chunara, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Vinod Koul, Neil Armstrong,
Wesley Cheng, Ulf Hansson, Kernel Team
Cc: linux-arm-msm, devicetree, linux-kernel, linux-phy, linux-mmc,
Nitin Rawat, Pradeep Pragallapati, Komal Bajaj, Konrad Dybcio
Add support for SD card on Shikra SoC and enable the required pinctrl
configurations.
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Monish Chunara <monish.chunara@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/shikra.dtsi | 97 ++++++++++++++++++++++++++++
1 file changed, 97 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/shikra.dtsi b/arch/arm64/boot/dts/qcom/shikra.dtsi
index 80e8045282d8..1c56b43887e4 100644
--- a/arch/arm64/boot/dts/qcom/shikra.dtsi
+++ b/arch/arm64/boot/dts/qcom/shikra.dtsi
@@ -404,6 +404,53 @@ rclk-pins {
bias-bus-hold;
};
};
+
+ sdc2_default: sdc2-default-state {
+ clk-pins {
+ pins = "sdc2_clk";
+ drive-strength = <14>;
+ bias-disable;
+ };
+
+ cmd-pins {
+ pins = "sdc2_cmd";
+ drive-strength = <14>;
+ bias-pull-up;
+ };
+
+ data-pins {
+ pins = "sdc2_data";
+ drive-strength = <14>;
+ bias-pull-up;
+ };
+ };
+
+ sdc2_sleep: sdc2-sleep-state {
+ clk-pins {
+ pins = "sdc2_clk";
+ drive-strength = <2>;
+ bias-disable;
+ };
+
+ cmd-pins {
+ pins = "sdc2_cmd";
+ drive-strength = <2>;
+ bias-pull-up;
+ };
+
+ data-pins {
+ pins = "sdc2_data";
+ drive-strength = <2>;
+ bias-pull-up;
+ };
+ };
+
+ sdc2_card_det_n: sd-card-det-n-state {
+ pins = "gpio89";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-pull-up;
+ };
};
mem_noc: interconnect@d00000 {
@@ -604,6 +651,56 @@ opp-384000000 {
};
};
+ sdhc_2: mmc@4784000 {
+ compatible = "qcom,shikra-sdhci", "qcom,sdhci-msm-v5";
+ reg = <0x0 0x04784000 0x0 0x1000>;
+
+ interrupts = <GIC_SPI 350 IRQ_TYPE_LEVEL_HIGH>,
+ <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-names = "hc_irq",
+ "pwr_irq";
+
+ bus-width = <4>;
+
+ clocks = <&gcc GCC_SDCC2_AHB_CLK>,
+ <&gcc GCC_SDCC2_APPS_CLK>,
+ <&rpmcc RPM_SMD_XO_CLK_SRC>;
+ clock-names = "iface",
+ "core",
+ "xo";
+
+ qcom,dll-config = <0x0007442c>;
+ qcom,ddr-config = <0x80040868>;
+
+ iommus = <&apps_smmu 0x0a0 0x0>;
+
+ interconnects = <&system_noc MASTER_SDCC_2 RPM_ALWAYS_TAG
+ &mc_virt SLAVE_EBI_CH0 RPM_ALWAYS_TAG>,
+ <&mem_noc MASTER_AMPSS_M0 RPM_ACTIVE_TAG
+ &config_noc SLAVE_SDCC_2 RPM_ACTIVE_TAG>;
+ interconnect-names = "sdhc-ddr",
+ "cpu-sdhc";
+
+ power-domains = <&rpmpd RPMPD_VDDCX>;
+ operating-points-v2 = <&sdhc2_opp_table>;
+
+ status = "disabled";
+
+ sdhc2_opp_table: opp-table-2 {
+ compatible = "operating-points-v2";
+
+ opp-100000000 {
+ opp-hz = /bits/ 64 <100000000>;
+ required-opps = <&rpmpd_opp_low_svs>;
+ };
+
+ opp-202000000 {
+ opp-hz = /bits/ 64 <202000000>;
+ required-opps = <&rpmpd_opp_svs_plus>;
+ };
+ };
+ };
+
qupv3_0: geniqup@4ac0000 {
compatible = "qcom,geni-se-qup";
reg = <0x0 0x04ac0000 0x0 0x2000>;
--
2.34.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [PATCH V4 2/2] arm64: dts: qcom: Enable SD card for Shikra EVK
2026-08-04 12:20 [PATCH V4 0/2] arm64: dts: qcom: Shikra SD Card support Monish Chunara
2026-08-04 12:20 ` [PATCH V4 1/2] arm64: dts: qcom: Add SD Card support for Shikra SoC Monish Chunara
@ 2026-08-04 12:20 ` Monish Chunara
2026-08-04 12:30 ` sashiko-bot
1 sibling, 1 reply; 5+ messages in thread
From: Monish Chunara @ 2026-08-04 12:20 UTC (permalink / raw)
To: Monish Chunara, Bjorn Andersson, Konrad Dybcio, Rob Herring,
Krzysztof Kozlowski, Conor Dooley, Vinod Koul, Neil Armstrong,
Wesley Cheng, Ulf Hansson, Kernel Team
Cc: linux-arm-msm, devicetree, linux-kernel, linux-phy, linux-mmc,
Nitin Rawat, Pradeep Pragallapati, Komal Bajaj, Konrad Dybcio
Enable SD card for Shikra CQS, CQM and IQS EVK variants. Configure the
vmmc/vqmmc regulators and gpio-based card detection for each board
variant.
Reviewed-by: Konrad Dybcio <konrad.dybcio@oss.qualcomm.com>
Signed-off-by: Monish Chunara <monish.chunara@oss.qualcomm.com>
---
arch/arm64/boot/dts/qcom/shikra-cqm-evk.dts | 9 +++++++++
arch/arm64/boot/dts/qcom/shikra-cqs-evk.dts | 9 +++++++++
arch/arm64/boot/dts/qcom/shikra-evk.dtsi | 11 +++++++++++
arch/arm64/boot/dts/qcom/shikra-iqs-evk.dts | 9 +++++++++
4 files changed, 38 insertions(+)
diff --git a/arch/arm64/boot/dts/qcom/shikra-cqm-evk.dts b/arch/arm64/boot/dts/qcom/shikra-cqm-evk.dts
index 0a52ab9b7a4c..8e4656a51371 100644
--- a/arch/arm64/boot/dts/qcom/shikra-cqm-evk.dts
+++ b/arch/arm64/boot/dts/qcom/shikra-cqm-evk.dts
@@ -7,6 +7,7 @@
#include "shikra-cqm-som.dtsi"
#include "shikra-evk.dtsi"
+#include <dt-bindings/gpio/gpio.h>
/ {
model = "Qualcomm Technologies, Inc. Shikra CQM EVK";
@@ -15,6 +16,7 @@ / {
aliases {
mmc0 = &sdhc_1;
+ mmc1 = &sdhc_2; /* SDC2 SD card slot */
serial0 = &uart0;
};
@@ -38,3 +40,10 @@ &sdhc_1 {
status = "okay";
};
+
+&sdhc_2 {
+ vmmc-supply = <&pm4125_l21>;
+ vqmmc-supply = <&pm4125_l4>;
+
+ status = "okay";
+};
diff --git a/arch/arm64/boot/dts/qcom/shikra-cqs-evk.dts b/arch/arm64/boot/dts/qcom/shikra-cqs-evk.dts
index b3f19a64d7ae..c13a02cfafeb 100644
--- a/arch/arm64/boot/dts/qcom/shikra-cqs-evk.dts
+++ b/arch/arm64/boot/dts/qcom/shikra-cqs-evk.dts
@@ -7,6 +7,7 @@
#include "shikra-cqm-som.dtsi"
#include "shikra-evk.dtsi"
+#include <dt-bindings/gpio/gpio.h>
/ {
model = "Qualcomm Technologies, Inc. Shikra CQS EVK";
@@ -15,6 +16,7 @@ / {
aliases {
mmc0 = &sdhc_1;
+ mmc1 = &sdhc_2; /* SDC2 SD card slot */
serial0 = &uart0;
};
@@ -38,3 +40,10 @@ &sdhc_1 {
status = "okay";
};
+
+&sdhc_2 {
+ vmmc-supply = <&pm4125_l21>;
+ vqmmc-supply = <&pm4125_l4>;
+
+ status = "okay";
+};
diff --git a/arch/arm64/boot/dts/qcom/shikra-evk.dtsi b/arch/arm64/boot/dts/qcom/shikra-evk.dtsi
index 6eb4184f7642..177a599cd2c2 100644
--- a/arch/arm64/boot/dts/qcom/shikra-evk.dtsi
+++ b/arch/arm64/boot/dts/qcom/shikra-evk.dtsi
@@ -9,6 +9,17 @@ &qupv3_0 {
status = "okay";
};
+&sdhc_2 {
+ pinctrl-0 = <&sdc2_default &sdc2_card_det_n>;
+ pinctrl-1 = <&sdc2_sleep &sdc2_card_det_n>;
+ pinctrl-names = "default", "sleep";
+
+ no-sdio;
+ no-mmc;
+
+ cd-gpios = <&tlmm 89 GPIO_ACTIVE_LOW>;
+};
+
&uart0 {
status = "okay";
};
diff --git a/arch/arm64/boot/dts/qcom/shikra-iqs-evk.dts b/arch/arm64/boot/dts/qcom/shikra-iqs-evk.dts
index 3003a47bd759..5d400d50a7b1 100644
--- a/arch/arm64/boot/dts/qcom/shikra-iqs-evk.dts
+++ b/arch/arm64/boot/dts/qcom/shikra-iqs-evk.dts
@@ -7,6 +7,7 @@
#include "shikra-iqs-som.dtsi"
#include "shikra-evk.dtsi"
+#include <dt-bindings/gpio/gpio.h>
/ {
model = "Qualcomm Technologies, Inc. Shikra IQS EVK";
@@ -15,6 +16,7 @@ / {
aliases {
mmc0 = &sdhc_1;
+ mmc1 = &sdhc_2; /* SDC2 SD card slot */
serial0 = &uart0;
};
@@ -38,3 +40,10 @@ &sdhc_1 {
status = "okay";
};
+
+&sdhc_2 {
+ vmmc-supply = <&pm8150_l10>;
+ vqmmc-supply = <&pm8150_l2>;
+
+ status = "okay";
+};
--
2.34.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH V4 2/2] arm64: dts: qcom: Enable SD card for Shikra EVK
2026-08-04 12:20 ` [PATCH V4 2/2] arm64: dts: qcom: Enable SD card for Shikra EVK Monish Chunara
@ 2026-08-04 12:30 ` sashiko-bot
0 siblings, 0 replies; 5+ messages in thread
From: sashiko-bot @ 2026-08-04 12:30 UTC (permalink / raw)
To: Monish Chunara
Cc: vkoul, robh, olteanv, devicetree, conor+dt, neil.armstrong,
linux-phy
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Low] Redundant and incorrectly ordered `#include <dt-bindings/gpio/gpio.h>` in board .dts files.
--
--- Patch [2]: [PATCH V4 2/2] arm64: dts: qcom: Enable SD card for Shikra EVK ---
commit 7a9a37a5e1e99fa00a175a6837969ca251cbb0d3
Author: Monish Chunara <monish.chunara@oss.qualcomm.com>
arm64: dts: qcom: Enable SD card for Shikra EVK
Enable SD card for Shikra CQS, CQM and IQS EVK variants. Configure the
vmmc/vqmmc regulators and gpio-based card detection for each board
variant.
> diff --git a/arch/arm64/boot/dts/qcom/shikra-cqm-evk.dts b/arch/arm64/boot/dts/qcom/shikra-cqm-evk.dts
> index 0a52ab9b7a4c3..8e4656a51371f 100644
> --- a/arch/arm64/boot/dts/qcom/shikra-cqm-evk.dts
> +++ b/arch/arm64/boot/dts/qcom/shikra-cqm-evk.dts
> @@ -7,6 +7,7 @@
>
> #include "shikra-cqm-som.dtsi"
> #include "shikra-evk.dtsi"
> +#include <dt-bindings/gpio/gpio.h>
[Severity: Low]
Would it be better to move this include directive into shikra-evk.dtsi?
Since shikra-evk.dtsi is the file that actually uses GPIO_ACTIVE_LOW, placing
the include here after shikra-evk.dtsi is processed means it cannot satisfy
the macro dependency directly. The build only succeeds because the preceding
SOM include already happens to include gpio.h.
[ ... ]
> diff --git a/arch/arm64/boot/dts/qcom/shikra-evk.dtsi b/arch/arm64/boot/dts/qcom/shikra-evk.dtsi
> index 6eb4184f76422..177a599cd2c24 100644
> --- a/arch/arm64/boot/dts/qcom/shikra-evk.dtsi
> +++ b/arch/arm64/boot/dts/qcom/shikra-evk.dtsi
> @@ -9,6 +9,17 @@ &qupv3_0 {
> status = "okay";
> };
>
> +&sdhc_2 {
> + pinctrl-0 = <&sdc2_default &sdc2_card_det_n>;
> + pinctrl-1 = <&sdc2_sleep &sdc2_card_det_n>;
> + pinctrl-names = "default", "sleep";
> +
> + no-sdio;
> + no-mmc;
> +
> + cd-gpios = <&tlmm 89 GPIO_ACTIVE_LOW>;
[Severity: Low]
Should shikra-evk.dtsi include <dt-bindings/gpio/gpio.h> directly to
provide the definition for GPIO_ACTIVE_LOW used here?
> +};
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260804122054.3462145-1-monish.chunara@oss.qualcomm.com?part=2
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH V4 1/2] arm64: dts: qcom: Add SD Card support for Shikra SoC
2026-08-04 12:20 ` [PATCH V4 1/2] arm64: dts: qcom: Add SD Card support for Shikra SoC Monish Chunara
@ 2026-08-04 12:37 ` sashiko-bot
0 siblings, 0 replies; 5+ messages in thread
From: sashiko-bot @ 2026-08-04 12:37 UTC (permalink / raw)
To: Monish Chunara
Cc: robh, conor+dt, linux-phy, devicetree, vkoul, neil.armstrong,
olteanv
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [High] The `interrupts` property for the `sdhc_2` node specifies 3 cells per interrupt, but the interrupt parent requires 4 cells.
--
--- Patch [1]: [PATCH V4 1/2] arm64: dts: qcom: Add SD Card support for Shikra SoC ---
commit 83ca6e70b2f615f092668ff7fd7effef71d8d1fa
Author: Monish Chunara <monish.chunara@oss.qualcomm.com>
arm64: dts: qcom: Add SD Card support for Shikra SoC
This commit adds device tree support for the SD card interface on the Shikra
SoC. It configures the sdhc_2 controller and provides the necessary pin
control, clocks, interconnects, and operating points.
> diff --git a/arch/arm64/boot/dts/qcom/shikra.dtsi b/arch/arm64/boot/dts/qcom/shikra.dtsi
> --- a/arch/arm64/boot/dts/qcom/shikra.dtsi
> +++ b/arch/arm64/boot/dts/qcom/shikra.dtsi
[ ... ]
> + sdhc_2: mmc@4784000 {
> + compatible = "qcom,shikra-sdhci", "qcom,sdhci-msm-v5";
> + reg = <0x0 0x04784000 0x0 0x1000>;
> +
> + interrupts = <GIC_SPI 350 IRQ_TYPE_LEVEL_HIGH>,
> + <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>;
[Severity: High]
Does this interrupts property provide enough cells for the interrupt parent?
If the interrupt parent for this SoC requires 4 cells (such as
#interrupt-cells = <4>), parsing this 3-cell definition will fail during boot.
This could prevent the sdhci-msm driver from obtaining its interrupts, causing
a probe failure and leaving the SD card non-functional. Would it be correct
to add a 4th cell here, matching how sdhc_1 is configured?
> + interrupt-names = "hc_irq",
> + "pwr_irq";
[ ... ]
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260804122054.3462145-1-monish.chunara@oss.qualcomm.com?part=1
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2026-08-04 12:38 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-04 12:20 [PATCH V4 0/2] arm64: dts: qcom: Shikra SD Card support Monish Chunara
2026-08-04 12:20 ` [PATCH V4 1/2] arm64: dts: qcom: Add SD Card support for Shikra SoC Monish Chunara
2026-08-04 12:37 ` sashiko-bot
2026-08-04 12:20 ` [PATCH V4 2/2] arm64: dts: qcom: Enable SD card for Shikra EVK Monish Chunara
2026-08-04 12:30 ` sashiko-bot
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox