Re: [PATCH v6 0/3] firmware: Add coreboot CFR firmware attributes driver
From: Derek J. Clark
Date: Mon Jul 13 2026 - 05:57:47 EST
On July 13, 2026 5:13:14 PM GMT+09:00, Sean Rhodes <sean@starlabs.systems> wrote:
>Move the firmware attributes class helper out of platform/x86, rename
>the coreboot-table firmware driver directory from google to coreboot, and
>add a coreboot CFR firmware attributes driver.
>
>Changes in v6:
>- Move firmware_attributes.h into the sorted Linux include block in each
> converted platform/x86 driver.
>- Add Derek's Reviewed-by to patch 1.
>
Hi Sean,
Generally you will want to give a bit more time between revisions to allow people to review. 1-2 days during the work week is usually the acceptable minimum time between versions. Sending too frequently can cause people to review older patches without noticing the same issue was already identified/fixed later and nobody wants to read the same patch 4 times in a row on a Monday.
Cheers,
- Derek
>Sean Rhodes (3):
> firmware: Move firmware attributes class helper
> firmware: Rename google firmware directory to coreboot
> firmware: coreboot: Add CFR firmware attributes driver
>
> MAINTAINERS | 18 +-
> drivers/firmware/Kconfig | 5 +-
> drivers/firmware/Makefile | 3 +-
> drivers/firmware/{google => coreboot}/Kconfig | 19 +-
> .../firmware/{google => coreboot}/Makefile | 1 +
> drivers/firmware/{google => coreboot}/cbmem.c | 0
> drivers/firmware/coreboot/coreboot-cfr.c | 1065 +++++++++++++++++
> .../{google => coreboot}/coreboot_table.c | 0
> .../{google => coreboot}/coreboot_table.h | 0
> .../framebuffer-coreboot.c | 0
> drivers/firmware/{google => coreboot}/gsmi.c | 0
> .../memconsole-coreboot.c | 0
> .../memconsole-x86-legacy.c | 0
> .../{google => coreboot}/memconsole.c | 0
> .../{google => coreboot}/memconsole.h | 6 +-
> drivers/firmware/{google => coreboot}/vpd.c | 0
> .../{google => coreboot}/vpd_decode.c | 0
> .../{google => coreboot}/vpd_decode.h | 0
> .../firmware_attributes_class.c | 2 +-
> drivers/platform/x86/Kconfig | 3 -
> drivers/platform/x86/Makefile | 2 -
> drivers/platform/x86/asus-armoury.c | 2 +-
> .../x86/dell/dell-wmi-sysman/sysman.c | 9 +-
> drivers/platform/x86/hp/hp-bioscfg/bioscfg.c | 9 +-
> drivers/platform/x86/lenovo/think-lmi.c | 5 +-
> drivers/platform/x86/lenovo/wmi-other.c | 2 +-
> drivers/platform/x86/samsung-galaxybook.c | 3 +-
> .../linux/firmware_attributes.h | 6 +-
> 28 files changed, 1128 insertions(+), 32 deletions(-)
> rename drivers/firmware/{google => coreboot}/Kconfig (83%)
> rename drivers/firmware/{google => coreboot}/Makefile (92%)
> rename drivers/firmware/{google => coreboot}/cbmem.c (100%)
> create mode 100644 drivers/firmware/coreboot/coreboot-cfr.c
> rename drivers/firmware/{google => coreboot}/coreboot_table.c (100%)
> rename drivers/firmware/{google => coreboot}/coreboot_table.h (100%)
> rename drivers/firmware/{google => coreboot}/framebuffer-coreboot.c (100%)
> rename drivers/firmware/{google => coreboot}/gsmi.c (100%)
> rename drivers/firmware/{google => coreboot}/memconsole-coreboot.c (100%)
> rename drivers/firmware/{google => coreboot}/memconsole-x86-legacy.c (100%)
> rename drivers/firmware/{google => coreboot}/memconsole.c (100%)
> rename drivers/firmware/{google => coreboot}/memconsole.h (82%)
> rename drivers/firmware/{google => coreboot}/vpd.c (100%)
> rename drivers/firmware/{google => coreboot}/vpd_decode.c (100%)
> rename drivers/firmware/{google => coreboot}/vpd_decode.h (100%)
> rename drivers/{platform/x86 => firmware}/firmware_attributes_class.c (94%)
> rename drivers/platform/x86/firmware_attributes_class.h => include/linux/firmware_attributes.h (60%)
>
>Range-diff against v5:
>1: 4a82d0a07612 ! 1: 02edc6d05059 firmware: Move firmware attributes class helper
> @@ Commit message
> under platform/x86.
>
> Reviewed-by: Mark Pearson <mpearson-lenovo@xxxxxxxxx>
> + Reviewed-by: Derek J. Clark <derekjohn.clark@xxxxxxxxx>
> Signed-off-by: Sean Rhodes <sean@starlabs.systems>
>
> ## MAINTAINERS ##
> @@ drivers/platform/x86/Makefile: obj-$(CONFIG_X86_PLATFORM_DRIVERS_HP) += hp/
> obj-$(CONFIG_SENSORS_HDAPS) += hdaps.o
>
> ## drivers/platform/x86/asus-armoury.c ##
> +@@
> + #include <linux/dmi.h>
> + #include <linux/err.h>
> + #include <linux/errno.h>
> ++#include <linux/firmware_attributes.h>
> + #include <linux/fs.h>
> + #include <linux/kernel.h>
> + #include <linux/kmod.h>
> @@
> #include <linux/sysfs.h>
>
> #include "asus-armoury.h"
> -#include "firmware_attributes_class.h"
> -+#include <linux/firmware_attributes.h>
>
> #define ASUS_NB_WMI_EVENT_GUID "0B3CBB35-E3C2-45ED-91C2-4C5A6D195D1C"
>
>
> ## drivers/platform/x86/dell/dell-wmi-sysman/sysman.c ##
> @@
> + #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> + #include <linux/align.h>
> +-#include <linux/fs.h>
> + #include <linux/dmi.h>
> +-#include <linux/module.h>
> ++#include <linux/firmware_attributes.h>
> ++#include <linux/fs.h>
> + #include <linux/kernel.h>
> ++#include <linux/module.h>
> ++#include <linux/nls.h>
> + #include <linux/string.h>
> #include <linux/sysfs.h>
> #include <linux/wmi.h>
> ++
> #include "dell-wmi-sysman.h"
> -#include "../../firmware_attributes_class.h"
> -+#include <linux/firmware_attributes.h>
>
> #define MAX_TYPES 4
> - #include <linux/nls.h>
> +-#include <linux/nls.h>
> +
> + struct wmi_sysman_priv wmi_priv = {
> + .mutex = __MUTEX_INITIALIZER(wmi_priv.mutex),
>
> ## drivers/platform/x86/hp/hp-bioscfg/bioscfg.c ##
> @@
> +
> + #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
> +
> ++#include <linux/errno.h>
> ++#include <linux/firmware_attributes.h>
> + #include <linux/fs.h>
> +-#include <linux/module.h>
> + #include <linux/kernel.h>
> ++#include <linux/module.h>
> ++#include <linux/nls.h>
> + #include <linux/printk.h>
> #include <linux/string.h>
> #include <linux/wmi.h>
> ++
> #include "bioscfg.h"
> -#include "../../firmware_attributes_class.h"
> -+#include <linux/firmware_attributes.h>
> - #include <linux/nls.h>
> - #include <linux/errno.h>
> +-#include <linux/nls.h>
> +-#include <linux/errno.h>
>
> + MODULE_AUTHOR("Jorge Lopez <jorge.lopez2@xxxxxx>");
> + MODULE_DESCRIPTION("HP BIOS Configuration Driver");
>
> ## drivers/platform/x86/lenovo/think-lmi.c ##
> @@
> +
> + #include <linux/acpi.h>
> + #include <linux/array_size.h>
> ++#include <linux/dmi.h>
> + #include <linux/errno.h>
> ++#include <linux/firmware_attributes.h>
> + #include <linux/fs.h>
> + #include <linux/mutex.h>
> + #include <linux/string_helpers.h>
> #include <linux/types.h>
> - #include <linux/dmi.h>
> +-#include <linux/dmi.h>
> #include <linux/wmi.h>
> -#include "../firmware_attributes_class.h"
> -+#include <linux/firmware_attributes.h>
> ++
> #include "think-lmi.h"
>
> static bool debug_support;
>
> ## drivers/platform/x86/lenovo/wmi-other.c ##
> +@@
> + #include <linux/container_of.h>
> + #include <linux/device.h>
> + #include <linux/export.h>
> ++#include <linux/firmware_attributes.h>
> + #include <linux/gfp_types.h>
> + #include <linux/hwmon.h>
> + #include <linux/idr.h>
> @@
> #include "wmi-capdata.h"
> #include "wmi-events.h"
> #include "wmi-helpers.h"
> -#include "../firmware_attributes_class.h"
> -+#include <linux/firmware_attributes.h>
>
> #define LENOVO_OTHER_MODE_GUID "DC2A8805-3A8C-41BA-A6F7-092E0089CD3B"
>
>
> ## drivers/platform/x86/samsung-galaxybook.c ##
> @@
> + #include <linux/acpi.h>
> + #include <linux/bits.h>
> + #include <linux/err.h>
> ++#include <linux/firmware_attributes.h>
> + #include <linux/i8042.h>
> + #include <linux/init.h>
> + #include <linux/input.h>
> +@@
> + #include <linux/sysfs.h>
> #include <linux/uuid.h>
> #include <linux/workqueue.h>
> ++
> #include <acpi/battery.h>
> -#include "firmware_attributes_class.h"
> -+#include <linux/firmware_attributes.h>
>
> #define DRIVER_NAME "samsung-galaxybook"
>
>2: 285b33f805dc = 2: d5d3d1334994 firmware: Rename google firmware directory to coreboot
>3: ce91f4da5510 = 3: 7a65c6b0e631 firmware: coreboot: Add CFR firmware attributes driver