Define some variables that were not defined. There are a couple left.
[coreboot.git] / src / Kconfig
1 ##
2 ## This file is part of the coreboot repair project.
3 ##
4 ## Redistribution and use in source and binary forms, with or without
5 ## modification, are permitted provided that the following conditions
6 ## are met:
7 ## 1. Redistributions of source code must retain the above copyright
8 ##    notice, this list of conditions and the following disclaimer.
9 ## 2. Redistributions in binary form must reproduce the above copyright
10 ##    notice, this list of conditions and the following disclaimer in the
11 ##    documentation and/or other materials provided with the distribution.
12 ## 3. The name of the author may not be used to endorse or promote products
13 ##    derived from this software without specific prior written permission.
14 ##
15 ## THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
16 ## ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17 ## IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18 ## ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
19 ## FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
20 ## DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
21 ## OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
22 ## HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23 ## LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
24 ## OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
25 ## SUCH DAMAGE.
26 ##
27
28 mainmenu "Coreboot Configuration"
29
30 menu "General setup"
31
32 config EXPERT
33         bool "Expert mode"
34         help
35           This allows you to select certain advanced configuration options.
36
37           Warning: Only enable this option if you really know what you are
38           doing! You have been warned!
39
40 config LOCALVERSION
41         string "Local version string"
42         help
43           Append an extra string to the end of the coreboot version.
44
45           This can be useful if, for instance, you want to append the
46           respective board's hostname or some other identifying string to
47           the coreboot version number, so that you can easily distinguish
48           boot logs of different boards from each other.
49
50 endmenu
51
52 source src/mainboard/Kconfig
53 source src/arch/i386/Kconfig
54 source src/arch/ppc/Kconfig
55 source src/northbridge/Kconfig
56 source src/devices/Kconfig
57 source src/southbridge/Kconfig
58 source src/superio/Kconfig
59 source src/cpu/Kconfig
60
61 config PCI_BUS_SEGN_BITS
62         int
63         default 0
64
65 config MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID
66         hex
67         default 0x0
68
69 config MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID
70         hex
71         default 0x0
72
73 config CPU_ADDR_BITS
74         int
75         default 36
76
77 config XIP_ROM_BASE
78         hex
79         default 0xfffe0000
80
81 config XIP_ROM_SIZE
82         hex
83         default 0x20000
84
85 config LB_CKS_RANGE_START
86         int
87         default 49
88
89 config LB_CKS_RANGE_END
90         int
91         default 125
92
93 config LB_CKS_LOC
94         int
95         default 126
96
97 config LOGICAL_CPUS
98         bool
99         default y
100
101 config PCI_ROM_RUN
102         bool
103         default n
104
105 config HEAP_SIZE
106         hex
107         default 0x4000
108
109 config COREBOOT_V2
110         bool
111         default y
112
113 config COREBOOT_V4
114         bool
115         default y
116
117 config DEBUG
118         bool
119         default n
120
121 config USE_PRINTK_IN_CAR
122         bool
123         default n
124
125 config USE_OPTION_TABLE
126         bool
127         default n
128
129 config MAX_CPUS
130         int
131         default 1
132
133 config MMCONF_SUPPORT_DEFAULT
134         bool
135         default n
136
137 config MMCONF_SUPPORT
138         bool
139         default n
140
141 config RAMTOP
142         hex
143         default 0x200000
144
145 config ATI_RAGE_XL
146         bool
147
148 source src/console/Kconfig
149
150 config HAVE_ACPI_RESUME
151         bool
152         default n
153
154 config ACPI_SSDTX_NUM
155         int
156         default 0
157
158 config HAVE_FALLBACK_BOOT
159         bool
160         default y
161
162 config USE_FALLBACK_IMAGE
163         bool
164         default y
165
166 config HAVE_FAILOVER_BOOT
167         bool
168         default n
169
170 config USE_FAILOVER_IMAGE
171         bool
172         default n
173
174 config HAVE_HARD_RESET
175         bool
176         default n
177
178 config HAVE_INIT_TIMER
179         bool
180         default y
181
182 config HAVE_MAINBOARD_RESOURCES
183         bool
184         default n
185
186 config HAVE_MOVNTI
187         bool
188         default n
189
190 config HAVE_OPTION_TABLE
191         bool
192         default y
193         help
194           This variable specifies whether a given board has a cmos.layout
195           file containing NVRAM/CMOS bit definitions.
196           It defaults to 'y' but can be changed to 'n' in mainboard/*/Kconfig.
197
198 config PIRQ_ROUTE
199         bool
200         default n
201
202 config HAVE_SMI_HANDLER
203         bool
204         default n
205
206 config PCI_IO_CFG_EXT
207         bool
208         default n
209
210 config IOAPIC
211         bool
212         default n
213
214 config VIDEO_MB
215         default 0
216         int
217
218 config USE_WATCHDOG_ON_BOOT
219         bool
220         default n
221
222 config VGA
223         bool
224         default n
225         help
226           Build board-specific VGA code.
227
228 config GFXUMA
229         bool
230         default n
231         help
232           Enable Unified Memory Architecture for graphics.
233
234 # TODO
235 # menu "Drivers"
236 #
237 # endmenu
238
239 #TODO Remove this option or make it useful.
240 config HAVE_LOW_TABLES
241         bool
242         default y
243         help
244           This Option is unused in the code.  Since two boards try to set it to
245           'n', they may be broken.  We either need to make the option useful or
246           get rid of it.  The broken boards are:
247           asus/m2v-mx_se
248           supermicro/h8dme
249
250 config HAVE_HIGH_TABLES
251         bool
252         default n
253         help
254           This variable specifies whether a given northbridge has high table
255           support.
256           It is set in northbridge/*/Kconfig.
257           Whether or not the high tables are actually written by coreboot is
258           configurable by the user via WRITE_HIGH_TABLES.
259
260 config HAVE_ACPI_TABLES
261         bool
262         help
263           This variable specifies whether a given board has ACPI table support.
264           It is usually set in mainboard/*/Kconfig.
265           Whether or not the ACPI tables are actually generated by coreboot
266           is configurable by the user via GENERATE_ACPI_TABLES.
267
268 config HAVE_MP_TABLE
269         bool
270         help
271           This variable specifies whether a given board has MP table support.
272           It is usually set in mainboard/*/Kconfig.
273           Whether or not the MP table is actually generated by coreboot
274           is configurable by the user via GENERATE_MP_TABLE.
275
276 config HAVE_PIRQ_TABLE
277         bool
278         help
279           This variable specifies whether a given board has PIRQ table support.
280           It is usually set in mainboard/*/Kconfig.
281           Whether or not the PIRQ table is actually generated by coreboot
282           is configurable by the user via GENERATE_PIRQ_TABLE.
283
284 #These Options are here to avoid "undefined" warnings.
285 #The actual selection and help texts are in the following menu.
286
287 config GENERATE_ACPI_TABLES
288         bool
289         default HAVE_ACPI_TABLES
290
291 config GENERATE_MP_TABLE
292         bool
293         default HAVE_MP_TABLE
294
295 config GENERATE_PIRQ_TABLE
296         bool
297         default HAVE_PIRQ_TABLE
298
299 config WRITE_HIGH_TABLES
300         bool
301         default HAVE_HIGH_TABLES
302
303 menu "System tables"
304
305 config WRITE_HIGH_TABLES
306         bool "Write 'high' tables to avoid being overwritten in F segment"
307         depends on HAVE_HIGH_TABLES
308         default y
309
310 config MULTIBOOT
311         bool "Generate Multiboot tables (for GRUB2)"
312         default n
313
314 config GENERATE_ACPI_TABLES
315         depends on HAVE_ACPI_TABLES
316         bool "Generate ACPI tables"
317         default y
318         help
319           Generate ACPI tables for this board.
320
321           If unsure, say Y.
322
323 config GENERATE_MP_TABLE
324         depends on HAVE_MP_TABLE
325         bool "Generate an MP table"
326         default y
327         help
328           Generate an MP table (conforming to the Intel MultiProcessor
329           specification 1.4) for this board.
330
331           If unsure, say Y.
332
333 config GENERATE_PIRQ_TABLE
334         depends on HAVE_PIRQ_TABLE
335         bool "Generate a PIRQ table"
336         default y
337         help
338           Generate a PIRQ table for this board.
339
340           If unsure, say Y.
341
342 endmenu
343
344 menu "Payload"
345
346 choice
347         prompt "Add a payload"
348         default PAYLOAD_NONE
349
350 config PAYLOAD_NONE
351         bool "None"
352         help
353           Select this option if you want to create an "empty" coreboot
354           ROM image for a certain mainboard, i.e. a coreboot ROM image
355           which does not yet contain a payload.
356
357           For such an image to be useful, you have to use 'cbfstool'
358           to add a payload to the ROM image later.
359
360 config PAYLOAD_ELF
361         bool "An ELF executable payload"
362         help
363           Select this option if you have a payload image (an ELF file)
364           which coreboot should run as soon as the basic hardware
365           initialization is completed.
366
367           You will be able to specify the location and file name of the
368           payload image later.
369
370 endchoice
371
372 config FALLBACK_PAYLOAD_FILE
373         string "Payload path and filename"
374         depends on PAYLOAD_ELF
375         default "payload.elf"
376         help
377           The path and filename of the ELF executable file to use as payload.
378
379 # TODO: Defined if no payload? Breaks build?
380 config COMPRESSED_PAYLOAD_LZMA
381         bool "Use LZMA compression for payloads"
382         default y
383         depends on PAYLOAD_ELF
384         help
385           In order to reduce the size payloads take up in the ROM chip
386           coreboot can compress them using the LZMA algorithm.
387
388 config COMPRESSED_PAYLOAD_NRV2B
389         bool
390         default n
391
392 endmenu
393
394 menu "VGA BIOS"
395
396 config VGA_BIOS
397         bool "Add a VGA BIOS image"
398         help
399           Select this option if you have a VGA BIOS image that you would
400           like to add to your ROM.
401
402           You will be able to specify the location and file name of the
403           image later.
404
405 config FALLBACK_VGA_BIOS_FILE
406         string "VGA BIOS path and filename"
407         depends on VGA_BIOS
408         default "vgabios.bin"
409         help
410           The path and filename of the file to use as VGA BIOS.
411
412 config FALLBACK_VGA_BIOS_ID
413         string "VGA BIOS ID"
414         depends on VGA_BIOS
415         default "1106,3230"
416         help
417           The comma-separated PCI vendor and device ID that would associate
418           your VGA BIOS to your video card.
419
420           Example: 1106,3230
421
422           In the above example 1106 is the PCI vendor ID (in hex, but without
423           the "0x" prefix) and 3230 specifies the PCI device ID of the
424           video card (also in hex, without "0x" prefix).
425
426 endmenu
427
428 menu "Debugging"
429
430 # TODO: Better help text and detailed instructions.
431 config GDB_STUB
432         bool "GDB debugging support"
433         default y
434         help
435           If enabled, you will be able to set breakpoints for gdb debugging.
436           See src/arch/i386/lib/c_start.S for details.
437
438 endmenu
439
440 config LIFT_BSP_APIC_ID
441         bool
442         default n
443
444 # These probably belong somewhere else, but they are needed somewhere.
445 config AP_CODE_IN_CAR
446         bool
447         default n
448
449 config USE_INIT
450         bool
451         default n
452
453 config ENABLE_APIC_EXT_ID
454         bool
455         default n