[PATCH v10 3/4] firmware: Rename google firmware directory to coreboot
From: Sean Rhodes
Date: Tue Jul 28 2026 - 04:27:47 EST
Most drivers in drivers/firmware/google are coreboot table drivers rather
than Google-specific firmware drivers. Rename the directory to coreboot
and update the Kconfig prompt, build path and maintainer entry.
Rename the generic coreboot Kconfig symbols at the same time. Keep the old
CONFIG_GOOGLE_* names as transitional symbols so existing configurations
migrate to the new names.
Suggested-by: Julius Werner <jwerner@xxxxxxxxxxxx>
Signed-off-by: Sean Rhodes <sean@starlabs.systems>
---
MAINTAINERS | 4 +-
arch/arm64/configs/defconfig | 6 +-
drivers/firmware/Kconfig | 2 +-
drivers/firmware/Makefile | 2 +-
drivers/firmware/{google => coreboot}/Kconfig | 74 ++++++++++++++-----
.../firmware/{google => coreboot}/Makefile | 10 +--
drivers/firmware/{google => coreboot}/cbmem.c | 0
.../{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
drivers/gpu/drm/sysfb/Kconfig | 2 +-
19 files changed, 72 insertions(+), 34 deletions(-)
rename drivers/firmware/{google => coreboot}/Kconfig (64%)
rename drivers/firmware/{google => coreboot}/Makefile (51%)
rename drivers/firmware/{google => coreboot}/cbmem.c (100%)
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%)
diff --git a/MAINTAINERS b/MAINTAINERS
index 3b21dc411b43..8c2634a8dc13 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -11069,14 +11069,14 @@ S: Maintained
F: Documentation/networking/device_drivers/ethernet/google/gve.rst
F: drivers/net/ethernet/google
-GOOGLE FIRMWARE DRIVERS
+COREBOOT FIRMWARE DRIVERS
M: Tzung-Bi Shih <tzungbi@xxxxxxxxxx>
R: Brian Norris <briannorris@xxxxxxxxxxxx>
R: Julius Werner <jwerner@xxxxxxxxxxxx>
L: chrome-platform@xxxxxxxxxxxxxxx
S: Maintained
T: git git://git.kernel.org/pub/scm/linux/kernel/git/chrome-platform/linux.git
-F: drivers/firmware/google/
+F: drivers/firmware/coreboot/
F: include/linux/coreboot.h
GOOGLE TENSOR SoC SUPPORT
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index 654a102cb5bc..32ec89a872d9 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -267,9 +267,9 @@ CONFIG_RASPBERRYPI_FIRMWARE=y
CONFIG_INTEL_STRATIX10_SERVICE=y
CONFIG_INTEL_STRATIX10_RSU=m
CONFIG_MTK_ADSP_IPC=m
-CONFIG_GOOGLE_FIRMWARE=y
-CONFIG_GOOGLE_CBMEM=m
-CONFIG_GOOGLE_COREBOOT_TABLE=m
+CONFIG_COREBOOT_FIRMWARE=y
+CONFIG_COREBOOT_CBMEM=m
+CONFIG_COREBOOT_TABLE=m
CONFIG_EFI_CAPSULE_LOADER=y
CONFIG_IMX_SCU=y
CONFIG_QCOM_TZMEM_MODE_SHMBRIDGE=y
diff --git a/drivers/firmware/Kconfig b/drivers/firmware/Kconfig
index 78a239f8bbef..4df0a0ad18b8 100644
--- a/drivers/firmware/Kconfig
+++ b/drivers/firmware/Kconfig
@@ -293,7 +293,7 @@ endif # TURRIS_MOX_RWTM
source "drivers/firmware/arm_ffa/Kconfig"
source "drivers/firmware/broadcom/Kconfig"
source "drivers/firmware/cirrus/Kconfig"
-source "drivers/firmware/google/Kconfig"
+source "drivers/firmware/coreboot/Kconfig"
source "drivers/firmware/efi/Kconfig"
source "drivers/firmware/imx/Kconfig"
source "drivers/firmware/meson/Kconfig"
diff --git a/drivers/firmware/Makefile b/drivers/firmware/Makefile
index 385b6e8b7fc6..f8da96382680 100644
--- a/drivers/firmware/Makefile
+++ b/drivers/firmware/Makefile
@@ -30,7 +30,7 @@ obj-y += broadcom/
obj-y += cirrus/
obj-y += meson/
obj-y += microchip/
-obj-$(CONFIG_GOOGLE_FIRMWARE) += google/
+obj-$(CONFIG_COREBOOT_FIRMWARE) += coreboot/
obj-y += efi/
obj-y += imx/
obj-y += psci/
diff --git a/drivers/firmware/google/Kconfig b/drivers/firmware/coreboot/Kconfig
similarity index 64%
rename from drivers/firmware/google/Kconfig
rename to drivers/firmware/coreboot/Kconfig
index b78c644fa253..d273bd836245 100644
--- a/drivers/firmware/google/Kconfig
+++ b/drivers/firmware/coreboot/Kconfig
@@ -1,13 +1,16 @@
# SPDX-License-Identifier: GPL-2.0-only
-menuconfig GOOGLE_FIRMWARE
- bool "Google Firmware Drivers"
+menuconfig COREBOOT_FIRMWARE
+ bool "coreboot firmware drivers"
+ default GOOGLE_FIRMWARE
default n
help
- These firmware drivers are used by Google servers,
- Chromebooks and other devices using coreboot firmware.
+ These firmware drivers are used by devices running coreboot
+ firmware, including Chromebooks and some Google servers.
+ They include shared support for coreboot table entries and
+ drivers for CBMEM, framebuffer, firmware console and VPD records.
If in doubt, say "N".
-if GOOGLE_FIRMWARE
+if COREBOOT_FIRMWARE
config GOOGLE_SMI
tristate "SMI interface for Google platforms"
@@ -19,9 +22,10 @@ config GOOGLE_SMI
driver provides an interface for reading and writing NVRAM
variables.
-config GOOGLE_CBMEM
+config COREBOOT_CBMEM
tristate "CBMEM entries in sysfs"
- depends on GOOGLE_COREBOOT_TABLE
+ depends on COREBOOT_TABLE
+ default GOOGLE_CBMEM
help
CBMEM is a downwards-growing memory region created by the
Coreboot BIOS containing tagged data structures from the
@@ -34,9 +38,10 @@ config GOOGLE_CBMEM
memory for each entry in sysfs under
/sys/bus/coreboot/devices/cbmem-<id>.
-config GOOGLE_COREBOOT_TABLE
+config COREBOOT_TABLE
tristate "Coreboot Table Access"
depends on HAS_IOMEM && (ACPI || OF)
+ default GOOGLE_COREBOOT_TABLE
help
This option enables the coreboot_table module, which provides other
firmware modules access to the coreboot table. The coreboot table
@@ -44,42 +49,75 @@ config GOOGLE_COREBOOT_TABLE
device tree node /firmware/coreboot.
If unsure say N.
-config GOOGLE_MEMCONSOLE
+config COREBOOT_MEMCONSOLE_COMMON
tristate
- depends on GOOGLE_MEMCONSOLE_X86_LEGACY || GOOGLE_MEMCONSOLE_COREBOOT
+ depends on GOOGLE_MEMCONSOLE_X86_LEGACY || COREBOOT_MEMCONSOLE
+ default GOOGLE_MEMCONSOLE
config GOOGLE_MEMCONSOLE_X86_LEGACY
tristate "Firmware Memory Console - X86 Legacy support"
depends on X86 && ACPI && DMI
- select GOOGLE_MEMCONSOLE
+ select COREBOOT_MEMCONSOLE_COMMON
help
This option enables the kernel to search for a firmware log in
the EBDA on Google servers. If found, this log is exported to
userland in the file /sys/firmware/log.
+ This driver is limited to x86 systems that expose the legacy
+ Google EBDA console format.
-config GOOGLE_FRAMEBUFFER_COREBOOT
+config COREBOOT_FRAMEBUFFER
tristate "Coreboot Framebuffer"
- depends on GOOGLE_COREBOOT_TABLE
+ depends on COREBOOT_TABLE
+ default GOOGLE_FRAMEBUFFER_COREBOOT
help
This option enables the kernel to search for a framebuffer in
the coreboot table. If found, it is registered with a platform
device of type coreboot-framebuffer. Using the old device of
type simple-framebuffer is deprecated.
-config GOOGLE_MEMCONSOLE_COREBOOT
+config COREBOOT_MEMCONSOLE
tristate "Firmware Memory Console"
- depends on GOOGLE_COREBOOT_TABLE
- select GOOGLE_MEMCONSOLE
+ depends on COREBOOT_TABLE
+ select COREBOOT_MEMCONSOLE_COMMON
+ default GOOGLE_MEMCONSOLE_COREBOOT
help
This option enables the kernel to search for a firmware log in
the coreboot table. If found, this log is exported to userland
in the file /sys/firmware/log.
+ This is the coreboot-table backed variant of the firmware memory
+ console driver.
config GOOGLE_VPD
tristate "Vital Product Data"
- depends on GOOGLE_COREBOOT_TABLE
+ depends on COREBOOT_TABLE
help
This option enables the kernel to expose the content of Google VPD
under /sys/firmware/vpd.
+ VPD records carry firmware-provided key/value data used by
+ Google devices.
+
+endif # COREBOOT_FIRMWARE
-endif # GOOGLE_FIRMWARE
+config GOOGLE_FIRMWARE
+ bool
+ transitional
+
+config GOOGLE_CBMEM
+ tristate
+ transitional
+
+config GOOGLE_COREBOOT_TABLE
+ tristate
+ transitional
+
+config GOOGLE_MEMCONSOLE
+ tristate
+ transitional
+
+config GOOGLE_FRAMEBUFFER_COREBOOT
+ tristate
+ transitional
+
+config GOOGLE_MEMCONSOLE_COREBOOT
+ tristate
+ transitional
diff --git a/drivers/firmware/google/Makefile b/drivers/firmware/coreboot/Makefile
similarity index 51%
rename from drivers/firmware/google/Makefile
rename to drivers/firmware/coreboot/Makefile
index 8151e323cc43..e681f274417a 100644
--- a/drivers/firmware/google/Makefile
+++ b/drivers/firmware/coreboot/Makefile
@@ -1,14 +1,14 @@
# SPDX-License-Identifier: GPL-2.0
obj-$(CONFIG_GOOGLE_SMI) += gsmi.o
-obj-$(CONFIG_GOOGLE_COREBOOT_TABLE) += coreboot_table.o
-obj-$(CONFIG_GOOGLE_FRAMEBUFFER_COREBOOT) += framebuffer-coreboot.o
-obj-$(CONFIG_GOOGLE_MEMCONSOLE) += memconsole.o
-obj-$(CONFIG_GOOGLE_MEMCONSOLE_COREBOOT) += memconsole-coreboot.o
+obj-$(CONFIG_COREBOOT_TABLE) += coreboot_table.o
+obj-$(CONFIG_COREBOOT_FRAMEBUFFER) += framebuffer-coreboot.o
+obj-$(CONFIG_COREBOOT_MEMCONSOLE_COMMON) += memconsole.o
+obj-$(CONFIG_COREBOOT_MEMCONSOLE) += memconsole-coreboot.o
obj-$(CONFIG_GOOGLE_MEMCONSOLE_X86_LEGACY) += memconsole-x86-legacy.o
# Must come after coreboot_table.o, as this driver depends on that bus type.
-obj-$(CONFIG_GOOGLE_CBMEM) += cbmem.o
+obj-$(CONFIG_COREBOOT_CBMEM) += cbmem.o
vpd-sysfs-y := vpd.o vpd_decode.o
obj-$(CONFIG_GOOGLE_VPD) += vpd-sysfs.o
diff --git a/drivers/firmware/google/cbmem.c b/drivers/firmware/coreboot/cbmem.c
similarity index 100%
rename from drivers/firmware/google/cbmem.c
rename to drivers/firmware/coreboot/cbmem.c
diff --git a/drivers/firmware/google/coreboot_table.c b/drivers/firmware/coreboot/coreboot_table.c
similarity index 100%
rename from drivers/firmware/google/coreboot_table.c
rename to drivers/firmware/coreboot/coreboot_table.c
diff --git a/drivers/firmware/google/coreboot_table.h b/drivers/firmware/coreboot/coreboot_table.h
similarity index 100%
rename from drivers/firmware/google/coreboot_table.h
rename to drivers/firmware/coreboot/coreboot_table.h
diff --git a/drivers/firmware/google/framebuffer-coreboot.c b/drivers/firmware/coreboot/framebuffer-coreboot.c
similarity index 100%
rename from drivers/firmware/google/framebuffer-coreboot.c
rename to drivers/firmware/coreboot/framebuffer-coreboot.c
diff --git a/drivers/firmware/google/gsmi.c b/drivers/firmware/coreboot/gsmi.c
similarity index 100%
rename from drivers/firmware/google/gsmi.c
rename to drivers/firmware/coreboot/gsmi.c
diff --git a/drivers/firmware/google/memconsole-coreboot.c b/drivers/firmware/coreboot/memconsole-coreboot.c
similarity index 100%
rename from drivers/firmware/google/memconsole-coreboot.c
rename to drivers/firmware/coreboot/memconsole-coreboot.c
diff --git a/drivers/firmware/google/memconsole-x86-legacy.c b/drivers/firmware/coreboot/memconsole-x86-legacy.c
similarity index 100%
rename from drivers/firmware/google/memconsole-x86-legacy.c
rename to drivers/firmware/coreboot/memconsole-x86-legacy.c
diff --git a/drivers/firmware/google/memconsole.c b/drivers/firmware/coreboot/memconsole.c
similarity index 100%
rename from drivers/firmware/google/memconsole.c
rename to drivers/firmware/coreboot/memconsole.c
diff --git a/drivers/firmware/google/memconsole.h b/drivers/firmware/coreboot/memconsole.h
similarity index 82%
rename from drivers/firmware/google/memconsole.h
rename to drivers/firmware/coreboot/memconsole.h
index aaff2b72b606..58899c2abaaa 100644
--- a/drivers/firmware/google/memconsole.h
+++ b/drivers/firmware/coreboot/memconsole.h
@@ -7,8 +7,8 @@
* Copyright 2017 Google Inc.
*/
-#ifndef __FIRMWARE_GOOGLE_MEMCONSOLE_H
-#define __FIRMWARE_GOOGLE_MEMCONSOLE_H
+#ifndef __FIRMWARE_COREBOOT_MEMCONSOLE_H
+#define __FIRMWARE_COREBOOT_MEMCONSOLE_H
#include <linux/types.h>
@@ -33,4 +33,4 @@ int memconsole_sysfs_init(void);
*/
void memconsole_exit(void);
-#endif /* __FIRMWARE_GOOGLE_MEMCONSOLE_H */
+#endif /* __FIRMWARE_COREBOOT_MEMCONSOLE_H */
diff --git a/drivers/firmware/google/vpd.c b/drivers/firmware/coreboot/vpd.c
similarity index 100%
rename from drivers/firmware/google/vpd.c
rename to drivers/firmware/coreboot/vpd.c
diff --git a/drivers/firmware/google/vpd_decode.c b/drivers/firmware/coreboot/vpd_decode.c
similarity index 100%
rename from drivers/firmware/google/vpd_decode.c
rename to drivers/firmware/coreboot/vpd_decode.c
diff --git a/drivers/firmware/google/vpd_decode.h b/drivers/firmware/coreboot/vpd_decode.h
similarity index 100%
rename from drivers/firmware/google/vpd_decode.h
rename to drivers/firmware/coreboot/vpd_decode.h
diff --git a/drivers/gpu/drm/sysfb/Kconfig b/drivers/gpu/drm/sysfb/Kconfig
index 2559ead6cf1f..34d3fa8b30c9 100644
--- a/drivers/gpu/drm/sysfb/Kconfig
+++ b/drivers/gpu/drm/sysfb/Kconfig
@@ -10,7 +10,7 @@ config DRM_SYSFB_HELPER
config DRM_COREBOOTDRM
tristate "Coreboot framebuffer driver"
depends on DRM && MMU
- depends on GOOGLE_FRAMEBUFFER_COREBOOT
+ depends on COREBOOT_FRAMEBUFFER
select APERTURE_HELPERS
select DRM_CLIENT_SELECTION
select DRM_GEM_SHMEM_HELPER