• Jithu Joseph's avatar
    platform/x86: Add Slim Bootloader firmware update signaling driver · 2d30fcdd
    Jithu Joseph authored
    Slim Bootloader(SBL) is a small open-source boot firmware,
    designed for running on certain Intel platforms. SBL can be
    thought-of as fulfilling the role of a minimal BIOS
    implementation, i.e initializing the hardware and booting
    Operating System.
    
    Since SBL is not UEFI compliant, firmware update cannot be triggered
    using standard UEFI runtime services. Further considering performance
    impact, SBL doesn't look for a firmware update image on every reset
    and does so only when firmware update signal is asserted.
    
    SBL exposes an ACPI-WMI device which comes up in sysfs as
    /sys/bus/wmi/44FADEB1xxx and this driver adds a
    "firmware_update_request" device attribute. This attribute normally
    has a value of 0 and userspace can signal SBL to update firmware,
    on next reboot, by writing a value of 1 like:
    
    echo 1 > /sys/bus/wmi/devices/44FADEB1xxx/firmware_update_request
    
    This driver only implements a signaling mechanism, the actual firmware
    update process and various details like firmware update image format,
    firmware image location etc are defined by SBL and are not in the
    scope of this driver.
    
    DocLink: https://slimbootloader.github.io/security/firmware-update.htmlSigned-off-by: default avatarJithu Joseph <jithu.joseph@intel.com>
    Signed-off-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
    2d30fcdd
Kconfig 45.5 KB