| # SPDX-License-Identifier: GPL-2.0-only | |
| menuconfig GOOGLE_FIRMWARE | |
| bool "Google Firmware Drivers" | |
| default n | |
| help | |
| These firmware drivers are used by Google servers, | |
| Chromebooks and other devices using coreboot firmware. | |
| If in doubt, say "N". | |
| if GOOGLE_FIRMWARE | |
| config GOOGLE_SMI | |
| tristate "SMI interface for Google platforms" | |
| depends on X86 && ACPI && DMI | |
| help | |
| Say Y here if you want to enable SMI callbacks for Google | |
| platforms. This provides an interface for writing to and | |
| clearing the event log. If CONFIG_EFI is also enabled this | |
| driver provides an interface for reading and writing NVRAM | |
| variables. | |
| config GOOGLE_CBMEM | |
| tristate "CBMEM entries in sysfs" | |
| depends on GOOGLE_COREBOOT_TABLE | |
| help | |
| CBMEM is a downwards-growing memory region created by the | |
| Coreboot BIOS containing tagged data structures from the | |
| BIOS. These data structures expose things like the verified | |
| boot firmware variables, flash layout, firmware event log, | |
| and more. | |
| This option enables the cbmem module, which causes the | |
| kernel to search for Coreboot CBMEM entries, and expose the | |
| memory for each entry in sysfs under | |
| /sys/bus/coreboot/devices/cbmem-<id>. | |
| config GOOGLE_COREBOOT_TABLE | |
| tristate "Coreboot Table Access" | |
| depends on HAS_IOMEM && (ACPI || OF) | |
| help | |
| This option enables the coreboot_table module, which provides other | |
| firmware modules access to the coreboot table. The coreboot table | |
| pointer is accessed through the ACPI "GOOGCB00" object or the | |
| device tree node /firmware/coreboot. | |
| If unsure say N. | |
| config GOOGLE_MEMCONSOLE | |
| tristate | |
| depends on GOOGLE_MEMCONSOLE_X86_LEGACY || GOOGLE_MEMCONSOLE_COREBOOT | |
| config GOOGLE_MEMCONSOLE_X86_LEGACY | |
| tristate "Firmware Memory Console - X86 Legacy support" | |
| depends on X86 && ACPI && DMI | |
| select GOOGLE_MEMCONSOLE | |
| 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. | |
| config GOOGLE_FRAMEBUFFER_COREBOOT | |
| tristate "Coreboot Framebuffer" | |
| depends on GOOGLE_COREBOOT_TABLE | |
| 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 | |
| tristate "Firmware Memory Console" | |
| depends on GOOGLE_COREBOOT_TABLE | |
| select GOOGLE_MEMCONSOLE | |
| 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. | |
| config GOOGLE_VPD | |
| tristate "Vital Product Data" | |
| depends on GOOGLE_COREBOOT_TABLE | |
| help | |
| This option enables the kernel to expose the content of Google VPD | |
| under /sys/firmware/vpd. | |
| endif # GOOGLE_FIRMWARE |