1 #######################################################
3 # Main options file for LinuxBIOS
5 # Each option used by a part must be defined in
6 # this file. The format for options is:
9 # default <expr> | {<expr>} | "<string>" | none
11 # export always | used | never
17 # <name> is the name of the option
18 # <expr> is a numeric expression
19 # <string> is a string
21 # Either a default value or 'default none' must
22 # be specified for every option. An option
23 # specified as 'default none' will not be exported
24 # (i.e. will remain undefined) unless it has
25 # been assigned a value.
27 # Option values can be an immediate expression that
28 # evaluates to a numeric value, a delayed expression
29 # (surrounded by curley braces), or a string
30 # (surrounded by double quotes.)
32 # Immediate expressions are evaluated at the time an
33 # option is defined or set and the numeric result
34 # becomes the value of the option.
36 # Delayed expression are evaluated at the time the
37 # option is used, either in another expression or
38 # when being exported.
40 # String values will have the double quotes removed
43 # Format strings determine the print format that is
44 # used when exporting options. The default format
45 # is "%s" for strings and "%d" for numbers.
47 # Exported options generate entries in the
48 # Makefile.settings file. Options can be always
49 # exported, exported only if used, or never exported.
51 # A comment string must be supplied for every option.
53 #######################################################
55 ###############################################
56 # Architecture options
57 ###############################################
62 comment "Default architecture is i386, options are alpha and ppc"
87 comment "Do CPU fixups"
90 ###############################################
92 ###############################################
97 comment "Cross compiler prefix"
100 default "$(CROSS_COMPILE)gcc"
102 comment "Target C Compiler"
105 default "$(CROSS_COMPILE)gcc"
107 comment "Host C Compiler"
110 default "$(CROSS_COMPILE)objcopy"
112 comment "Objcopy command"
114 define LINUXBIOS_VERSION
117 comment "LinuxBIOS version"
119 define LINUXBIOS_BUILD
120 default "$(shell date)"
124 define LINUXBIOS_COMPILE_TIME
125 default "$(shell date +%T)"
129 define LINUXBIOS_COMPILE_BY
130 default "$(shell whoami)"
132 comment "Who build this image"
134 define LINUXBIOS_COMPILE_HOST
135 default "$(shell hostname)"
140 define LINUXBIOS_COMPILE_DOMAIN
143 comment "Build domain name"
145 define LINUXBIOS_COMPILER
146 default "$(shell $(CC) $(CFLAGS) -v 2>&1 | tail -n 1)"
148 comment "Build compiler"
150 define LINUXBIOS_LINKER
151 default "$(shell $(CC) -Wl,-v 2>&1 | grep version | tail -n 1)"
153 comment "Build linker"
155 define LINUXBIOS_ASSEMBLER
156 default "$(shell touch dummy.s ; $(CC) -c -Wa,-v dummy.s 2>&1; rm -f dummy.s dummy.o )"
158 comment "Build assembler"
161 ###############################################
163 ###############################################
165 define HAVE_FALLBACK_BOOT
168 comment "Set if fallback booting required"
170 define USE_FALLBACK_IMAGE
173 comment "Set to build a fallback image"
175 define USE_NORMAL_IMAGE
176 default {!USE_FALLBACK_IMAGE}
178 comment "Set to build a normal image"
184 comment "Default fallback image size"
190 comment "Size of your ROM"
192 define ROM_IMAGE_SIZE
196 comment "Default image size"
198 define ROM_SECTION_SIZE
199 default FALLBACK_SIZE
202 comment "Default rom section size"
204 define ROM_SECTION_OFFSET
205 default {ROM_SIZE - FALLBACK_SIZE}
208 comment "Default rom section offset"
211 default {ROM_SECTION_SIZE - ROM_IMAGE_SIZE}
214 comment "Default payload size"
217 default {PAYLOAD_SIZE}
220 comment "Base of ROM"
226 comment "Default stack size"
232 comment "Default heap size"
238 comment "Base address of RAM"
243 comment "Use cache as temporary RAM if possible"
245 define CACHE_RAM_BASE
249 comment "Base address of cache when using it for temporary RAM"
251 define CACHE_RAM_SIZE
255 comment "Size of cache when using it for temporary RAM"
257 define CONFIG_COMPRESS
260 comment "Set for compressed image"
262 define CONFIG_UNCOMPRESSED
263 default {!CONFIG_COMPRESS}
265 comment "Set for uncompressed image"
267 define HAVE_OPTION_TABLE
270 comment "Export CMOS option table"
272 define USE_OPTION_TABLE
273 default {HAVE_OPTION_TABLE && !USE_FALLBACK_IMAGE}
275 comment "Use option table"
278 ###############################################
280 ###############################################
283 default "$(TOP)/src/arch/$(ARCH)/config/crt0.base"
285 comment "Main initialization target"
288 ###############################################
289 # Debugging/Logging options
290 ###############################################
295 comment "Enable debugging code"
297 define CONFIG_CONSOLE_VGA
300 comment "Log messages to VGA"
302 define CONFIG_CONSOLE_LOGBUF
305 comment "Log messages to buffer"
307 define CONFIG_CONSOLE_SROM
310 comment "Log messages to SROM console"
312 define CONFIG_CONSOLE_SERIAL8250
315 comment "Log messages to serial 8250 console"
317 define SERIAL_CONSOLE
320 comment "Log messages to serial console"
322 define MAXIMUM_CONSOLE_LOGLEVEL
325 comment "Console will log at this level"
330 comment "Disable POST codes"
335 comment "Default baud rate for serial console"
340 comment "Set if we don't have a keyboard"
343 ###############################################
345 ###############################################
348 default "Mainboard_not_set"
350 comment "Mainboard name"
352 define MAINBOARD_PART_NUMBER
353 default "Part_number_not_set"
355 comment "Part number of mainboard"
357 define MAINBOARD_VENDOR
358 default "Vendor_not_set"
360 comment "Vendor of mainboard"
362 define FINAL_MAINBOARD_FIXUP
365 comment "Do final mainboard fixups"
369 ###############################################
371 ###############################################
376 comment "Define if we support SMP"
381 comment "Define if we support SMP"
386 comment "CPU count for this machine"
388 define CONFIG_LOGICAL_CPUS
391 comment "Logical CPU count for this machine"
393 define MAX_PHYSICAL_CPUS
396 comment "Physical CPU count for this machine"
401 comment "Define to build an MP table"
404 ###############################################
406 ###############################################
411 comment "Use ELF boot loader"
413 define CONFIG_IDE_STREAM
416 comment "Boot from IDE device"
418 define CONFIG_ROM_STREAM
421 comment "Boot image is located in ROM"
423 define CONFIG_ROM_STREAM_START
424 default {0xffffffff - ROM_SIZE + ROM_SECTION_OFFSET + 1}
427 comment "ROM stream start location"
430 ###############################################
432 ###############################################
434 define HAVE_PIRQ_TABLE
437 comment "Define if we have a PIRQ table"
439 define IRQ_SLOT_COUNT
442 comment "Number of IRQ slots"
444 define CONFIG_PCIBIOS_IRQ
447 comment "PCIBIOS IRQ support"
452 comment "IOAPIC support"
455 ###############################################
456 # IDE specific options
457 ###############################################
459 define IDE_BOOT_DRIVE
462 comment "Disk number of boot drive"
467 comment "Swap bytes when reading from IDE device"
472 comment "Sector at which to start searching for boot image"
475 ###############################################
477 ###############################################
479 define SMBUS_MEM_DEVICE_START
482 comment "Start address of SMBUS device"
484 define SMBUS_MEM_DEVICE_END
485 default {SMBUS_MEM_DEVICE_START +1}
487 comment "End address of SMBUS device"
489 define SMBUS_MEM_DEVICE_INC
492 comment "Increment value SMBUS"
495 ###############################################
497 ###############################################
502 comment "Superio base address"
504 define SIO_SYSTEM_CLK_INPUT
507 comment "Superio CLK input default"
510 ###############################################
512 ###############################################
514 define HAVE_HARD_RESET
517 comment "Have hard reset"
522 comment "Set to deal with memory hole"
524 define ENABLE_FIXED_AND_VARIABLE_MTRRS
527 comment "Enable fixed and variable mtrrs"
533 comment "Start CPU segment"
535 define MAX_REBOOT_CNT
538 comment "Set maximum reboots"
540 define DISABLE_WATCHDOG
541 default {MAXIMUM_CONSOLE_LOGLEVEL >= 8}
543 comment "Disable watchdog if we're doing lots of output"
546 ###############################################
547 # Misc device options
548 ###############################################
550 define CONFIG_TSC_X86RDTSC_CALIBRATE_WITH_TIMER2
555 define INTEL_PPRO_MTRR
566 define CONFIG_UDELAY_TSC