## ## This file is part of the coreboot project. ## ## Copyright (C) 2006-2007 coresystems GmbH ## (Written by Stefan Reinauer for coresystems GmbH) ## ## This program is free software; you can redistribute it and/or modify ## it under the terms of the GNU General Public License as published by ## the Free Software Foundation; either version 2 of the License, or ## (at your option) any later version. ## ## This program is distributed in the hope that it will be useful, ## but WITHOUT ANY WARRANTY; without even the implied warranty of ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ## GNU General Public License for more details. ## ## You should have received a copy of the GNU General Public License ## along with this program; if not, write to the Free Software ## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA ## config ARCH_X86 boolean help This option is used to set the architecture of a mainboard. It is usually set in mainboard/*/Kconfig. config ARCH string default x86 depends ARCH_X86 help This is the name of the respective subdirectory in arch/. config CPU_I586 boolean help CPU type. At the moment this option selects the reset vector and Cache-as-RAM (CAR) implementation for a mainboard. See arch/x86/Makefile for more hints on possible values. It is usually set in mainboard/*/Kconfig. config CPU_AMD_GEODELX boolean help CPU type. At the moment this option selects the reset vector and Cache-as-RAM (CAR) implementation for a mainboard. See arch/x86/Makefile for more hints on possible values. It is usually set in mainboard/*/Kconfig. config CPU_AMD_K8 boolean help CPU type. At the moment this option selects the reset vector and Cache-as-RAM (CAR) implementation for a mainboard. See arch/x86/Makefile for more hints on possible values. It is usually set in mainboard/*/Kconfig. config CPU_INTEL_CORE2 boolean help CPU type. At the moment this option selects the reset vector and Cache-as-RAM (CAR) implementation for a mainboard. See arch/x86/Makefile for more hints on possible values. It is usually set in mainboard/*/Kconfig. config CPU_VIA_C7 boolean help CPU type. At the moment this option selects the reset vector and Cache-as-RAM (CAR) implementation for a mainboard. See arch/x86/Makefile for more hints on possible values. It is usually set in mainboard/*/Kconfig. config HPET boolean depends CPU_AMD_K8 help Whether to configure a High Precision Event Timer (HPET). Note that HPETs are known to be bug-prone. config SMM boolean help Whether to configure System Management Mode support. This is mainboard-enabled. This is a tricky option that should not be enabled/disabled casually, as some chipsets will not work without some form of SMM enabled. config K8_REV_F_SUPPORT hex default 0 if CPU_AMD_K8 help Whether to include rev F support. config K8_SCAN_PCI_BUS hex default 0 if CPU_AMD_K8 help Whether to scan the PCI bus in stage1. config K8_ALLOCATE_IO_RANGE hex default 0 if CPU_AMD_K8 help Whether to allocate I/O space in stage1. config K8_ALLOCATE_MMIO_RANGE hex default 0 if CPU_AMD_K8 help Whether to allocate MMIO space in stage1. Comment from code: Do we need allocate MMIO? Currently we direct last 64M to southbridge link (sblink) only. We can not lose access to last 4M range to ROM. config LOGICAL_CPUS hex default 1 help How many logical CPUs there are. FIXME. config MAX_PHYSICAL_CPUS hex default 1 help Maximum number of physical CPUs (sockets). config MAX_PHYSICAL_CPUS_4_BUT_MORE_INSTALLED hex default 0 if CPU_AMD_K8 help Config with 4 CPUs even if more are installed. config CROSS_BAR_47_56 hex default 0 if CPU_AMD_K8 help Configure for the type of crossbar on the mainboard. config PIRQ_TABLE boolean help This option is used to determine whether the mainboard has a PIRQ table, which is the old way to set up interrupt routing. It is usually set in mainboard/*/Kconfig. config ACPI_TABLE boolean help This option is used to determine whether the mainboard has an ACPI table. It is usually set in mainboard/*/Kconfig. config SMP boolean depends CPU_I586 || CPU_AMD_K8 default 0 help This option is used to enable certain functions to make coreboot work correctly on symmetric multi processor systems. It is usually set in mainboard/*/Kconfig. config IOAPIC boolean depends ARCH_X86 && CPU_AMD_K8 || CPU_INTEL_CORE2 default 0 help If you want to configure an IOAPIC, set this. config CARBASE hex default 0x8f000 if CPU_I586 default 0x80000 if CPU_AMD_GEODELX default 0xc8000 if CPU_AMD_K8 default 0xffef0000 if CPU_VIA_C7 default 0xffdf8000 if CPU_INTEL_CORE2 help This option sets the base address of the area used for CAR. config CARSIZE hex default 0x1000 if CPU_I586 default 0x8000 if CPU_AMD_GEODELX default 0x8000 if CPU_AMD_K8 default 0x8000 if CPU_VIA_C7 default 0x8000 if CPU_INTEL_CORE2 help This option sets the size of the area used for CAR. config MTRR bool default n if CPU_AMD_GEODELX default y if CPU_AMD_K8 default y if CPU_VIA_C7 default y if CPU_INTEL_CORE2 help This option indicates if a cpu has MTRR support. config CBMEMK hex default 0x1000 if CPU_I586 default 0x1000 if CPU_AMD_GEODELX default 0x2000 if CPU_AMD_K8 default 0x1000 if CPU_VIA_C7 default 0x1000 if CPU_INTEL_CORE2 help This option sets the top of the memory area, in KiB, used for coreboot. config K8_HT_FREQ_1G_SUPPORT hex default 1 if CPU_AMD_K8 help 1 GHz support. Opteron E0 or later can support 1G HT, but still depends on the mainboard. config HT_FREQ_800MHZ hex default 1 if CPU_AMD_K8 help Can we run HT at 800 MHz. config USBDEBUG_DIRECT boolean depends SOUTHBRIDGE_NVIDIA_MCP55 default 0 help Determines if we enable USB Direct debugging. If you don't have a dongle, this is probably of no value to you. config APIC_ID_OFFSET hex "APIC ID offset" default 0x10 depends IOAPIC help This is entirely mainboard dependent. 0x10 is a *typical* setting but not always a good setting. menu "Debugging" config CARTEST bool "Test CAR area" default n help Test the CAR area after it has been set up. config CHECK_STACK_USAGE bool "Check stack usage" default n help Continuously monitor stack usage and keep statistics. The monitoring code is invoked from printk because printk is a leaf function and consumes quite a bit of stack for itself. This slows down booting a LOT. endmenu