summaryrefslogtreecommitdiff
path: root/zephyr/Kconfig.cbi
blob: 6b5a44a5edfaf8a74d688e3ee40d4c2c32dde8d4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# Copyright 2022 The ChromiumOS Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

config PLATFORM_EC_BYPASS_CBI_EEPROM_WP_CHECK
	bool "Bypass CBI EEPROM Write Protect"
	depends on PLATFORM_EC_CBI_EEPROM
	help
	  Bypass the CBI EEPROM write protect checks. This should ONLY be
	  defined during bringup, and should never be defined on a shipping or
	  release platform.

	  When defined, ectool can be used to reprogram all CBI fields,
	  regardless of the state of the hardware write protect.

config PLATFORM_EC_EEPROM_CBI_WP
	bool "EC can independently set the CBI EEPROM WP signal"
	depends on PLATFORM_EC_CBI_EEPROM
	help
	   Define this if the EC can independently set the CBI EEPROM WP
	   signal. The accompanying hardware must ensure that the CBI WP gets
	   latched and is only reset when EC_RST_ODL is asserted.

config PLATFORM_EC_CBI
	bool "CBI support"
	default y
	help
	  CBI is a means for accessing board information, typically set
	  during the factory process. This allows selection of the physical
	  storage of CBI source.

	  See here for detailed information on CBI:

	  https://chromium.googlesource.com/chromiumos/docs/+/HEAD/design_docs/cros_board_info.md

if PLATFORM_EC_CBI

choice PLATFORM_EC_CBI_STORAGE_TYPE
	prompt "CBI storage type"
	default PLATFORM_EC_CBI_EEPROM if $(dt_nodelabel_enabled,cbi_eeprom)
	default PLATFORM_EC_CBI_FLASH if $(dt_nodelabel_enabled,cbi_flash)
	help
	  Select the backing storage type for CBI data.

config PLATFORM_EC_CBI_EEPROM
	bool "CBI EEPROM support"
	depends on EEPROM
	help
	  Enables full Chromium OS Board Info (CBI) support, with CBI data
	  stored in an on-board EEPROM.

config PLATFORM_EC_CBI_GPIO
	bool "CBI GPIO support"
	help
	  Enables Chromium OS Board Info (CBI) from strapping pins. EC reads
	  the BOARD ID and SKU ID from GPIOs and then substantiate in-memory
	  CBI for AP to query.

config PLATFORM_EC_CBI_FLASH
	bool "CBI flash support"
	help
	  Enables full Chromium OS Board Info (CBI) support, with CBI data
	  stored in an on-board flash.

endchoice

endif # PLATFORM_EC_CBI