Uwe Hermann | 661e380 | 2008-03-21 18:37:23 +0000 | [diff] [blame] | 1 | ## |
Uwe Hermann | 661e380 | 2008-03-21 18:37:23 +0000 | [diff] [blame] | 2 | ## |
| 3 | ## Copyright (C) 2008 Advanced Micro Devices, Inc. |
Stefan Reinauer | 6986358 | 2008-08-08 13:45:03 +0000 | [diff] [blame] | 4 | ## Copyright (C) 2008 coresystems GmbH |
Uwe Hermann | 661e380 | 2008-03-21 18:37:23 +0000 | [diff] [blame] | 5 | ## |
| 6 | ## Redistribution and use in source and binary forms, with or without |
| 7 | ## modification, are permitted provided that the following conditions |
| 8 | ## are met: |
| 9 | ## 1. Redistributions of source code must retain the above copyright |
| 10 | ## notice, this list of conditions and the following disclaimer. |
| 11 | ## 2. Redistributions in binary form must reproduce the above copyright |
| 12 | ## notice, this list of conditions and the following disclaimer in the |
| 13 | ## documentation and/or other materials provided with the distribution. |
| 14 | ## 3. The name of the author may not be used to endorse or promote products |
| 15 | ## derived from this software without specific prior written permission. |
| 16 | ## |
| 17 | ## THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND |
| 18 | ## ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |
| 19 | ## IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE |
| 20 | ## ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE |
| 21 | ## FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL |
| 22 | ## DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS |
| 23 | ## OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
| 24 | ## HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT |
| 25 | ## LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY |
| 26 | ## OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF |
| 27 | ## SUCH DAMAGE. |
| 28 | ## |
Jordan Crouse | f6145c3 | 2008-03-19 23:56:58 +0000 | [diff] [blame] | 29 | |
| 30 | mainmenu "Libpayload Configuration" |
| 31 | |
Stefan Reinauer | e5d30b7 | 2010-03-25 22:15:19 +0000 | [diff] [blame] | 32 | menu "Generic Options" |
| 33 | |
Julius Werner | 22adcd6 | 2014-06-11 14:16:35 -0700 | [diff] [blame] | 34 | config GPL |
| 35 | bool "GPLv2-licensed Options" |
Julius Werner | 58caa8b | 2016-05-16 16:37:56 -0700 | [diff] [blame] | 36 | default y if CHROMEOS |
Julius Werner | 22adcd6 | 2014-06-11 14:16:35 -0700 | [diff] [blame] | 37 | default n |
| 38 | help |
| 39 | Prompt for options that will build code licensed under the GNU General |
| 40 | Public License (version 2). This will subject the whole payload to the |
| 41 | terms of this license (including its provision to release all sources, |
| 42 | please see the LICENSE_GPL file for details). |
| 43 | |
Stefan Reinauer | e5d30b7 | 2010-03-25 22:15:19 +0000 | [diff] [blame] | 44 | config EXPERIMENTAL |
| 45 | bool "Experimental Options" |
| 46 | default n |
| 47 | help |
| 48 | Prompt for experimental functionality. Attention: This is not likely |
| 49 | to work without problems |
| 50 | |
Stefan Reinauer | e5d30b7 | 2010-03-25 22:15:19 +0000 | [diff] [blame] | 51 | config DEVELOPER |
| 52 | bool "Developer Options" |
| 53 | default n |
| 54 | help |
| 55 | Prompt for developer options. These options are only interesting for |
| 56 | libpayload developers. |
| 57 | |
Julius Werner | 58caa8b | 2016-05-16 16:37:56 -0700 | [diff] [blame] | 58 | config CHROMEOS |
Jon Murphy | c4e9045 | 2022-06-28 10:36:23 -0600 | [diff] [blame] | 59 | bool "ChromeOS Options" |
Julius Werner | 58caa8b | 2016-05-16 16:37:56 -0700 | [diff] [blame] | 60 | default n |
| 61 | help |
Jon Murphy | c4e9045 | 2022-06-28 10:36:23 -0600 | [diff] [blame] | 62 | Select configuration defaults appropriate for ChromeOS boards. |
Julius Werner | 58caa8b | 2016-05-16 16:37:56 -0700 | [diff] [blame] | 63 | |
Patrick Georgi | b7d8f26 | 2015-07-06 09:04:42 +0000 | [diff] [blame] | 64 | choice |
| 65 | prompt "Compiler to use" |
| 66 | default COMPILER_GCC |
| 67 | help |
| 68 | This option allows you to select the compiler. |
| 69 | |
| 70 | config COMPILER_GCC |
| 71 | bool "GCC" |
| 72 | help |
| 73 | Use the GNU Compiler Collection (GCC). |
| 74 | |
| 75 | config COMPILER_LLVM_CLANG |
| 76 | bool "LLVM/clang" |
| 77 | help |
| 78 | Use LLVM/clang. |
| 79 | |
| 80 | endchoice |
| 81 | |
Jacob Garber | 04540f1 | 2019-10-02 18:55:07 -0600 | [diff] [blame] | 82 | config LTO |
| 83 | bool "Use link time optimization (LTO)" |
| 84 | default n |
| 85 | depends on COMPILER_GCC |
| 86 | help |
| 87 | Compile with link time optimization. This can often decrease the |
| 88 | final binary size, but may increase compilation time. |
| 89 | |
Julius Werner | 50a8174 | 2014-05-15 11:57:38 -0700 | [diff] [blame] | 90 | config REMOTEGDB |
| 91 | bool "Remote GDB stub" |
| 92 | default n |
| 93 | depends on GPL |
| 94 | help |
| 95 | Enable Remote GDB debugging support. |
| 96 | |
Stefan Reinauer | 1e6b86b | 2016-03-12 12:14:46 -0800 | [diff] [blame] | 97 | config MEMMAP_RAM_ONLY |
| 98 | bool "Only consider RAM entries in memory map for further processing" |
| 99 | default n |
| 100 | |
Stefan Reinauer | e5d30b7 | 2010-03-25 22:15:19 +0000 | [diff] [blame] | 101 | endmenu |
| 102 | |
Jordan Crouse | 20c9cf1 | 2008-10-20 16:51:43 +0000 | [diff] [blame] | 103 | menu "Architecture Options" |
| 104 | |
Patrick Georgi | d385ed2 | 2009-05-21 10:02:52 +0000 | [diff] [blame] | 105 | choice |
| 106 | prompt "Target Architecture" |
David Hendricks | 4b6be98 | 2012-11-30 13:56:31 -0800 | [diff] [blame] | 107 | default ARCH_X86 |
Patrick Georgi | d385ed2 | 2009-05-21 10:02:52 +0000 | [diff] [blame] | 108 | |
Gabe Black | 51edd54 | 2013-09-30 23:00:33 -0700 | [diff] [blame] | 109 | config ARCH_ARM |
| 110 | bool "ARM" |
Stefan Reinauer | 8af0d03 | 2012-12-14 13:05:21 -0800 | [diff] [blame] | 111 | help |
Gabe Black | 51edd54 | 2013-09-30 23:00:33 -0700 | [diff] [blame] | 112 | Support the ARM architecture |
Stefan Reinauer | 8af0d03 | 2012-12-14 13:05:21 -0800 | [diff] [blame] | 113 | |
David Hendricks | 4b6be98 | 2012-11-30 13:56:31 -0800 | [diff] [blame] | 114 | config ARCH_X86 |
Patrick Georgi | d385ed2 | 2009-05-21 10:02:52 +0000 | [diff] [blame] | 115 | bool "x86" |
| 116 | help |
| 117 | Support the x86 architecture |
| 118 | |
Furquan Shaikh | 8c8c377 | 2014-02-19 11:35:30 -0800 | [diff] [blame] | 119 | config ARCH_ARM64 |
| 120 | bool "ARM64" |
| 121 | help |
| 122 | Support the ARM64 architecture |
| 123 | |
Jakub Czapiga | 3d91b47 | 2021-09-15 14:52:45 +0200 | [diff] [blame] | 124 | config ARCH_MOCK |
| 125 | bool "Mock architecture (for unit tests)" |
| 126 | help |
| 127 | This enables the mock architecture (for unit tests) that is intended |
| 128 | to be used for testing purposes, to either test payloads or libpayload itself. |
| 129 | It provides necessary headers, but requires mocking (providing implementation |
| 130 | for) arch-specific functions. |
| 131 | |
Patrick Georgi | d385ed2 | 2009-05-21 10:02:52 +0000 | [diff] [blame] | 132 | endchoice |
| 133 | |
Jordan Crouse | 20c9cf1 | 2008-10-20 16:51:43 +0000 | [diff] [blame] | 134 | config MULTIBOOT |
| 135 | bool "Multiboot header support" |
David Hendricks | 4b6be98 | 2012-11-30 13:56:31 -0800 | [diff] [blame] | 136 | depends on ARCH_X86 |
Julius Werner | 58caa8b | 2016-05-16 16:37:56 -0700 | [diff] [blame] | 137 | default y if !CHROMEOS |
Jordan Crouse | 20c9cf1 | 2008-10-20 16:51:43 +0000 | [diff] [blame] | 138 | |
Stefan Reinauer | 8218445 | 2016-03-12 16:18:17 -0800 | [diff] [blame] | 139 | config HEAP_SIZE |
| 140 | int "Heap size" |
| 141 | default 131072 |
| 142 | help |
| 143 | This is the heap size (malloc'able size) available |
| 144 | to the payload. |
| 145 | |
| 146 | If unsure, set to 131072 (128K) |
| 147 | |
| 148 | config STACK_SIZE |
| 149 | int "Stack size" |
| 150 | default 16384 |
| 151 | help |
| 152 | This is the stack size available to the payload. |
| 153 | |
| 154 | If unsure, set to 16384 (16K) |
| 155 | |
| 156 | config BASE_ADDRESS |
| 157 | hex "Base address" |
| 158 | default 0x04000000 if ARCH_ARM |
| 159 | default 0x80100000 if ARCH_ARM64 |
Stefan Reinauer | 8218445 | 2016-03-12 16:18:17 -0800 | [diff] [blame] | 160 | default 0x00100000 if ARCH_X86 |
Jakub Czapiga | 3d91b47 | 2021-09-15 14:52:45 +0200 | [diff] [blame] | 161 | default 0x00000000 if ARCH_MOCK |
Stefan Reinauer | 8218445 | 2016-03-12 16:18:17 -0800 | [diff] [blame] | 162 | help |
| 163 | This is the base address for the payload. |
| 164 | |
Julius Werner | f96d905 | 2019-08-16 15:35:39 -0700 | [diff] [blame] | 165 | If unsure, set to 0x00100000 on x86, |
Stefan Reinauer | 8218445 | 2016-03-12 16:18:17 -0800 | [diff] [blame] | 166 | 0x04000000 on ARM or 0x80100000 on ARM64. |
| 167 | |
Jordan Crouse | 20c9cf1 | 2008-10-20 16:51:43 +0000 | [diff] [blame] | 168 | endmenu |
| 169 | |
Stefan Reinauer | 6986358 | 2008-08-08 13:45:03 +0000 | [diff] [blame] | 170 | menu "Standard Libraries" |
| 171 | |
| 172 | config LIBC |
| 173 | bool "Enable C library support" |
| 174 | default y |
| 175 | |
Patrick Georgi | 3b77b72 | 2011-07-07 15:41:53 +0200 | [diff] [blame] | 176 | config CURSES |
| 177 | bool "Build a curses library" |
Julius Werner | 58caa8b | 2016-05-16 16:37:56 -0700 | [diff] [blame] | 178 | default y if !CHROMEOS |
Stefan Reinauer | 6986358 | 2008-08-08 13:45:03 +0000 | [diff] [blame] | 179 | |
Patrick Georgi | 3b77b72 | 2011-07-07 15:41:53 +0200 | [diff] [blame] | 180 | choice |
| 181 | prompt "Curses implementation" |
| 182 | default PDCURSES |
| 183 | depends on CURSES |
| 184 | |
| 185 | config TINYCURSES |
Paul Menzel | dc1b3c1 | 2015-09-26 12:30:08 +0200 | [diff] [blame] | 186 | bool "TinyCurses" |
Patrick Georgi | 3b77b72 | 2011-07-07 15:41:53 +0200 | [diff] [blame] | 187 | help |
Paul Menzel | dc1b3c1 | 2015-09-26 12:30:08 +0200 | [diff] [blame] | 188 | TinyCurses was the first curses implementation for libpayload. |
Patrick Georgi | 3b77b72 | 2011-07-07 15:41:53 +0200 | [diff] [blame] | 189 | It features low memory consumption, static allocation of larger |
| 190 | data structures (so few or no memory allocation calls) and a |
| 191 | reduced feature set. |
| 192 | |
| 193 | config PDCURSES |
| 194 | bool "PDCurses" |
Patrick Georgi | 3b77b72 | 2011-07-07 15:41:53 +0200 | [diff] [blame] | 195 | help |
| 196 | libpayload's PDCurses port provides a full features curses |
| 197 | implementation, including libpanel, libmenu and libform (which |
| 198 | are taken from ncurses). |
| 199 | It requires more system resources, in particularily heap memory. |
| 200 | |
| 201 | endchoice |
| 202 | |
Jakub Czapiga | 63e5427 | 2021-11-15 08:36:07 +0000 | [diff] [blame] | 203 | source "libcbfs/Kconfig" |
Patrick Georgi | 6de1ee4a | 2011-07-21 15:43:14 +0200 | [diff] [blame] | 204 | |
| 205 | config LZMA |
| 206 | bool "LZMA decoder" |
| 207 | default y |
| 208 | help |
| 209 | LZMA decoder implementation, usable eg. by CBFS, |
| 210 | but also externally. |
Julius Werner | bf27391 | 2015-06-30 10:30:30 -0700 | [diff] [blame] | 211 | |
| 212 | config LZ4 |
| 213 | bool "LZ4 decoder" |
| 214 | default y |
| 215 | help |
| 216 | Decoder implementation for the LZ4 compression algorithm. |
| 217 | Adds standalone functions (CBFS support coming soon). |
Jakub Czapiga | 1fa3da4 | 2021-12-06 09:01:50 +0000 | [diff] [blame] | 218 | |
| 219 | source "vboot/Kconfig" |
| 220 | |
Stefan Reinauer | 6986358 | 2008-08-08 13:45:03 +0000 | [diff] [blame] | 221 | endmenu |
| 222 | |
| 223 | menu "Console Options" |
Uwe Hermann | 2d758b8 | 2008-03-31 15:21:24 +0000 | [diff] [blame] | 224 | |
Gabe Black | 4bb0731 | 2012-10-05 11:43:39 -0700 | [diff] [blame] | 225 | config SKIP_CONSOLE_INIT |
| 226 | bool "Skip initializing the consoles at startup" |
Julius Werner | 58caa8b | 2016-05-16 16:37:56 -0700 | [diff] [blame] | 227 | default y if CHROMEOS |
Gabe Black | 4bb0731 | 2012-10-05 11:43:39 -0700 | [diff] [blame] | 228 | default n |
| 229 | help |
| 230 | Normally, libpayload will initialize console input/output on startup |
| 231 | before the payload itself gets control. This option disables that |
| 232 | behavior and leaves console initialization up to the payload. |
| 233 | |
Gabe Black | a54b6a6 | 2012-09-29 00:21:27 -0700 | [diff] [blame] | 234 | config CBMEM_CONSOLE |
| 235 | bool "Send output to the in memory CBMEM console" |
| 236 | default y |
| 237 | |
Jordan Crouse | f6145c3 | 2008-03-19 23:56:58 +0000 | [diff] [blame] | 238 | config SERIAL_CONSOLE |
Uwe Hermann | 2d758b8 | 2008-03-31 15:21:24 +0000 | [diff] [blame] | 239 | bool "See output on the serial port console" |
| 240 | default y |
Jordan Crouse | f6145c3 | 2008-03-19 23:56:58 +0000 | [diff] [blame] | 241 | |
Gabe Black | 9135cb4 | 2013-09-26 16:13:08 -0700 | [diff] [blame] | 242 | config 8250_SERIAL_CONSOLE |
Alexandru Gagniuc | 4d5317e | 2015-11-23 16:18:12 -0800 | [diff] [blame] | 243 | bool "8250-compatible serial port driver (including IO and MMIO)" |
Gabe Black | 9135cb4 | 2013-09-26 16:13:08 -0700 | [diff] [blame] | 244 | depends on SERIAL_CONSOLE |
Julius Werner | 58caa8b | 2016-05-16 16:37:56 -0700 | [diff] [blame] | 245 | default y if ARCH_X86 |
Ronald G. Minnich | 7b69454 | 2013-02-15 08:13:29 -0800 | [diff] [blame] | 246 | |
Gabe Black | a6aecc4 | 2014-04-10 01:07:28 -0700 | [diff] [blame] | 247 | config S5P_SERIAL_CONSOLE |
| 248 | bool "Exynos SOC, S5P compatible serial port driver" |
| 249 | depends on SERIAL_CONSOLE |
| 250 | default n |
| 251 | |
Vadim Bendebury | 897123a | 2014-05-27 18:28:59 -0700 | [diff] [blame] | 252 | config IPQ806X_SERIAL_CONSOLE |
| 253 | bool "IPQ806x SOC compatible serial port driver" |
| 254 | depends on SERIAL_CONSOLE |
| 255 | default n |
| 256 | |
Varadarajan Narayanan | c1ae7e9 | 2016-02-01 11:32:12 +0530 | [diff] [blame] | 257 | config IPQ40XX_SERIAL_CONSOLE |
| 258 | bool "IPQ40xx SOC compatible serial port driver" |
| 259 | depends on SERIAL_CONSOLE |
| 260 | default n |
| 261 | |
Prudhvi Yarlagadda | 1b05479 | 2019-03-22 12:38:20 +0530 | [diff] [blame] | 262 | config QCS405_SERIAL_CONSOLE |
| 263 | bool "QCS405 SOC compatible serial port driver" |
| 264 | depends on SERIAL_CONSOLE |
| 265 | default n |
| 266 | |
T Michael Turney | 45473dd | 2019-10-10 12:26:15 -0700 | [diff] [blame] | 267 | config QUALCOMM_QUPV3_SERIAL_CONSOLE |
| 268 | bool "Qualcomm QUPV3 serial port driver" |
| 269 | depends on SERIAL_CONSOLE |
| 270 | default n |
| 271 | |
Marcelo Povoa | 558e9b5 | 2014-02-18 14:17:38 -0800 | [diff] [blame] | 272 | config PL011_SERIAL_CONSOLE |
| 273 | bool "PL011 compatible serial port driver" |
| 274 | depends on 8250_SERIAL_CONSOLE |
| 275 | default n |
| 276 | |
Jordan Crouse | f6145c3 | 2008-03-19 23:56:58 +0000 | [diff] [blame] | 277 | config SERIAL_IOBASE |
Gabe Black | 9135cb4 | 2013-09-26 16:13:08 -0700 | [diff] [blame] | 278 | ## This default is currently not used on non-x86 systems. |
| 279 | hex "Default I/O base for the serial port (default 0x3f8)" |
| 280 | depends on SERIAL_CONSOLE && ARCH_X86 |
Uwe Hermann | 2d758b8 | 2008-03-31 15:21:24 +0000 | [diff] [blame] | 281 | default 0x3f8 |
| 282 | |
Jordan Crouse | f6145c3 | 2008-03-19 23:56:58 +0000 | [diff] [blame] | 283 | config SERIAL_SET_SPEED |
| 284 | bool "Override the serial console baud rate" |
| 285 | default n |
Uwe Hermann | fad8c2b | 2008-04-11 18:01:50 +0000 | [diff] [blame] | 286 | depends on SERIAL_CONSOLE |
Jordan Crouse | f6145c3 | 2008-03-19 23:56:58 +0000 | [diff] [blame] | 287 | |
| 288 | config SERIAL_BAUD_RATE |
| 289 | int "Serial console baud rate (default 115200)" |
Uwe Hermann | fad8c2b | 2008-04-11 18:01:50 +0000 | [diff] [blame] | 290 | depends on SERIAL_SET_SPEED |
Jordan Crouse | f6145c3 | 2008-03-19 23:56:58 +0000 | [diff] [blame] | 291 | default 115200 |
| 292 | |
Ulf Jordan | 2aea11f | 2008-08-18 19:29:41 +0000 | [diff] [blame] | 293 | config SERIAL_ACS_FALLBACK |
| 294 | bool "Use plain ASCII characters for ACS" |
| 295 | default n |
| 296 | depends on SERIAL_CONSOLE |
| 297 | help |
| 298 | The alternate character set (ACS) is used for drawing lines and |
| 299 | displaying a couple of other special graphics characters. The |
| 300 | ACS characters generally look good on screen, but can be difficult |
| 301 | to cut and paste from a terminal window to a text editor. |
Stefan Reinauer | 14e2277 | 2010-04-27 06:56:47 +0000 | [diff] [blame] | 302 | |
Ulf Jordan | 2aea11f | 2008-08-18 19:29:41 +0000 | [diff] [blame] | 303 | Say 'y' here if you want to always use plain ASCII characters to |
Stefan Reinauer | 14e2277 | 2010-04-27 06:56:47 +0000 | [diff] [blame] | 304 | approximate the appearance of ACS characters on the serial port |
Ulf Jordan | 2aea11f | 2008-08-18 19:29:41 +0000 | [diff] [blame] | 305 | console. |
| 306 | |
Jordan Crouse | 30939bd | 2008-04-10 22:49:02 +0000 | [diff] [blame] | 307 | config VIDEO_CONSOLE |
| 308 | bool "See output on a video console" |
| 309 | default y |
| 310 | |
| 311 | config VGA_VIDEO_CONSOLE |
| 312 | bool "VGA video console driver" |
Stefan Reinauer | 8af0d03 | 2012-12-14 13:05:21 -0800 | [diff] [blame] | 313 | depends on ARCH_X86 && VIDEO_CONSOLE |
Julius Werner | 58caa8b | 2016-05-16 16:37:56 -0700 | [diff] [blame] | 314 | default y if !CHROMEOS |
Jordan Crouse | f6145c3 | 2008-03-19 23:56:58 +0000 | [diff] [blame] | 315 | |
Peter Stuge | 4b1971c | 2008-10-08 14:47:41 +0000 | [diff] [blame] | 316 | config GEODELX_VIDEO_CONSOLE |
| 317 | bool "Geode LX video console driver" |
Stefan Reinauer | 8af0d03 | 2012-12-14 13:05:21 -0800 | [diff] [blame] | 318 | depends on ARCH_X86 && VIDEO_CONSOLE |
Jordan Crouse | 5431553 | 2008-04-11 15:48:21 +0000 | [diff] [blame] | 319 | default n |
| 320 | |
Stefan Reinauer | b700254 | 2010-03-25 18:56:26 +0000 | [diff] [blame] | 321 | config COREBOOT_VIDEO_CONSOLE |
| 322 | bool "coreboot video console driver" |
| 323 | depends on VIDEO_CONSOLE && !GEODELX_VIDEO_CONSOLE |
Julius Werner | 58caa8b | 2016-05-16 16:37:56 -0700 | [diff] [blame] | 324 | default y if CHROMEOS |
Stefan Reinauer | b700254 | 2010-03-25 18:56:26 +0000 | [diff] [blame] | 325 | default n |
| 326 | help |
| 327 | Say Y here if coreboot switched to a graphics mode and |
| 328 | your payload wants to use it. |
| 329 | |
Nico Huber | de74842 | 2020-01-23 13:23:09 +0100 | [diff] [blame] | 330 | config COREBOOT_VIDEO_CENTERED |
| 331 | bool "Center a classic 80x25 console on bigger screens" |
| 332 | depends on COREBOOT_VIDEO_CONSOLE |
| 333 | help |
| 334 | Say 'y' here if your payload is hardcoded to a 80x25 console. Otherwise |
| 335 | its output would look squeezed into the upper-left corner of the screen. |
| 336 | |
Paul Kocialkowski | d85e485 | 2017-07-23 16:05:47 +0300 | [diff] [blame] | 337 | config FONT_SCALE_FACTOR |
| 338 | int "Scale factor for the included font" |
| 339 | depends on GEODELX_VIDEO_CONSOLE || COREBOOT_VIDEO_CONSOLE |
| 340 | default 0 |
| 341 | help |
| 342 | By default (value of 0), the scale factor is automatically |
| 343 | calculated to ensure at least 130 columns (when possible). |
| 344 | |
Julius Werner | 7f87812 | 2020-06-24 19:43:36 -0700 | [diff] [blame] | 345 | config CBGFX_FAST_RESAMPLE |
| 346 | bool "CBGFX: use faster (less pretty) image scaling" |
| 347 | default n |
| 348 | help |
| 349 | When payloads use the CBGFX library to draw .BMPs on the screen, |
| 350 | they will be resampled with an anti-aliasing filter to scale to the |
| 351 | requested output size. The default implementation should normally be |
| 352 | fast enough, but if desired this option can make it about 50-100% |
| 353 | faster at the cost of quality. (It changes the 'a' parameter in the |
| 354 | Lanczos resampling algorithm from 3 to 2.) |
| 355 | |
| 356 | Only affects .BMPs that aren't already provided at the right size. |
| 357 | |
Patrick Rudolph | e6a3821 | 2017-03-01 19:07:37 +0100 | [diff] [blame] | 358 | config PC_I8042 |
| 359 | bool "A common PC i8042 driver" |
Patrick Rudolph | 5afc293 | 2017-02-06 15:26:58 +0100 | [diff] [blame] | 360 | default y if PC_KEYBOARD || PC_MOUSE |
Patrick Rudolph | e6a3821 | 2017-03-01 19:07:37 +0100 | [diff] [blame] | 361 | default n |
| 362 | help |
| 363 | To be used by PC_KEYBOARD and PC_MOUSE. |
| 364 | |
Patrick Rudolph | 5afc293 | 2017-02-06 15:26:58 +0100 | [diff] [blame] | 365 | config PC_MOUSE |
| 366 | bool "Allow input from a PC mouse" |
Patrick Georgi | e8604b8 | 2018-05-17 17:57:14 +0200 | [diff] [blame] | 367 | default n if CHROMEOS |
Patrick Rudolph | 5afc293 | 2017-02-06 15:26:58 +0100 | [diff] [blame] | 368 | default y if ARCH_X86 # uses IO |
| 369 | default n |
| 370 | help |
| 371 | PS/2 mouse driver on top of PC_I8042. |
| 372 | |
Jordan Crouse | f6145c3 | 2008-03-19 23:56:58 +0000 | [diff] [blame] | 373 | config PC_KEYBOARD |
Uwe Hermann | 2d758b8 | 2008-03-31 15:21:24 +0000 | [diff] [blame] | 374 | bool "Allow input from a PC keyboard" |
Marc Jones | 019bacb4 | 2014-12-23 15:22:30 -0700 | [diff] [blame] | 375 | default y if ARCH_X86 # uses IO |
| 376 | default n |
Jordan Crouse | f6145c3 | 2008-03-19 23:56:58 +0000 | [diff] [blame] | 377 | |
Stefan Reinauer | d84ef1e | 2008-09-26 18:37:26 +0000 | [diff] [blame] | 378 | config PC_KEYBOARD_LAYOUT_US |
| 379 | bool "English (US) keyboard layout" |
| 380 | depends on PC_KEYBOARD |
| 381 | default y |
| 382 | |
| 383 | config PC_KEYBOARD_LAYOUT_DE |
| 384 | bool "German keyboard layout" |
| 385 | depends on PC_KEYBOARD |
| 386 | default n |
| 387 | |
Duncan Laurie | d87bbde | 2021-04-28 09:40:26 -0700 | [diff] [blame] | 388 | config PC_KEYBOARD_TRANSLATION |
| 389 | bool "Enable or Disable translation in PC keyboard set 2 on exit" |
| 390 | depends on PC_KEYBOARD |
| 391 | default y |
| 392 | |
Stefan Reinauer | 6986358 | 2008-08-08 13:45:03 +0000 | [diff] [blame] | 393 | endmenu |
| 394 | |
| 395 | menu "Drivers" |
| 396 | |
| 397 | config PCI |
| 398 | bool "Support for PCI devices" |
Jianjun Wang | 2ad74de | 2021-07-28 16:44:43 +0800 | [diff] [blame] | 399 | default y if ARCH_X86 |
| 400 | default n |
| 401 | |
| 402 | config PCI_IO_OPS |
| 403 | bool "Support for PCI devices with port IO" |
| 404 | depends on PCI && IO_ADDRESS_SPACE |
| 405 | default y if ARCH_X86 |
| 406 | default n |
Stefan Reinauer | 6986358 | 2008-08-08 13:45:03 +0000 | [diff] [blame] | 407 | |
Jianjun Wang | 20a87c0 | 2021-07-28 16:53:43 +0800 | [diff] [blame] | 408 | config PCIE_MEDIATEK |
| 409 | bool "Support for PCIe devices on MediaTek platforms" |
| 410 | depends on PCI && !PCI_IO_OPS |
| 411 | default n |
| 412 | |
Prasad Malisetty | 857d378 | 2021-08-28 06:53:37 +0530 | [diff] [blame] | 413 | config PCIE_QCOM |
| 414 | bool "Support for PCIe devices on Qualcomm platforms" |
| 415 | depends on PCI && !PCI_IO_OPS |
| 416 | default n |
| 417 | |
Uwe Hermann | c16d24e | 2008-03-31 15:17:39 +0000 | [diff] [blame] | 418 | config NVRAM |
Uwe Hermann | 2d758b8 | 2008-03-31 15:21:24 +0000 | [diff] [blame] | 419 | bool "Support for reading/writing NVRAM bytes" |
Stefan Reinauer | 8af0d03 | 2012-12-14 13:05:21 -0800 | [diff] [blame] | 420 | depends on ARCH_X86 # for now |
Uwe Hermann | 2d758b8 | 2008-03-31 15:21:24 +0000 | [diff] [blame] | 421 | default y |
Uwe Hermann | 8cc38d2 | 2008-03-27 23:26:40 +0000 | [diff] [blame] | 422 | |
Patrick Rudolph | 837da6a | 2017-02-06 15:02:25 +0100 | [diff] [blame] | 423 | config MOUSE_CURSOR |
| 424 | bool "Support for mouse cursor handling" |
Patrick Rudolph | 5afc293 | 2017-02-06 15:26:58 +0100 | [diff] [blame] | 425 | default y if PC_MOUSE |
Patrick Rudolph | 837da6a | 2017-02-06 15:02:25 +0100 | [diff] [blame] | 426 | default n |
| 427 | help |
| 428 | Provides a common interface for various mouse cursor drivers. |
| 429 | * Supports up to 32 buttons. |
| 430 | * Supports 3 axis mice. |
| 431 | * Applies simple cursor acceleration. |
| 432 | * Allows to set cursor acceleration and cursor speed. |
| 433 | |
Uwe Hermann | 30d789b | 2008-03-31 20:21:49 +0000 | [diff] [blame] | 434 | config RTC_PORT_EXTENDED_VIA |
| 435 | bool "Extended RTC ports are 0x74/0x75" |
| 436 | default n |
| 437 | help |
| 438 | For recent chipsets with 256 NVRAM bytes, you have to access the |
| 439 | upper 128 bytes (128-255) using two different I/O ports, |
| 440 | usually 0x72/0x73. |
Stefan Reinauer | 14e2277 | 2010-04-27 06:56:47 +0000 | [diff] [blame] | 441 | |
Uwe Hermann | 30d789b | 2008-03-31 20:21:49 +0000 | [diff] [blame] | 442 | On some chipsets this can be a different set of ports, though. |
| 443 | The VIA VT8237R for example only recognizes the ports 0x74/0x75 |
| 444 | for accessing the high 128 NVRAM bytes (as seems to be the case for |
| 445 | multiple VIA chipsets). |
Stefan Reinauer | 14e2277 | 2010-04-27 06:56:47 +0000 | [diff] [blame] | 446 | |
Uwe Hermann | 30d789b | 2008-03-31 20:21:49 +0000 | [diff] [blame] | 447 | If you want to read or write CMOS bytes on computers with one of |
| 448 | these chipsets, say 'y' here. |
| 449 | |
Stefan Reinauer | 6986358 | 2008-08-08 13:45:03 +0000 | [diff] [blame] | 450 | config SPEAKER |
| 451 | bool "Support for PC speaker" |
Stefan Reinauer | 8af0d03 | 2012-12-14 13:05:21 -0800 | [diff] [blame] | 452 | depends on ARCH_X86 |
Julius Werner | 58caa8b | 2016-05-16 16:37:56 -0700 | [diff] [blame] | 453 | default y if !CHROMEOS |
Jordan Crouse | f6145c3 | 2008-03-19 23:56:58 +0000 | [diff] [blame] | 454 | |
Antonello Dettori | aded214 | 2016-07-27 12:41:04 +0200 | [diff] [blame] | 455 | source "drivers/timer/Kconfig" |
| 456 | source "drivers/storage/Kconfig" |
| 457 | source "drivers/usb/Kconfig" |
huang lin | 41e2499 | 2015-05-20 17:27:10 +0800 | [diff] [blame] | 458 | |
Stefan Reinauer | e5d30b7 | 2010-03-25 22:15:19 +0000 | [diff] [blame] | 459 | endmenu |
| 460 | |
| 461 | menu "Debugging" |
| 462 | depends on DEVELOPER |
| 463 | |
| 464 | config DEBUG_MALLOC |
| 465 | bool "Debug memory allocator" |
Stefan Reinauer | e5d30b7 | 2010-03-25 22:15:19 +0000 | [diff] [blame] | 466 | default n |
| 467 | help |
| 468 | Select this option if you want to debug the memory allocator. This |
| 469 | option logs all uses of the following functions: |
| 470 | |
| 471 | void free(void *ptr); |
| 472 | void *malloc(size_t size); |
| 473 | void *calloc(size_t nmemb, size_t size); |
| 474 | void *realloc(void *ptr, size_t size); |
| 475 | void *memalign(size_t align, size_t size); |
| 476 | |
| 477 | Say N here unless you are debugging memory allocator problems. |
Patrick Georgi | d21f68b | 2008-09-02 16:06:22 +0000 | [diff] [blame] | 478 | |
Jordan Crouse | f6145c3 | 2008-03-19 23:56:58 +0000 | [diff] [blame] | 479 | endmenu |
Stefan Reinauer | 6986358 | 2008-08-08 13:45:03 +0000 | [diff] [blame] | 480 | |
Gabe Black | 0af03d2 | 2012-03-19 03:06:46 -0700 | [diff] [blame] | 481 | config BIG_ENDIAN |
| 482 | default n |
| 483 | bool |
| 484 | |
| 485 | config LITTLE_ENDIAN |
| 486 | default n |
| 487 | bool |
| 488 | |
Gabe Black | d267987 | 2013-01-18 15:49:00 -0800 | [diff] [blame] | 489 | config IO_ADDRESS_SPACE |
| 490 | default n |
| 491 | bool |
Stefan Reinauer | 347a752 | 2016-03-12 11:48:44 -0800 | [diff] [blame] | 492 | help |
| 493 | This option is turned on if the target system has a separate |
| 494 | IO address space. This is typically only the case on x86. |
Gabe Black | d267987 | 2013-01-18 15:49:00 -0800 | [diff] [blame] | 495 | |
Stefan Reinauer | dee4420 | 2015-06-11 14:33:11 -0700 | [diff] [blame] | 496 | source "arch/arm/Kconfig" |
| 497 | source "arch/arm64/Kconfig" |
Stefan Reinauer | dee4420 | 2015-06-11 14:33:11 -0700 | [diff] [blame] | 498 | source "arch/x86/Kconfig" |
Jakub Czapiga | 3d91b47 | 2021-09-15 14:52:45 +0200 | [diff] [blame] | 499 | source "arch/mock/Kconfig" |