[PATCH v7 3/9] arm64: dts: agilex5: enable SD card on SOCDK OOBE card

From: Tanmay Kathpalia

Date: Tue Sep 01 2026 - 14:51:09 EST


On the SOCDK OOBE card the slot is SD-only: a fixed 3.3 V card supply
and a GPIO-selected 3.3 V / 1.8 V I/O supply for UHS-I signalling up
to SDR104.

Signed-off-by: Tanmay Kathpalia <tanmay.kathpalia@xxxxxxxxxx>
---
Depends on commit ab45ecfab540 ("dt-bindings: reset: altr: add
COMBOPHY_RESET for Agilex5"), which is already in mainline via the
reset tree. It is not yet in mmc/next; apply or merge that commit when
building/testing this patch on top of mmc/next.

Depends on commit 10cf797f3f8a ("arm64: dts: socfpga: agilex5: Enable
the SMMU"), which is already in the SoC DT tree. It is not yet in
mmc/next; apply or merge that commit when building/testing this patch
on top of mmc/next, otherwise the SMMU remains disabled.

.../boot/dts/intel/socfpga_agilex5_socdk.dts | 34 ++++++++++++++++++-
1 file changed, 33 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/intel/socfpga_agilex5_socdk.dts b/arch/arm64/boot/dts/intel/socfpga_agilex5_socdk.dts
index 57d3c5807c65..2b753d0e17bb 100644
--- a/arch/arm64/boot/dts/intel/socfpga_agilex5_socdk.dts
+++ b/arch/arm64/boot/dts/intel/socfpga_agilex5_socdk.dts
@@ -36,9 +36,37 @@ memory@80000000 {
/* We expect the bootloader to fill in the reg */
reg = <0x0 0x80000000 0x0 0x0>;
};
+
+ vqmmc_io_reg: regulator-1p8v {
+ compatible = "regulator-gpio";
+ gpios = <&portb 3 GPIO_ACTIVE_HIGH>;
+ gpios-states = <0>;
+ regulator-max-microvolt = <3300000>;
+ regulator-min-microvolt = <1800000>;
+ regulator-name = "vqmmc-io";
+ states = <1800000 0x1>,
+ <3300000 0x0>;
+ };
+
+ vmmc_reg: regulator-fixed-3p3v {
+ compatible = "regulator-fixed";
+ regulator-always-on;
+ regulator-max-microvolt = <3300000>;
+ regulator-min-microvolt = <3300000>;
+ regulator-name = "vcc-sd";
+ };
};

-&gpio0 {
+&sdmmc {
+ bus-width = <4>;
+ cap-sd-highspeed;
+ disable-wp;
+ max-frequency = <200000000>;
+ no-mmc;
+ sd-uhs-sdr104;
+ vmmc-supply = <&vmmc_reg>;
+ vqmmc-supply = <&vqmmc_io_reg>;
+
status = "okay";
};

@@ -59,6 +87,10 @@ emac2_phy0: ethernet-phy@0 {
};
};

+&gpio0 {
+ status = "okay";
+};
+
&gpio1 {
status = "okay";
};
--
2.43.7