Skip to contentSkip to conversation

arm: dts: socfpga: Add Agilex5 MDK external GPIO expander support

PATCH In review [email protected] 2 participants 2 messages Oct 28 – Nov 11 Arm (32-bit)

lore
Share & tools
lore
#0 lore raw

PATCH v4 1/1 arm: dts: socfpga: Add Agilex5 MDK external GPIO expander support

From: Alif Zakuan Yuslaimi <[email protected]>

Unlike the Premium DevKit (onboard GPIO), the Modular DevKit steers SD I/O voltage via an external PCA9535 GPIO expander on I2C (address 0x27, pin 1) for the level-shifter control path.

Enable SPL and U-Boot I2C DW plus PCA953X so the expander is available early.

---
Changes in v2:
- Removed binman node setting to delete kernel subnode in arch/arm/dts/socfpga_agilex5_socdk_modular-u-boot.dtsi as this will be done in common SoC64 dtsi in series 503845
- Commit message clean up
- Add socfpga_agilex5_socdk_modular.dtb in arch/arm/dts/Makefile for arch-wide make dtb compilation
- Update copyright year to 2026

Changes in v3:
- Set model string for Agilex5 Modular DevKit
- Advertise SD UHS-I SDR50 and SDR104 modes
- Add sdhci-caps-mask to clear mismatched SDHCI capability bits

Changes in v4:
- Respin subject to match series title style
- Rewrite commit message to lead with hardware delta; drop file inventory
- Add Co-developed-by before each co-author Signed-off-by
- Drop CONFIG_SPL_DM_REGULATOR_GPIO and CONFIG_DM_REGULATOR_GPIO from socfpga_agilex5_modular_defconfig

---
 arch/arm/dts/Makefile                         |   1 +
 .../socfpga_agilex5_socdk_modular-u-boot.dtsi | 151 ++++++++++++++++++
 .../arm/dts/socfpga_agilex5_socdk_modular.dts |  82 ++++++++++
 configs/socfpga_agilex5_modular_defconfig     |   7 +
 4 files changed, 241 insertions(+)
 create mode 100644 arch/arm/dts/socfpga_agilex5_socdk_modular-u-boot.dtsi
 create mode 100644 arch/arm/dts/socfpga_agilex5_socdk_modular.dts
 create mode 100644 configs/socfpga_agilex5_modular_defconfig
arch/arm/dts/Makefile +1 -0
index 099e3f082b6..e5360b23870 100644
@@ -418,6 +418,7 @@ dtb-$(CONFIG_TARGET_THUNDERX_88XX) += thunderx-88xx.dtb
 dtb-$(CONFIG_ARCH_SOCFPGA) +=				\
 	socfpga_agilex5_socdk.dtb			\
 	socfpga_agilex5_socdk_emmc.dtb		\
+	socfpga_agilex5_socdk_modular.dtb		\
 	socfpga_arria5_secu1.dtb			\
 	socfpga_arria5_socdk.dtb			\
 	socfpga_arria10_chameleonv3_270_2.dtb		\
arch/arm/dts/socfpga_agilex5_socdk_modular-u-boot.dtsi new file +151 -0

151 lines not on this page · raw message

arch/arm/dts/socfpga_agilex5_socdk_modular.dts new file +82 -0

82 lines not on this page · raw message

configs/socfpga_agilex5_modular_defconfig new file +7 -0
new file mode 100644
index 00000000000..38690a7864e
@@ -0,0 +1,7 @@
+#include <configs/socfpga_agilex5_defconfig>
+
+CONFIG_DEFAULT_DEVICE_TREE="socfpga_agilex5_socdk_modular"
+CONFIG_SPL_SYS_I2C_DW=y
+CONFIG_SPL_I2C=y
+CONFIG_SPL_DM_PCA953X=y
+CONFIG_DM_PCA953X=y
Signature · 1 line
2.43.7
Reviewed-by on v4 1/1
#1 lore raw
Quoted 45 lines · On 28/10/2026 9:28 am, [email protected] wrote:

From: Alif Zakuan Yuslaimi <[email protected]>

Unlike the Premium DevKit (onboard GPIO), the Modular DevKit steers SD I/O voltage via an external PCA9535 GPIO expander on I2C (address 0x27, pin 1) for the level-shifter control path.

Enable SPL and U-Boot I2C DW plus PCA953X so the expander is available early.

---
Changes in v2:
- Removed binman node setting to delete kernel subnode in arch/arm/dts/socfpga_agilex5_socdk_modular-u-boot.dtsi as this will be done in common SoC64 dtsi in series 503845
- Commit message clean up
- Add socfpga_agilex5_socdk_modular.dtb in arch/arm/dts/Makefile for arch-wide make dtb compilation
- Update copyright year to 2026

Changes in v3:
- Set model string for Agilex5 Modular DevKit
- Advertise SD UHS-I SDR50 and SDR104 modes
- Add sdhci-caps-mask to clear mismatched SDHCI capability bits

Changes in v4:
- Respin subject to match series title style
- Rewrite commit message to lead with hardware delta; drop file inventory
- Add Co-developed-by before each co-author Signed-off-by
- Drop CONFIG_SPL_DM_REGULATOR_GPIO and CONFIG_DM_REGULATOR_GPIO from socfpga_agilex5_modular_defconfig

---
  arch/arm/dts/Makefile                         |   1 +
  .../socfpga_agilex5_socdk_modular-u-boot.dtsi | 151 ++++++++++++++++++
  .../arm/dts/socfpga_agilex5_socdk_modular.dts |  82 ++++++++++
  configs/socfpga_agilex5_modular_defconfig     |   7 +
  4 files changed, 241 insertions(+)

create mode 100644 arch/arm/dts/socfpga_agilex5_socdk_modular-u-boot.dtsi create mode 100644 arch/arm/dts/socfpga_agilex5_socdk_modular.dts create mode 100644 configs/socfpga_agilex5_modular_defconfig

[...]

Best regards,
Tien Fong