[PATCH v1 0/1] fpga: m10bmc-sec: add image_load sysfs for N3000/D5005
"Ionut Nechita (Wind River)" <[email protected]> Wed, 15 Jul 2026 10:38:53 +0300
| Newsgroups | org.kernel.vger.linux-fpga,dev.linux.lists.mfd,org.kernel.vger.linux-kernel |
|---|---|
| Message-ID | <[email protected]> |
From: Ionut Nechita <[email protected]> The mainline Intel MAX10 BMC secure-update driver can stage and flash a new image through the firmware-upload ABI, but it has no way to trigger a reload of an image that is already resident in FLASH or EEPROM. OPAE userspace needs that trigger to switch between the BMC factory/user images and to reload the PKVL retimer firmware without running a full firmware-upload cycle. This series adds the control/available_images and control/image_load sysfs attributes for the N3000 and D5005 cards, restoring image-reload parity with linux-dfl for those two boards: - N3000: bmc_factory, bmc_user, retimer_fw - D5005: bmc_factory, bmc_user (config-select polarity inverted vs N3000, hence a separate ops/handler table) The control group is only visible when the device ops provide an image_load table, so N6000 (.image_load = NULL) is unaffected. The N6000 PMCI and SDM image-load handlers are deliberately not included here; they depend on the wider PMCI stack that has not been upstreamed yet. The code is derived from the linux-dfl commits 604ad4f48cee and e1b885714f68 by Russ Weight, Tianfei Zhang, Xu Yilun and Ilpo Järvinen, adapted to the current mainline driver structure. New sysfs attributes are documented under Documentation/ABI/testing/. No functional change for N6000/PMCI/SDM devices. checkpatch --strict is clean and the driver builds as a module on x86_64. Ionut Nechita (1): fpga: m10bmc-sec: add image_load sysfs for N3000 and D5005 .../sysfs-driver-intel-m10-bmc-sec-update | 23 ++ drivers/fpga/intel-m10-bmc-sec-update.c | 286 +++++++++++++++++- include/linux/mfd/intel-m10-bmc.h | 31 ++ 3 files changed, 339 insertions(+), 1 deletion(-) base-commit: cc2b5f627e8ccbae1188ef2d8be3e451d7f933a5 -- 2.55.0