Skip to contentSkip to conversation

Add Agilex eMMC daughter card support

PATCH Superseded [email protected] 3 participants 5 messages Jan 14 – Jan 15 Device tree bindings

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

v2 cover Add Agilex eMMC daughter card support

From: Ng Tze Yee <[email protected]>

The Agilex SoCDK supports interchangeable daughter cards for different storage configurations. This series adds support for the eMMC daughter card variant.

The eMMC daughter card is mutually exclusive with the default SDMMC daughter card as it occupies the same physical slot on the SoCDK. Therefore, a separate device tree is required to properly configure the system when using the eMMC variant.

This series:
- Documents the new compatible string for the eMMC daughter card
- Adds a new DTS file based on the existing NAND variant with eMMC- specific MMC controller configuration

Changes in v2:
- Add new compatible string for the eMMC daughter card in the binding file
- Fix space indentation in socfpga_agilex_socdk_emmc.dts
- Fix compatible string in socfpga_agilex_socdk_emmc.dts
- Rephase commit messages for clarity

Ng Tze Yee (2):
dt-bindings: intel: Add Agilex eMMC support
arm64: dts: socfpga: agilex: add emmc support

 .../bindings/arm/intel,socfpga.yaml           |   1 +
 arch/arm64/boot/dts/intel/Makefile            |   1 +
 .../dts/intel/socfpga_agilex_socdk_emmc.dts   | 105 ++++++++++++++++++
 3 files changed, 107 insertions(+)
 create mode 100644 arch/arm64/boot/dts/intel/socfpga_agilex_socdk_emmc.dts
Signature · 1 line
2.25.1
#1 lore raw

PATCH v2 1/2 dt-bindings: intel: Add Agilex eMMC support

From: Ng Tze Yee <[email protected]>

Agilex devkit support a separate eMMC daughter card. Document Agilex eMMC daughter board compatible.

---
Changes in v2:
- Add new compatible string for the eMMC daughter card in the binding file

---
 Documentation/devicetree/bindings/arm/intel,socfpga.yaml | 1 +
 1 file changed, 1 insertion(+)
Documentation/devicetree/bindings/arm/intel,socfpga.yaml +1 -0
index c918837bd41c..5fe0938662b0 100644
@@ -20,6 +20,7 @@ properties:
               - intel,n5x-socdk
               - intel,socfpga-agilex-n6000
               - intel,socfpga-agilex-socdk
+              - intel,socfpga-agilex-socdk-emmc
           - const: intel,socfpga-agilex
       - description: Agilex3 boards
         items:
Signature · 1 line
2.25.1
Acked-by on v2 1/2
#2 lore raw

Re: [PATCH v2 1/2] dt-bindings: intel: Add Agilex eMMC support

Quoted 5 lines · On Wed, Jan 14, 2026 at 01:42:52AM -0800, [email protected] wrote:

From: Ng Tze Yee <[email protected]>

Agilex devkit support a separate eMMC daughter card. Document Agilex eMMC daughter board compatible.

Quoted 7 lines

---
Changes in v2:
- Add new compatible string for the eMMC daughter card in the binding file

---
 Documentation/devicetree/bindings/arm/intel,socfpga.yaml | 1 +
 1 file changed, 1 insertion(+)

Best regards,
Krzysztof

#3 lore raw

PATCH v2 2/2 arm64: dts: socfpga: agilex: add emmc support

In reply to [email protected]

From: Ng Tze Yee <[email protected]>

The Agilex devkit supports a separate eMMC daughter card. The eMMC daughter card replaces the SDMMC slot that is on the default daughter card and thus requires a separate board dts file.

---
Changes in v2:
- Fix space indentation in socfpga_agilex_socdk_emmc.dts
- Fix compatible string in socfpga_agilex_socdk_emmc.dts
- Rephase commit messages for clarity

---
 arch/arm64/boot/dts/intel/Makefile            |   1 +
 .../dts/intel/socfpga_agilex_socdk_emmc.dts   | 105 ++++++++++++++++++
 2 files changed, 106 insertions(+)
 create mode 100644 arch/arm64/boot/dts/intel/socfpga_agilex_socdk_emmc.dts
arch/arm64/boot/dts/intel/Makefile +1 -0
index a117268267ee..6f4da79725de 100644
@@ -1,6 +1,7 @@
 # SPDX-License-Identifier: GPL-2.0-only
 dtb-$(CONFIG_ARCH_INTEL_SOCFPGA) += socfpga_agilex_n6000.dtb \
 				socfpga_agilex_socdk.dtb \
+				socfpga_agilex_socdk_emmc.dtb \
 				socfpga_agilex_socdk_nand.dtb \
 				socfpga_agilex3_socdk.dtb \
 				socfpga_agilex5_socdk.dtb \
arch/arm64/boot/dts/intel/socfpga_agilex_socdk_emmc.dts new file +105 -0

105 lines not on this page · raw message

Signature · 1 line
2.25.1
#4 lore raw

Re: [PATCH v2 2/2] arm64: dts: socfpga: agilex: add emmc support

Quoted 36 lines · On 1/14/26 03:42, [email protected] wrote:

From: Ng Tze Yee <[email protected]>

The Agilex devkit supports a separate eMMC daughter card. The eMMC daughter card replaces the SDMMC slot that is on the default daughter card and thus requires a separate board dts file.

---
Changes in v2:
- Fix space indentation in socfpga_agilex_socdk_emmc.dts
- Fix compatible string in socfpga_agilex_socdk_emmc.dts
- Rephase commit messages for clarity

---
  arch/arm64/boot/dts/intel/Makefile            |   1 +
  .../dts/intel/socfpga_agilex_socdk_emmc.dts   | 105 ++++++++++++++++++
  2 files changed, 106 insertions(+)

create mode 100644 arch/arm64/boot/dts/intel/socfpga_agilex_socdk_emmc.dts

arch/arm64/boot/dts/intel/Makefile +1 -0
index a117268267ee..6f4da79725de 100644
@@ -1,6 +1,7 @@
  # SPDX-License-Identifier: GPL-2.0-only
  dtb-$(CONFIG_ARCH_INTEL_SOCFPGA) += socfpga_agilex_n6000.dtb \
  				socfpga_agilex_socdk.dtb \
+				socfpga_agilex_socdk_emmc.dtb \
  				socfpga_agilex_socdk_nand.dtb \
  				socfpga_agilex3_socdk.dtb \
  				socfpga_agilex5_socdk.dtb \
arch/arm64/boot/dts/intel/socfpga_agilex_socdk_emmc.dts new file +0 -0
new file mode 100644
index 000000000000..c616c1eb6f1c

arch/arm64/boot/dts/intel/socfpga_agilex_socdk_emmc.dts line 3

Quoted 3 lines
arch/arm64/boot/dts/intel/socfpga_agilex_socdk_emmc.dts new file +3 -0
@@ -0,0 +1,105 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Copyright (C) 2026, Intel Corporation

This should be Altera.

arch/arm64/boot/dts/intel/socfpga_agilex_socdk_emmc.dts line 8

Quoted 5 lines
arch/arm64/boot/dts/intel/socfpga_agilex_socdk_emmc.dts new file +5 -0
+ */
+#include "socfpga_agilex.dtsi"
+
+/ {
+	model = "SoCFPGA Agilex SoCDK";

Please append "eMMC daughter board" to the model.

Quoted 45 lines
arch/arm64/boot/dts/intel/socfpga_agilex_socdk_emmc.dts new file +45 -0
+	compatible = "intel,socfpga-agilex-socdk-emmc", "intel,socfpga-agilex";
+
+	aliases {
+		serial0 = &uart0;
+		ethernet0 = &gmac0;
+		ethernet1 = &gmac1;
+		ethernet2 = &gmac2;
+	};
+
+	chosen {
+		stdout-path = "serial0:115200n8";
+	};
+
+	leds {
+		compatible = "gpio-leds";
+		led0 {
+			label = "hps_led0";
+			gpios = <&portb 20 GPIO_ACTIVE_HIGH>;
+		};
+
+		led1 {
+			label = "hps_led1";
+			gpios = <&portb 19 GPIO_ACTIVE_HIGH>;
+		};
+
+		led2 {
+			label = "hps_led2";
+			gpios = <&portb 21 GPIO_ACTIVE_HIGH>;
+		};
+	};
+
+	memory@80000000 {
+		device_type = "memory";
+		/* We expect the bootloader to fill in the reg */
+		reg = <0 0x80000000 0 0>;
+	};
+};
+
+&gpio1 {
+	status = "okay";
+};
+
+&gmac2 {
+	status = "okay";
+	/* PHY delays is configured via skew properties */

arch/arm64/boot/dts/intel/socfpga_agilex_socdk_emmc.dts line 63

Quoted 10 lines
arch/arm64/boot/dts/intel/socfpga_agilex_socdk_emmc.dts new file +10 -0
+	phy-mode = "rgmii";
+	phy-handle = <&phy0>;
+
+	max-frame-size = <9000>;
+
+	mdio0 {
+		#address-cells = <1>;
+		#size-cells = <0>;
+		compatible = "snps,dwmac-mdio";
+		phy0: ethernet-phy@0 {

This should be ethernet-phy@4

Dinh