[PATCH 0/9] arm: hpe: Add HPE GSC (Gen12) BMC SoC support
Jorge Cisneros
jorge.cisneros at hpe.com
Wed Apr 8 21:24:12 CEST 2026
This series adds support for the HPE GSC (Gen Server Controller), an
ARM64-based BMC SoC used in HPE ProLiant and Synergy Gen12 servers.
The GSC is the successor to the GXP SoC (already upstream) used in
Gen11 servers. It features dual Cortex-A35 cores with GICv3, a Denali
DDR memory controller, Cadence GEM Ethernet (SGMII), and reuses several
GXP IP blocks (timer, SPI, I2C).
The existing ARCH_GXP Kconfig symbol is renamed to ARCH_HPE to serve as
an umbrella for both the GXP (ARMv7) and GSC (ARMv8) SoC variants,
selected via a choice menu under mach-hpe.
New drivers:
- Watchdog (drivers/watchdog/gsc_wdt.c)
- Memory-mapped virtual EEPROM for VPD (drivers/misc/gsc_mem_eeprom.c)
- Cadence GEM support added to the existing MACB driver
Board support includes DRAM sizing from the Denali memory controller,
MAC address provisioning from VPD EEPROM, FDT fixups for network
configuration, shared Ethernet/DisplayPort PHY initialization, and a
server_id command for reading server identification from the CPLD.
Notes:
- The server_id command (patch 7) is hardware-specific and reads from
GSC CPLD registers, so no sandbox test is included.
- MAINTAINERS warnings in patches 1-8 are resolved by patch 9.
Based on v2026.04-rc4 (ba7bf918dafcd093ad733b07ba490baeb20cf5da).
Tested: both gxp_defconfig and gsc_defconfig build cleanly.
Signed-off-by: Jorge Cisneros <jorge.cisneros at hpe.com>
---
Jorge Cisneros (9):
arm: hpe: Rename ARCH_GXP to ARCH_HPE and add GSC SoC choice
arm: hpe: Add GSC SoC support
arm: dts: Add HPE GSC device tree
watchdog: Add HPE GSC watchdog driver
misc: Add HPE GSC memory-mapped EEPROM driver
net: macb: Add HPE GSC GEM Ethernet support
board: hpe: Add GSC board support
configs: Add gsc_defconfig for HPE GSC SoC
MAINTAINERS: Add HPE GSC files and maintainer
MAINTAINERS | 8 +-
arch/arm/Kconfig | 9 +-
arch/arm/Makefile | 2 +-
arch/arm/dts/hpe-gsc.dts | 146 ++++++++
arch/arm/include/asm/arch-gsc/clk.h | 14 +
arch/arm/mach-hpe/Kconfig | 33 ++
arch/arm/mach-hpe/Makefile | 1 +
arch/arm/mach-hpe/gsc/Kconfig | 27 ++
arch/arm/mach-hpe/gsc/Makefile | 1 +
arch/arm/mach-hpe/gsc/reset.c | 19 +
arch/arm/mach-hpe/gxp/Kconfig | 2 +-
board/hpe/gsc/Kconfig | 18 +
board/hpe/gsc/Makefile | 3 +
board/hpe/gsc/common-phy-wrapper-addresses.h | 86 +++++
board/hpe/gsc/common-phy.c | 296 +++++++++++++++
board/hpe/gsc/common-phy.h | 8 +
board/hpe/gsc/gsc.env | 9 +
board/hpe/gsc/gsc_board.c | 538 +++++++++++++++++++++++++++
board/hpe/gsc/server_id.c | 51 +++
configs/gsc_defconfig | 88 +++++
configs/gxp_defconfig | 2 +-
drivers/misc/Kconfig | 7 +
drivers/misc/Makefile | 1 +
drivers/misc/gsc_mem_eeprom.c | 118 ++++++
drivers/net/macb.c | 17 +
drivers/watchdog/Kconfig | 7 +
drivers/watchdog/Makefile | 1 +
drivers/watchdog/gsc_wdt.c | 110 ++++++
include/configs/gsc.h | 25 ++
29 files changed, 1640 insertions(+), 7 deletions(-)
---
base-commit: ba7bf918dafcd093ad733b07ba490baeb20cf5da
change-id: 20260408-hpe-gsc-upstream-369c5ee59c0a
Best regards,
--
Jorge Cisneros <jorge.cisneros at hpe.com>
More information about the U-Boot
mailing list