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"
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"
160 define CONFIG_CHIP_CONFIGURE
163 comment "Use new chip_configure method for configuring (non-pci) devices"
166 ###############################################
168 ###############################################
170 define HAVE_FALLBACK_BOOT
173 comment "Set if fallback booting required"
175 define USE_FALLBACK_IMAGE
178 comment "Set to build a fallback image"
180 define USE_NORMAL_IMAGE
181 default {!USE_FALLBACK_IMAGE}
183 comment "Set to build a normal image"
189 comment "Default fallback image size"
195 comment "Size of your ROM"
197 define ROM_IMAGE_SIZE
201 comment "Default image size"
203 define ROM_SECTION_SIZE
204 default {FALLBACK_SIZE}
207 comment "Default rom section size"
209 define ROM_SECTION_OFFSET
210 default {ROM_SIZE - FALLBACK_SIZE}
213 comment "Default rom section offset"
216 default {ROM_SECTION_SIZE - ROM_IMAGE_SIZE}
219 comment "Default payload size"
222 default {PAYLOAD_SIZE}
225 comment "Base of ROM"
231 comment "Default stack size"
237 comment "Default heap size"
243 comment "Base address of RAM"
248 comment "Use cache as temporary RAM if possible"
250 define CACHE_RAM_BASE
254 comment "Base address of cache when using it for temporary RAM"
256 define CACHE_RAM_SIZE
260 comment "Size of cache when using it for temporary RAM"
262 define CONFIG_COMPRESS
265 comment "Set for compressed image"
267 define CONFIG_UNCOMPRESSED
268 default {!CONFIG_COMPRESS}
270 comment "Set for uncompressed image"
272 define HAVE_OPTION_TABLE
275 comment "Export CMOS option table"
277 define USE_OPTION_TABLE
278 default {HAVE_OPTION_TABLE && !USE_FALLBACK_IMAGE}
280 comment "Use option table"
283 ###############################################
285 ###############################################
288 default "$(TOP)/src/arch/$(ARCH)/config/crt0.base"
290 comment "Main initialization target"
293 ###############################################
294 # Debugging/Logging options
295 ###############################################
300 comment "Enable debugging code"
302 define CONFIG_CONSOLE_VGA
305 comment "Log messages to VGA"
307 define CONFIG_CONSOLE_LOGBUF
310 comment "Log messages to buffer"
312 define CONFIG_CONSOLE_SROM
315 comment "Log messages to SROM console"
317 define CONFIG_CONSOLE_SERIAL8250
320 comment "Log messages to serial 8250 console"
322 define SERIAL_CONSOLE
325 comment "Log messages to serial console"
328 define DEFAULT_CONSOLE_LOGLEVEL
331 comment "Console will log at this level unless changed"
334 define MAXIMUM_CONSOLE_LOGLEVEL
337 comment "Error messages up to this level can be printed"
343 comment "Disable POST codes"
348 comment "Default baud rate for serial console"
353 comment "Set if we don't have a keyboard"
356 ###############################################
358 ###############################################
361 default "Mainboard_not_set"
363 comment "Mainboard name"
365 define MAINBOARD_PART_NUMBER
366 default "Part_number_not_set"
368 comment "Part number of mainboard"
370 define MAINBOARD_VENDOR
371 default "Vendor_not_set"
373 comment "Vendor of mainboard"
375 define FINAL_MAINBOARD_FIXUP
378 comment "Do final mainboard fixups"
382 ###############################################
384 ###############################################
389 comment "Define if we support SMP"
394 comment "CPU count for this machine"
396 define CONFIG_LOGICAL_CPUS
399 comment "Logical CPU count for this machine"
401 define MAX_PHYSICAL_CPUS
404 comment "Physical CPU count for this machine"
409 comment "Define to build an MP table"
412 ###############################################
414 ###############################################
419 comment "Use ELF boot loader"
421 define CONFIG_IDE_STREAM
424 comment "Boot from IDE device"
426 define CONFIG_ROM_STREAM
429 comment "Boot image is located in ROM"
431 define CONFIG_ROM_STREAM_START
432 default {0xffffffff - ROM_SIZE + ROM_SECTION_OFFSET + 1}
435 comment "ROM stream start location"
438 ###############################################
440 ###############################################
442 define HAVE_PIRQ_TABLE
445 comment "Define if we have a PIRQ table"
447 define IRQ_SLOT_COUNT
450 comment "Number of IRQ slots"
452 define CONFIG_PCIBIOS_IRQ
455 comment "PCIBIOS IRQ support"
460 comment "IOAPIC support"
463 ###############################################
464 # IDE specific options
465 ###############################################
467 define IDE_BOOT_DRIVE
470 comment "Disk number of boot drive"
475 comment "Swap bytes when reading from IDE device"
480 comment "Sector at which to start searching for boot image"
483 ###############################################
485 ###############################################
487 define SMBUS_MEM_DEVICE_START
490 comment "Start address of SMBUS device"
492 define SMBUS_MEM_DEVICE_END
493 default {SMBUS_MEM_DEVICE_START +1}
495 comment "End address of SMBUS device"
497 define SMBUS_MEM_DEVICE_INC
500 comment "Increment value SMBUS"
503 ###############################################
505 ###############################################
510 comment "Superio base address"
512 define SIO_SYSTEM_CLK_INPUT
515 comment "Superio CLK input default"
518 ###############################################
520 ###############################################
522 define HAVE_HARD_RESET
525 comment "Have hard reset"
530 comment "Set to deal with memory hole"
532 define ENABLE_FIXED_AND_VARIABLE_MTRRS
535 comment "Enable fixed and variable mtrrs"
541 comment "Start CPU segment"
543 define MAX_REBOOT_CNT
546 comment "Set maximum reboots"
548 define DISABLE_WATCHDOG
549 default {MAXIMUM_CONSOLE_LOGLEVEL >= 8}
551 comment "Disable watchdog if we're doing lots of output"
554 ###############################################
555 # Misc device options
556 ###############################################
558 define CONFIG_TSC_X86RDTSC_CALIBRATE_WITH_TIMER2
563 define INTEL_PPRO_MTRR
574 define CONFIG_UDELAY_TSC
580 ###############################################
581 # Board specifig options
582 ###############################################
584 ###############################################
585 # Options for motorola/sandpoint
586 ###############################################
587 define CONFIG_SANDPOINT_ALTIMUS
590 comment "Configure Sandpoint with Altimus PMC"
592 define CONFIG_SANDPOINT_TALUS
595 comment "Configure Sandpoint with Talus PMC"
597 define CONFIG_SANDPOINT_UNITY
600 comment "Configure Sandpoint with Unity PMC"
602 define CONFIG_SANDPOINT_VALIS
605 comment "Configure Sandpoint with Valis PMC"
607 define CONFIG_SANDPOINT_GYRUS
610 comment "Configure Sandpoint with Gyrus PMC"