xref: /linux/drivers/platform/chrome/Kconfig (revision 7aacf86b75bc5523d20fd9127104384fce51ce9c)
1#
2# Platform support for Chrome OS hardware (Chromebooks and Chromeboxes)
3#
4
5menuconfig CHROME_PLATFORMS
6	bool "Platform support for Chrome hardware"
7	depends on X86 || ARM || ARM64 || COMPILE_TEST
8	---help---
9	  Say Y here to get to see options for platform support for
10	  various Chromebooks and Chromeboxes. This option alone does
11	  not add any kernel code.
12
13	  If you say N, all options in this submenu will be skipped and disabled.
14
15if CHROME_PLATFORMS
16
17config CHROMEOS_LAPTOP
18	tristate "Chrome OS Laptop"
19	depends on I2C && DMI && X86
20	---help---
21	  This driver instantiates i2c and smbus devices such as
22	  light sensors and touchpads.
23
24	  If you have a supported Chromebook, choose Y or M here.
25	  The module will be called chromeos_laptop.
26
27config CHROMEOS_PSTORE
28	tristate "Chrome OS pstore support"
29	depends on X86
30	---help---
31	  This module instantiates the persistent storage on x86 ChromeOS
32	  devices. It can be used to store away console logs and crash
33	  information across reboots.
34
35	  The range of memory used is 0xf00000-0x1000000, traditionally
36	  the memory used to back VGA controller memory.
37
38	  If you have a supported Chromebook, choose Y or M here.
39	  The module will be called chromeos_pstore.
40
41config CROS_EC_CHARDEV
42        tristate "Chrome OS Embedded Controller userspace device interface"
43        depends on MFD_CROS_EC
44        ---help---
45          This driver adds support to talk with the ChromeOS EC from userspace.
46
47          If you have a supported Chromebook, choose Y or M here.
48          The module will be called cros_ec_dev.
49
50config CROS_EC_LPC
51        tristate "ChromeOS Embedded Controller (LPC)"
52        depends on MFD_CROS_EC && ACPI && (X86 || COMPILE_TEST)
53        help
54          If you say Y here, you get support for talking to the ChromeOS EC
55          over an LPC bus. This uses a simple byte-level protocol with a
56          checksum. This is used for userspace access only. The kernel
57          typically has its own communication methods.
58
59          To compile this driver as a module, choose M here: the
60          module will be called cros_ec_lpc.
61
62config CROS_EC_LPC_MEC
63	bool "ChromeOS Embedded Controller LPC Microchip EC (MEC) variant"
64	depends on CROS_EC_LPC
65	default n
66	help
67	  If you say Y here, a variant LPC protocol for the Microchip EC
68	  will be used. Note that this variant is not backward compatible
69	  with non-Microchip ECs.
70
71	  If you have a ChromeOS Embedded Controller Microchip EC variant
72	  choose Y here.
73
74config CROS_EC_PROTO
75        bool
76        help
77          ChromeOS EC communication protocol helpers.
78
79config CROS_KBD_LED_BACKLIGHT
80	tristate "Backlight LED support for Chrome OS keyboards"
81	depends on LEDS_CLASS && ACPI
82	help
83	  This option enables support for the keyboard backlight LEDs on
84	  select Chrome OS systems.
85
86	  To compile this driver as a module, choose M here: the
87	  module will be called cros_kbd_led_backlight.
88
89endif # CHROMEOS_PLATFORMS
90