xref: /linux/drivers/platform/chrome/Kconfig (revision 485aa74a8e94d6ca7360a2fa75539d2e312815bf)
1ab043105SOlof Johansson#
2ab043105SOlof Johansson# Platform support for Chrome OS hardware (Chromebooks and Chromeboxes)
3ab043105SOlof Johansson#
4ab043105SOlof Johansson
5ab043105SOlof Johanssonmenuconfig CHROME_PLATFORMS
6ab043105SOlof Johansson	bool "Platform support for Chrome hardware"
723ecee32SThierry Reding	depends on X86 || ARM || ARM64 || COMPILE_TEST
8ab043105SOlof Johansson	---help---
9ab043105SOlof Johansson	  Say Y here to get to see options for platform support for
10ab043105SOlof Johansson	  various Chromebooks and Chromeboxes. This option alone does
11ab043105SOlof Johansson	  not add any kernel code.
12ab043105SOlof Johansson
13ab043105SOlof Johansson	  If you say N, all options in this submenu will be skipped and disabled.
14ab043105SOlof Johansson
15ab043105SOlof Johanssonif CHROME_PLATFORMS
16ab043105SOlof Johansson
17ab043105SOlof Johanssonconfig CHROMEOS_LAPTOP
18ab043105SOlof Johansson	tristate "Chrome OS Laptop"
19e7c256fbSBill Richardson	depends on I2C && DMI && X86
20ab043105SOlof Johansson	---help---
21ab043105SOlof Johansson	  This driver instantiates i2c and smbus devices such as
22ab043105SOlof Johansson	  light sensors and touchpads.
23ab043105SOlof Johansson
24ab043105SOlof Johansson	  If you have a supported Chromebook, choose Y or M here.
25ab043105SOlof Johansson	  The module will be called chromeos_laptop.
26ab043105SOlof Johansson
279742e127SOlof Johanssonconfig CHROMEOS_PSTORE
289742e127SOlof Johansson	tristate "Chrome OS pstore support"
29e7c256fbSBill Richardson	depends on X86
309742e127SOlof Johansson	---help---
319742e127SOlof Johansson	  This module instantiates the persistent storage on x86 ChromeOS
329742e127SOlof Johansson	  devices. It can be used to store away console logs and crash
339742e127SOlof Johansson	  information across reboots.
349742e127SOlof Johansson
359742e127SOlof Johansson	  The range of memory used is 0xf00000-0x1000000, traditionally
369742e127SOlof Johansson	  the memory used to back VGA controller memory.
379742e127SOlof Johansson
389742e127SOlof Johansson	  If you have a supported Chromebook, choose Y or M here.
399742e127SOlof Johansson	  The module will be called chromeos_pstore.
409742e127SOlof Johansson
41b418f741SGwendal Grignouconfig CHROMEOS_TBMC
42b418f741SGwendal Grignou	tristate "ChromeOS Tablet Switch Controller"
43b418f741SGwendal Grignou	depends on ACPI
44*485aa74aSArnd Bergmann	depends on INPUT
45b418f741SGwendal Grignou	help
46b418f741SGwendal Grignou	  This option adds a driver for the tablet switch on
47b418f741SGwendal Grignou	  select Chrome OS systems.
48b418f741SGwendal Grignou
49b418f741SGwendal Grignou	  To compile this driver as a module, choose M here: the
50b418f741SGwendal Grignou	  module will be called chromeos_tbmc.
51b418f741SGwendal Grignou
52ea01a31bSThierry Escandeconfig CROS_EC_CTL
53ea01a31bSThierry Escande        tristate
54ea01a31bSThierry Escande
55ec2f33abSBill Richardsonconfig CROS_EC_LPC
56ec2f33abSBill Richardson        tristate "ChromeOS Embedded Controller (LPC)"
5712278dc7SGwendal Grignou        depends on MFD_CROS_EC && ACPI && (X86 || COMPILE_TEST)
58ec2f33abSBill Richardson        help
59ec2f33abSBill Richardson          If you say Y here, you get support for talking to the ChromeOS EC
60ec2f33abSBill Richardson          over an LPC bus. This uses a simple byte-level protocol with a
61ec2f33abSBill Richardson          checksum. This is used for userspace access only. The kernel
62ec2f33abSBill Richardson          typically has its own communication methods.
63ec2f33abSBill Richardson
64ec2f33abSBill Richardson          To compile this driver as a module, choose M here: the
65ec2f33abSBill Richardson          module will be called cros_ec_lpc.
66ec2f33abSBill Richardson
678d4a3dc4SShawn Nematbakhshconfig CROS_EC_LPC_MEC
688d4a3dc4SShawn Nematbakhsh	bool "ChromeOS Embedded Controller LPC Microchip EC (MEC) variant"
698d4a3dc4SShawn Nematbakhsh	depends on CROS_EC_LPC
708d4a3dc4SShawn Nematbakhsh	default n
718d4a3dc4SShawn Nematbakhsh	help
728d4a3dc4SShawn Nematbakhsh	  If you say Y here, a variant LPC protocol for the Microchip EC
738d4a3dc4SShawn Nematbakhsh	  will be used. Note that this variant is not backward compatible
748d4a3dc4SShawn Nematbakhsh	  with non-Microchip ECs.
758d4a3dc4SShawn Nematbakhsh
768d4a3dc4SShawn Nematbakhsh	  If you have a ChromeOS Embedded Controller Microchip EC variant
778d4a3dc4SShawn Nematbakhsh	  choose Y here.
788d4a3dc4SShawn Nematbakhsh
79062476f2SJavier Martinez Canillasconfig CROS_EC_PROTO
80062476f2SJavier Martinez Canillas        bool
81062476f2SJavier Martinez Canillas        help
82062476f2SJavier Martinez Canillas          ChromeOS EC communication protocol helpers.
83062476f2SJavier Martinez Canillas
84492ef782SSimon Queconfig CROS_KBD_LED_BACKLIGHT
85492ef782SSimon Que	tristate "Backlight LED support for Chrome OS keyboards"
86492ef782SSimon Que	depends on LEDS_CLASS && ACPI
87492ef782SSimon Que	help
88492ef782SSimon Que	  This option enables support for the keyboard backlight LEDs on
89492ef782SSimon Que	  select Chrome OS systems.
90492ef782SSimon Que
91492ef782SSimon Que	  To compile this driver as a module, choose M here: the
92492ef782SSimon Que	  module will be called cros_kbd_led_backlight.
93492ef782SSimon Que
94ab043105SOlof Johanssonendif # CHROMEOS_PLATFORMS
95