summaryrefslogtreecommitdiff
path: root/include/config.h
blob: 77177c6452768c244fa194d1a3b0d3bb1f67b8e3 (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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
/* Copyright (c) 2013 The Chromium OS Authors. All rights reserved.
 * Use of this source code is governed by a BSD-style license that can be
 * found in the LICENSE file.
 */

/*
 * config.h - Top-level configuration Chrome EC
 *
 * All configuration settings (CONFIG_*) are defined in this file or in a
 * sub-configuration file (config_chip.h, board.h, etc.) included by this file.
 *
 * Note that this file is included by assembly (.S) files.  Any C-isms such as
 * struct definitions or enums in a sub-configuration file MUST be guarded with
 * #ifndef __ASSEMBLER__ to prevent those C-isms from being evaluated by the
 * assembler.
 */

#ifndef __CROS_EC_CONFIG_H
#define __CROS_EC_CONFIG_H

/*
 * TODO(rspangler): set defaults and describe ALL config variables.
 *
 * Here is the current list:

CONFIG_ADC
CONFIG_ASSERT_HELP
CONFIG_BACKLIGHT_X86
CONFIG_BATTERY_BQ20Z453
CONFIG_BATTERY_FALCO
CONFIG_BATTERY_LINK
CONFIG_BATTERY_PEPPY
CONFIG_BATTERY_SLIPPY
CONFIG_BATTERY_SPRING
CONFIG_BOARD_POST_GPIO_INIT
CONFIG_BOARD_PRE_INIT
CONFIG_BOARD_VERSION
CONFIG_BQ24707A_R_AC
CONFIG_BQ24707A_R_SNS
CONFIG_BQ24725_R_AC
CONFIG_BQ24725_R_SNS
CONFIG_BQ24738_R_AC
CONFIG_BQ24738_R_SNS
CONFIG_CHARGER
CONFIG_CHARGER_BQ24707A
CONFIG_CHARGER_BQ24725
CONFIG_CHARGER_BQ24738
CONFIG_CHARGER_INPUT_CURRENT
CONFIG_CHARGER_TPS65090
CONFIG_CHARGING_CURRENT_LIMIT
CONFIG_CHIPSET_GAIA
CONFIG_CHIPSET_HASWELL
CONFIG_CHIPSET_IVYBRIDGE
CONFIG_CMD_PMU
CONFIG_CONSOLE_CMDHELP
CONFIG_CONSOLE_RESTRICTED_INPUT
CONFIG_CONSOLE_UART
CONFIG_CUSTOM_KEYSCAN
CONFIG_DEBUG
CONFIG_DEBUG_I2C
CONFIG_EEPROM
CONFIG_EOPTION
CONFIG_EXTPOWER_FALCO
CONFIG_EXTPOWER_GPIO
CONFIG_EXTPOWER_SNOW
CONFIG_EXTPOWER_USB
CONFIG_FLASH
CONFIG_FLASH_BANK_SIZE
CONFIG_FLASH_BASE
CONFIG_FLASH_ERASED_VALUE32
CONFIG_FLASH_ERASE_SIZE
CONFIG_FLASH_PHYSICAL_SIZE
CONFIG_FLASH_PROTECT_NEXT_BOOT
CONFIG_FLASH_SIZE
CONFIG_FLASH_WRITE_SIZE
CONFIG_FMAP
CONFIG_FORCE_CONSOLE_RESUME
CONFIG_FPU
CONFIG_FW_IMAGE_SIZE
CONFIG_FW_PSTATE_OFF
CONFIG_FW_PSTATE_SIZE
CONFIG_FW_RO_OFF
CONFIG_FW_RO_SIZE
CONFIG_FW_RW_OFF
CONFIG_FW_RW_SIZE
CONFIG_FW_WP_RO_OFF
CONFIG_FW_WP_RO_SIZE
CONFIG_HOSTCMD
CONFIG_HOST_COMMAND_STATUS
CONFIG_HOST_EMU
CONFIG_HOST_UART
CONFIG_HOST_UART1_GPIOS_PB0_1
CONFIG_HOST_UART1_GPIOS_PC4_5
CONFIG_HOST_UART2_GPIOS_PG4_5
CONFIG_HOST_UART_IRQ
CONFIG_I2C
CONFIG_I2C_ARBITRATION
CONFIG_I2C_HOST_AUTO
CONFIG_I2C_PASSTHROUGH
CONFIG_I2C_PASSTHRU_RESTRICTED
CONFIG_IRQ_COUNT
CONFIG_KEYBOARD_PROTOCOL_8042
CONFIG_KEYBOARD_PROTOCOL_MKBP
CONFIG_KEYBOARD_SUPPRESS_NOISE
CONFIG_LED_DRIVER_LP5562
CONFIG_LED_FALCO
CONFIG_LED_PEPPY
CONFIG_LED_SLIPPY
CONFIG_LID_SWITCH
CONFIG_LOW_POWER_IDLE
CONFIG_LPC
CONFIG_ONEWIRE
CONFIG_ONEWIRE_LED
CONFIG_PANIC_HELP
CONFIG_PECI
CONFIG_PMU_BOARD_INIT
CONFIG_PMU_FORCE_FET
CONFIG_PMU_HARD_RESET
CONFIG_PMU_TPS65090
CONFIG_POWER_BUTTON
CONFIG_PSTORE
CONFIG_PWM_FAN
CONFIG_PWM_KBLIGHT
CONFIG_RAM_BASE
CONFIG_RAM_SIZE
CONFIG_SMART_BATTERY
CONFIG_SPI
CONFIG_STACK_SIZE
CONFIG_SYSTEM_UNLOCKED
CONFIG_TASK_LIST
CONFIG_TASK_PROFILING
CONFIG_TEMP_SENSOR
CONFIG_TEMP_SENSOR_G781
CONFIG_TEMP_SENSOR_TMP006
CONFIG_TEST_TASK_LIST
CONFIG_UART_BAUD_RATE
CONFIG_UART_RX_BUF_SIZE
CONFIG_UART_TX_BUF_SIZE
CONFIG_USB_PORT_POWER_DUMB
CONFIG_USB_PORT_POWER_SMART
CONFIG_USB_SWITCH_TSU6721
CONFIG_WATCHDOG
CONFIG_WATCHDOG_HELP
CONFIG_WIRELESS
CONFIG_WP_ACTIVE_HIGH

 * Also describe the HAS_TASK_* macro and how/when it should be used vs. a
 * config define.
 */

/*
 * Include board and core configs, since those hold the CONFIG_ constants for a
 * given configuration.  This guarantees they get included everywhere, and
 * fixes a fairly common bug where we gate out code with #ifndef
 * CONFIG_SOMETHING and but forget to include both of these.
 *
 * Board is included after chip, so that chip defaults can be overridden on a
 * per-board basis as needed.
 */
#include "config_chip.h"
#include "board.h"

#endif  /* __CROS_EC_CONFIG_H */