2 # Platform support for Chrome OS hardware (Chromebooks and Chromeboxes)
5 menuconfig CHROME_PLATFORMS
6 bool "Platform support for Chrome hardware"
7 depends on X86 || ARM || ARM64 || COMPILE_TEST
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.
13 If you say N, all options in this submenu will be skipped and disabled.
17 config CHROMEOS_LAPTOP
18 tristate "Chrome OS Laptop"
19 depends on I2C && DMI && X86
21 This driver instantiates i2c and smbus devices such as
22 light sensors and touchpads.
24 If you have a supported Chromebook, choose Y or M here.
25 The module will be called chromeos_laptop.
27 config CHROMEOS_PSTORE
28 tristate "Chrome OS pstore support"
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.
35 The range of memory used is 0xf00000-0x1000000, traditionally
36 the memory used to back VGA controller memory.
38 If you have a supported Chromebook, choose Y or M here.
39 The module will be called chromeos_pstore.
42 tristate "ChromeOS Tablet Switch Controller"
46 This option adds a driver for the tablet switch on
47 select Chrome OS systems.
49 To compile this driver as a module, choose M here: the
50 module will be called chromeos_tbmc.
56 tristate "ChromeOS Embedded Controller (I2C)"
57 depends on MFD_CROS_EC && I2C
60 If you say Y here, you get support for talking to the ChromeOS
61 EC through an I2C bus. This uses a simple byte-level protocol with
62 a checksum. Failing accesses will be retried three times to
66 tristate "ChromeOS Embedded Controller (SPI)"
67 depends on MFD_CROS_EC && SPI
70 If you say Y here, you get support for talking to the ChromeOS EC
71 through a SPI bus, using a byte-level protocol. Since the EC's
72 response time cannot be guaranteed, we support ignoring
73 'pre-amble' bytes before the response actually starts.
76 tristate "ChromeOS Embedded Controller (LPC)"
77 depends on MFD_CROS_EC && ACPI && (X86 || COMPILE_TEST)
79 If you say Y here, you get support for talking to the ChromeOS EC
80 over an LPC bus. This uses a simple byte-level protocol with a
81 checksum. This is used for userspace access only. The kernel
82 typically has its own communication methods.
84 To compile this driver as a module, choose M here: the
85 module will be called cros_ec_lpc.
87 config CROS_EC_LPC_MEC
88 bool "ChromeOS Embedded Controller LPC Microchip EC (MEC) variant"
89 depends on CROS_EC_LPC
92 If you say Y here, a variant LPC protocol for the Microchip EC
93 will be used. Note that this variant is not backward compatible
94 with non-Microchip ECs.
96 If you have a ChromeOS Embedded Controller Microchip EC variant
102 ChromeOS EC communication protocol helpers.
104 config CROS_KBD_LED_BACKLIGHT
105 tristate "Backlight LED support for Chrome OS keyboards"
106 depends on LEDS_CLASS && ACPI
108 This option enables support for the keyboard backlight LEDs on
109 select Chrome OS systems.
111 To compile this driver as a module, choose M here: the
112 module will be called cros_kbd_led_backlight.
114 endif # CHROMEOS_PLATFORMS