The PFRU(Platform Firmware Runtime Update) kernel interface is designed to interact with the platform firmware interface defined in the Management Mode Firmware Runtime Update specification[1]. The primary function of PFRU is to carry out runtime updates of the platform firmware, which doesn't require the system to be restarted. It also allows telemetry data to be retrieved from the platform firmware. [1] https://uefi.org/sites/default/files/resources/Intel_MM_OS_Interface_Spec_Rev100.pdf Chen Yu (4): efi: Introduce EFI_FIRMWARE_MANAGEMENT_CAPSULE_HEADER and corresponding structures drivers/acpi: Introduce Platform Firmware Runtime Update device driver drivers/acpi: Introduce Platform Firmware Runtime Update Telemetry tools: Introduce power/acpi/pfru/pfru Documentation/ABI/testing/pfru | 41 + .../userspace-api/ioctl/ioctl-number.rst | 1 + drivers/acpi/Kconfig | 1 + drivers/acpi/Makefile | 1 + drivers/acpi/pfru/Kconfig | 16 + drivers/acpi/pfru/Makefile | 2 + drivers/acpi/pfru/pfru_update.c | 943 ++++++++++++++++++ include/linux/efi.h | 50 + include/uapi/linux/pfru.h | 150 +++ tools/power/acpi/pfru/Makefile | 25 + tools/power/acpi/pfru/pfru.8 | 139 +++ tools/power/acpi/pfru/pfru.c | 336 +++++++ 12 files changed, 1705 insertions(+) create mode 100644 Documentation/ABI/testing/pfru create mode 100644 drivers/acpi/pfru/Kconfig create mode 100644 drivers/acpi/pfru/Makefile create mode 100644 drivers/acpi/pfru/pfru_update.c create mode 100644 include/uapi/linux/pfru.h create mode 100644 tools/power/acpi/pfru/Makefile create mode 100644 tools/power/acpi/pfru/pfru.8 create mode 100644 tools/power/acpi/pfru/pfru.c -- 2.25.1