xref: /openbmc/linux/drivers/firmware/google/Kconfig (revision 37fd8391)
1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only
2f952a401SThierry Escandemenuconfig GOOGLE_FIRMWARE
3a1d9a09aSMike Waychison	bool "Google Firmware Drivers"
4a1d9a09aSMike Waychison	default n
5a1d9a09aSMike Waychison	help
6d185a346SBen Hutchings	  These firmware drivers are used by Google servers,
7d185a346SBen Hutchings	  Chromebooks and other devices using coreboot firmware.
8d185a346SBen Hutchings	  If in doubt, say "N".
9a1d9a09aSMike Waychison
10f952a401SThierry Escandeif GOOGLE_FIRMWARE
11a1d9a09aSMike Waychison
1274c5b31cSMike Waychisonconfig GOOGLE_SMI
1374c5b31cSMike Waychison	tristate "SMI interface for Google platforms"
14d31655baSDuncan Laurie	depends on X86 && ACPI && DMI
1574c5b31cSMike Waychison	help
1674c5b31cSMike Waychison	  Say Y here if you want to enable SMI callbacks for Google
1774c5b31cSMike Waychison	  platforms.  This provides an interface for writing to and
189846d860SArd Biesheuvel	  clearing the event log.  If CONFIG_EFI is also enabled this
19d31655baSDuncan Laurie	  driver provides an interface for reading and writing NVRAM
2074c5b31cSMike Waychison	  variables.
21e561bc45SMike Waychison
22d384d6f4SThierry Escandeconfig GOOGLE_COREBOOT_TABLE
23a28aad66SStephen Boyd	tristate "Coreboot Table Access"
24*37fd8391SDavid Gow	depends on HAS_IOMEM && (ACPI || OF)
25d384d6f4SThierry Escande	help
26d384d6f4SThierry Escande	  This option enables the coreboot_table module, which provides other
27a28aad66SStephen Boyd	  firmware modules access to the coreboot table. The coreboot table
28a28aad66SStephen Boyd	  pointer is accessed through the ACPI "GOOGCB00" object or the
29a28aad66SStephen Boyd	  device tree node /firmware/coreboot.
30d384d6f4SThierry Escande	  If unsure say N.
31d384d6f4SThierry Escande
32a28aad66SStephen Boydconfig GOOGLE_COREBOOT_TABLE_ACPI
33a28aad66SStephen Boyd	tristate
34a1d6f9cfSThierry Escande	select GOOGLE_COREBOOT_TABLE
35a28aad66SStephen Boyd
36a28aad66SStephen Boydconfig GOOGLE_COREBOOT_TABLE_OF
37a28aad66SStephen Boyd	tristate
38a28aad66SStephen Boyd	select GOOGLE_COREBOOT_TABLE
39a1d6f9cfSThierry Escande
40e561bc45SMike Waychisonconfig GOOGLE_MEMCONSOLE
41afe9dba4SThierry Escande	tristate
42d384d6f4SThierry Escande	depends on GOOGLE_MEMCONSOLE_X86_LEGACY || GOOGLE_MEMCONSOLE_COREBOOT
43afe9dba4SThierry Escande
44afe9dba4SThierry Escandeconfig GOOGLE_MEMCONSOLE_X86_LEGACY
45afe9dba4SThierry Escande	tristate "Firmware Memory Console - X86 Legacy support"
46afe9dba4SThierry Escande	depends on X86 && ACPI && DMI
47afe9dba4SThierry Escande	select GOOGLE_MEMCONSOLE
48e561bc45SMike Waychison	help
49e561bc45SMike Waychison	  This option enables the kernel to search for a firmware log in
50e561bc45SMike Waychison	  the EBDA on Google servers.  If found, this log is exported to
51e561bc45SMike Waychison	  userland in the file /sys/firmware/log.
52a1d9a09aSMike Waychison
53851b4c14SSamuel Hollandconfig GOOGLE_FRAMEBUFFER_COREBOOT
54851b4c14SSamuel Holland	tristate "Coreboot Framebuffer"
55851b4c14SSamuel Holland	depends on FB_SIMPLE
56851b4c14SSamuel Holland	depends on GOOGLE_COREBOOT_TABLE
57851b4c14SSamuel Holland	help
58851b4c14SSamuel Holland	  This option enables the kernel to search for a framebuffer in
59851b4c14SSamuel Holland	  the coreboot table.  If found, it is registered with simplefb.
60851b4c14SSamuel Holland
61d384d6f4SThierry Escandeconfig GOOGLE_MEMCONSOLE_COREBOOT
62d384d6f4SThierry Escande	tristate "Firmware Memory Console"
63d384d6f4SThierry Escande	depends on GOOGLE_COREBOOT_TABLE
64d384d6f4SThierry Escande	select GOOGLE_MEMCONSOLE
65d384d6f4SThierry Escande	help
66d384d6f4SThierry Escande	  This option enables the kernel to search for a firmware log in
67d384d6f4SThierry Escande	  the coreboot table.  If found, this log is exported to userland
68d384d6f4SThierry Escande	  in the file /sys/firmware/log.
69d384d6f4SThierry Escande
70049a59dbSWei-Ning Huangconfig GOOGLE_VPD
71049a59dbSWei-Ning Huang	tristate "Vital Product Data"
72049a59dbSWei-Ning Huang	depends on GOOGLE_COREBOOT_TABLE
73049a59dbSWei-Ning Huang	help
74049a59dbSWei-Ning Huang	  This option enables the kernel to expose the content of Google VPD
75049a59dbSWei-Ning Huang	  under /sys/firmware/vpd.
76049a59dbSWei-Ning Huang
77f952a401SThierry Escandeendif # GOOGLE_FIRMWARE
78