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"
67 comment "This cpu supports the MOVNTI directive"
70 ###############################################
72 ###############################################
77 comment "Cross compiler prefix"
80 default "$(CROSS_COMPILE)gcc"
82 comment "Target C Compiler"
87 comment "Host C Compiler"
92 comment "Additional per-cpu CFLAGS"
95 default "$(CROSS_COMPILE)objcopy --gap-fill 0xff"
97 comment "Objcopy command"
99 define LINUXBIOS_VERSION
103 comment "LinuxBIOS version"
105 define LINUXBIOS_EXTRA_VERSION
109 comment "LinuxBIOS extra version"
111 define LINUXBIOS_BUILD
112 default "$(shell date)"
117 define LINUXBIOS_COMPILE_TIME
118 default "$(shell date +%T)"
123 define LINUXBIOS_COMPILE_BY
124 default "$(shell whoami)"
127 comment "Who build this image"
129 define LINUXBIOS_COMPILE_HOST
130 default "$(shell hostname)"
136 define LINUXBIOS_COMPILE_DOMAIN
137 default "$(shell dnsdomainname)"
140 comment "Build domain name"
142 define LINUXBIOS_COMPILER
143 default "$(shell $(CC) $(CFLAGS) -v 2>&1 | tail -n 1)"
146 comment "Build compiler"
148 define LINUXBIOS_LINKER
149 default "$(shell $(CC) -Wl,-v 2>&1 | grep version | tail -n 1)"
152 comment "Build linker"
154 define LINUXBIOS_ASSEMBLER
155 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"
165 define CONFIG_USE_INIT
168 comment "Use stage 1 initialization code"
171 ###############################################
173 ###############################################
175 define HAVE_FALLBACK_BOOT
179 comment "Set if fallback booting required"
181 define USE_FALLBACK_IMAGE
185 comment "Set to build a fallback image"
191 comment "ROM_SECTION_SIZE to use for the fallback build."
197 comment "Total number of bytes allocated for normal and fallback LinuxBIOS images and payloads. Note that the fallback image goes at the end of the ROM, and the normal image at the beginning."
199 define ROM_IMAGE_SIZE
203 comment "Maximum number of bytes allowed for a LinuxBIOS image. Does not include the payload."
205 define ROM_SECTION_SIZE
206 default {FALLBACK_SIZE}
209 comment "Default rom section size. Normally, this is calculated in mainboard Config.lb and varies between the normal and fallback builds."
211 define ROM_SECTION_OFFSET
212 default {ROM_SIZE - FALLBACK_SIZE}
215 comment "Number of bytes from the beginning of the ROM to the start of the section containing this build (normal or fallback). Normally, this is calculated in mainboard Config.lb."
218 default {ROM_SECTION_SIZE - ROM_IMAGE_SIZE}
221 comment "Maximum number of bytes allowed for a payload. Normally, this is calculated as above."
224 default {PAYLOAD_SIZE}
227 comment "Base address of LinuxBIOS in ROM"
233 comment "Start address of LinuxBIOS in ROM"
239 comment "Hardware reset vector address"
241 define _EXCEPTION_VECTORS
242 default {_ROMBASE+0x100}
245 comment "Address of exception vector table"
251 comment "Default stack size"
257 comment "Default heap size"
263 comment "Base address of LinuxBIOS in RAM"
269 comment "Start address of LinuxBIOS in RAM"
271 define USE_DCACHE_RAM
274 comment "Use data cache as temporary RAM if possible"
276 define DCACHE_RAM_BASE
280 comment "Base address of data cache when using it for temporary RAM"
282 define DCACHE_RAM_SIZE
286 comment "Size of data cache when using it for temporary RAM"
292 comment "Start address of area to cache during LinuxBIOS execution directly from ROM"
298 comment "Size of area to cache during LinuxBIOS execution directly from ROM"
300 define CONFIG_COMPRESS
303 comment "Set for compressed image"
305 define CONFIG_UNCOMPRESSED
307 default {!CONFIG_COMPRESS}
309 comment "Set for uncompressed image"
311 define CONFIG_LB_MEM_TOPK
315 comment "Kilobytes of memory to initialized before executing code from RAM"
317 define HAVE_OPTION_TABLE
320 comment "Export CMOS option table"
322 define USE_OPTION_TABLE
324 default {HAVE_OPTION_TABLE && !USE_FALLBACK_IMAGE}
326 comment "Use option table"
329 ###############################################
330 # CMOS variable options
331 ###############################################
332 define LB_CKS_RANGE_START
336 comment "First CMOS byte to use for LinuxBIOS options"
338 define LB_CKS_RANGE_END
342 comment "Last CMOS byte to use for LinuxBIOS options"
348 comment "Pair of bytes to use for CMOS checksum"
352 ###############################################
354 ###############################################
357 default "$(TOP)/src/arch/$(ARCH)/init/crt0.S.lb"
359 comment "Main initialization target"
362 ###############################################
363 # Debugging/Logging options
364 ###############################################
369 comment "Enable debugging code"
371 define CONFIG_CONSOLE_VGA
374 comment "Log messages to VGA"
376 define CONFIG_CONSOLE_BTEXT
379 comment "Log messages to btext fb console"
381 define CONFIG_CONSOLE_LOGBUF
384 comment "Log messages to buffer"
386 define CONFIG_CONSOLE_SROM
389 comment "Log messages to SROM console"
391 define CONFIG_CONSOLE_SERIAL8250
394 comment "Log messages to 8250 uart based serial console"
396 define DEFAULT_CONSOLE_LOGLEVEL
399 comment "Console will log at this level unless changed"
401 define MAXIMUM_CONSOLE_LOGLEVEL
404 comment "Error messages up to this level can be printed"
406 define CONFIG_SERIAL_POST
409 comment "Enable SERIAL POST codes"
414 comment "Disable POST codes"
420 comment "Base address for 8250 uart for the serial console"
425 comment "Default baud rate for serial console"
431 comment "Allow UART divisor to be set explicitly"
437 comment "Default flow control settings for the 8250 serial console uart"
440 ###############################################
442 ###############################################
445 default "Mainboard_not_set"
447 comment "Mainboard name"
449 define MAINBOARD_PART_NUMBER
450 default "Part_number_not_set"
453 comment "Part number of mainboard"
455 define MAINBOARD_VENDOR
456 default "Vendor_not_set"
459 comment "Vendor of mainboard"
461 define MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID
464 comment "PCI Vendor ID of mainboard manufacturer"
466 define MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID
470 comment "PCI susbsystem device id assigned my mainboard manufacturer"
472 define MAINBOARD_POWER_ON_AFTER_POWER_FAIL
475 comment "Default power on after power fail setting"
477 define CONFIG_SYS_CLK_FREQ
480 comment "System clock frequency in MHz"
483 ###############################################
485 ###############################################
490 comment "Define if we support SMP"
492 define CONFIG_MAX_CPUS
495 comment "Maximum CPU count for this machine"
497 define CONFIG_MAX_PHYSICAL_CPUS
500 comment "Maximum physical CPU count for this machine"
502 define CONFIG_LOGICAL_CPUS
505 comment "Should multiple cpus per die be enabled?"
510 comment "Define to build an MP table"
512 define SERIAL_CPU_INIT
515 comment "Serialize CPU init"
518 ###############################################
520 ###############################################
522 define CONFIG_IDE_STREAM
525 comment "Boot from IDE device"
527 define CONFIG_ROM_STREAM
530 comment "Boot image is located in ROM"
532 define CONFIG_ROM_STREAM_START
533 default {0xffffffff - ROM_SIZE + ROM_SECTION_OFFSET + 1}
536 comment "Memory address of this (normal or fallback) build's payload in ROM. Normally, this is calculated as above."
538 define CONFIG_FS_STREAM
541 comment "Boot from a filesystem"
543 define CONFIG_FS_EXT2
546 comment "Enable ext2 filesystem support"
548 define CONFIG_FS_ISO9660
551 comment "Enable ISO9660 filesystem support"
556 comment "Enable FAT filesystem support"
558 define AUTOBOOT_DELAY
561 comment "Delay (in seconds) before autobooting"
563 define AUTOBOOT_CMDLINE
564 default "hdc1:/vmlinuz root=/dev/hdc3 console=tty0 console=ttyS0,115200"
567 comment "Default command line when autobooting"
570 define USE_WATCHDOG_ON_BOOT
573 comment "Use the watchdog on booting"
576 ###############################################
577 # Plugin Device support options
578 ###############################################
580 define CONFIG_HYPERTRANSPORT_PLUGIN_SUPPORT
583 comment "Enable support for plugin Hypertransport busses"
585 define CONFIG_AGP_PLUGIN_SUPPORT
588 comment "Enable support for plugin AGP busses"
590 define CONFIG_CARDBUS_PLUGIN_SUPPORT
593 comment "Enable support cardbus plugin cards"
595 define CONFIG_PCIX_PLUGIN_SUPPORT
598 comment "Enable support for plugin PCI-X busses"
600 define CONFIG_PCIEXP_PLUGIN_SUPPORT
603 comment "Enable support for plugin PCI-E busses"
606 ###############################################
608 ###############################################
610 define HAVE_PIRQ_TABLE
613 comment "Define if we have a PIRQ table"
615 define IRQ_SLOT_COUNT
618 comment "Number of IRQ slots"
620 define CONFIG_PCIBIOS_IRQ
623 comment "PCIBIOS IRQ support"
628 comment "IOAPIC support"
631 ###############################################
632 # IDE specific options
633 ###############################################
638 comment "Define to include IDE support"
640 define IDE_BOOT_DRIVE
643 comment "Disk number of boot drive"
648 comment "Swap bytes when reading from IDE device"
653 comment "Sector at which to start searching for boot image"
656 ###############################################
657 # Options for memory mapped I/O
658 ###############################################
664 comment "Address of PCI Configuration Address Register"
670 comment "Address of PCI Configuration Data Register"
676 comment "Base address of PCI/ISA I/O address range"
682 comment "Base address of PCI/ISA memory address range"
688 comment "PNP Configuration Address Register offset"
694 comment "PNP Configuration Data Register offset"
700 comment "Base address of memory mapped I/O operations"
703 ###############################################
704 # Options for embedded systems
705 ###############################################
707 define EMBEDDED_RAM_SIZE
710 comment "Embedded boards generally have fixed RAM size"
713 ###############################################
715 ###############################################
717 define CONFIG_CHIP_NAME
720 comment "Compile in the chip name"
723 define CONFIG_GDB_STUB
726 comment "Compile in gdb stub support?"
729 define HAVE_INIT_TIMER
732 comment "Have a init_timer function"
734 define HAVE_HARD_RESET
737 comment "Have hard reset"
742 comment "Set to deal with memory hole"
744 define MAX_REBOOT_CNT
747 comment "Set maximum reboots"
750 ###############################################
751 # Misc device options
752 ###############################################
754 define CONFIG_TSC_X86RDTSC_CALIBRATE_WITH_TIMER2
757 comment "Use timer2 to callibrate the x86 time stamp counter"
759 define INTEL_PPRO_MTRR
764 define CONFIG_UDELAY_TSC
767 comment "Implement udelay with the x86 time stamp counter"
772 comment "Use this to fake spd rom values"
775 define HAVE_ACPI_TABLES
778 comment "Define to build ACPI tables"
781 define AGP_APERTURE_SIZE
785 comment "AGP graphics virtual memory aperture size"
788 define CK804_DEVN_BASE
791 comment "CK804 device count from 0 or 1"
794 define K8_E0_MEM_HOLE_SIZEK
797 comment "Opteron E0 later memory hole size in K"
800 define CONFIG_PCI_ROM_RUN
803 comment "Init PCI device option rom"
807 ###############################################
808 # Board specific options
809 ###############################################
811 ###############################################
812 # Options for motorola/sandpoint
813 ###############################################
814 define CONFIG_SANDPOINT_ALTIMUS
817 comment "Configure Sandpoint with Altimus PMC"
819 define CONFIG_SANDPOINT_TALUS
822 comment "Configure Sandpoint with Talus PMC"
824 define CONFIG_SANDPOINT_UNITY
827 comment "Configure Sandpoint with Unity PMC"
829 define CONFIG_SANDPOINT_VALIS
832 comment "Configure Sandpoint with Valis PMC"
834 define CONFIG_SANDPOINT_GYRUS
837 comment "Configure Sandpoint with Gyrus PMC"
840 ###############################################
841 # Options for totalimpact/briq
842 ###############################################
843 define CONFIG_BRIQ_750FX
846 comment "Configure briQ with PowerPC 750FX"
848 define CONFIG_BRIQ_7400
851 comment "Configure briQ with PowerPC G4"