blob: df828f77f8b5854de3fa1cc701f1aa9e05f381c1 [file] [log] [blame]
Yinghai Luf55b58d2007-02-17 14:28:11 +00001##
Stefan Reinauer7e61e452008-01-18 10:35:56 +00002## This file is part of the coreboot project.
Yinghai Luf55b58d2007-02-17 14:28:11 +00003##
4## Copyright (C) 2007 AMD
5## Written by Yinghai Lu <yinghailu@amd.com> for AMD.
6##
7## This program is free software; you can redistribute it and/or modify
8## it under the terms of the GNU General Public License as published by
9## the Free Software Foundation; either version 2 of the License, or
10## (at your option) any later version.
11##
12## This program is distributed in the hope that it will be useful,
13## but WITHOUT ANY WARRANTY; without even the implied warranty of
14## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15## GNU General Public License for more details.
16##
17## You should have received a copy of the GNU General Public License
18## along with this program; if not, write to the Free Software
19## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
20##
21
Myles Watsonb8e20272009-10-15 13:35:47 +000022uses CONFIG_GENERATE_MP_TABLE
23uses CONFIG_GENERATE_PIRQ_TABLE
24uses CONFIG_GENERATE_ACPI_TABLES
Stefan Reinauer08670622009-06-30 15:17:49 +000025uses CONFIG_HAVE_ACPI_RESUME
26uses CONFIG_ACPI_SSDTX_NUM
27uses CONFIG_USE_FALLBACK_IMAGE
28uses CONFIG_USE_FAILOVER_IMAGE
29uses CONFIG_HAVE_FALLBACK_BOOT
30uses CONFIG_HAVE_FAILOVER_BOOT
31uses CONFIG_HAVE_HARD_RESET
32uses CONFIG_IRQ_SLOT_COUNT
33uses CONFIG_HAVE_OPTION_TABLE
Yinghai Luf55b58d2007-02-17 14:28:11 +000034uses CONFIG_MAX_CPUS
35uses CONFIG_MAX_PHYSICAL_CPUS
36uses CONFIG_LOGICAL_CPUS
37uses CONFIG_IOAPIC
38uses CONFIG_SMP
Stefan Reinauer08670622009-06-30 15:17:49 +000039uses CONFIG_FALLBACK_SIZE
40uses CONFIG_FAILOVER_SIZE
41uses CONFIG_ROM_SIZE
42uses CONFIG_ROM_SECTION_SIZE
43uses CONFIG_ROM_IMAGE_SIZE
44uses CONFIG_ROM_SECTION_SIZE
45uses CONFIG_ROM_SECTION_OFFSET
Stefan Reinauere6fdf972007-02-27 14:11:18 +000046uses CONFIG_ROM_PAYLOAD
Stefan Reinauere6fdf972007-02-27 14:11:18 +000047uses CONFIG_COMPRESSED_PAYLOAD_NRV2B
48uses CONFIG_COMPRESSED_PAYLOAD_LZMA
49uses CONFIG_PRECOMPRESSED_PAYLOAD
Stefan Reinauer08670622009-06-30 15:17:49 +000050uses CONFIG_ROMBASE
51uses CONFIG_XIP_ROM_SIZE
52uses CONFIG_XIP_ROM_BASE
53uses CONFIG_STACK_SIZE
54uses CONFIG_HEAP_SIZE
55uses CONFIG_USE_OPTION_TABLE
56uses CONFIG_LB_CKS_RANGE_START
57uses CONFIG_LB_CKS_RANGE_END
58uses CONFIG_LB_CKS_LOC
59uses CONFIG_MAINBOARD_PART_NUMBER
60uses CONFIG_MAINBOARD_VENDOR
61uses CONFIG_MAINBOARD
62uses CONFIG_MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID
63uses CONFIG_MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID
Stefan Reinauerf8ee1802008-01-18 15:08:58 +000064uses COREBOOT_EXTRA_VERSION
Stefan Reinauer08670622009-06-30 15:17:49 +000065uses CONFIG_RAMBASE
66uses CONFIG_TTYS0_BAUD
67uses CONFIG_TTYS0_BASE
68uses CONFIG_TTYS0_LCS
69uses CONFIG_DEFAULT_CONSOLE_LOGLEVEL
70uses CONFIG_MAXIMUM_CONSOLE_LOGLEVEL
71uses CONFIG_MAINBOARD_POWER_ON_AFTER_POWER_FAIL
Yinghai Luf55b58d2007-02-17 14:28:11 +000072uses CONFIG_CONSOLE_SERIAL8250
Stefan Reinauer08670622009-06-30 15:17:49 +000073uses CONFIG_HAVE_INIT_TIMER
Yinghai Luf55b58d2007-02-17 14:28:11 +000074uses CONFIG_GDB_STUB
75uses CONFIG_GDB_STUB
Stefan Reinauer08670622009-06-30 15:17:49 +000076uses CONFIG_CROSS_COMPILE
Yinghai Luf55b58d2007-02-17 14:28:11 +000077uses CC
Stefan Reinauer9dd27bc2009-06-30 17:13:58 +000078uses HOSTCC
Stefan Reinauer08670622009-06-30 15:17:49 +000079uses CONFIG_OBJCOPY
Yinghai Luf55b58d2007-02-17 14:28:11 +000080uses CONFIG_CONSOLE_VGA
81uses CONFIG_USBDEBUG_DIRECT
82uses CONFIG_PCI_ROM_RUN
Stefan Reinauer08670622009-06-30 15:17:49 +000083uses CONFIG_HW_MEM_HOLE_SIZEK
84uses CONFIG_HW_MEM_HOLE_SIZE_AUTO_INC
85uses CONFIG_K8_HT_FREQ_1G_SUPPORT
Yinghai Luf55b58d2007-02-17 14:28:11 +000086
Myles Watsonb8e20272009-10-15 13:35:47 +000087uses CONFIG_WRITE_HIGH_TABLES
Harald Gutmannb735f852009-06-18 09:46:11 +000088
Stefan Reinauer08670622009-06-30 15:17:49 +000089uses CONFIG_HT_CHAIN_UNITID_BASE
90uses CONFIG_HT_CHAIN_END_UNITID_BASE
91uses CONFIG_SB_HT_CHAIN_ON_BUS0
92uses CONFIG_SB_HT_CHAIN_UNITID_OFFSET_ONLY
Yinghai Luf55b58d2007-02-17 14:28:11 +000093
Stefan Reinauer08670622009-06-30 15:17:49 +000094uses CONFIG_USE_DCACHE_RAM
95uses CONFIG_DCACHE_RAM_BASE
96uses CONFIG_DCACHE_RAM_SIZE
97uses CONFIG_DCACHE_RAM_GLOBAL_VAR_SIZE
Yinghai Luf55b58d2007-02-17 14:28:11 +000098uses CONFIG_USE_INIT
99
Stefan Reinauer08670622009-06-30 15:17:49 +0000100uses CONFIG_SERIAL_CPU_INIT
Yinghai Luf55b58d2007-02-17 14:28:11 +0000101
Stefan Reinauer08670622009-06-30 15:17:49 +0000102uses CONFIG_ENABLE_APIC_EXT_ID
103uses CONFIG_APIC_ID_OFFSET
104uses CONFIG_LIFT_BSP_APIC_ID
Yinghai Luf55b58d2007-02-17 14:28:11 +0000105
106uses CONFIG_PCI_64BIT_PREF_MEM
107
Myles Watson0f61a4f2009-10-16 16:32:57 +0000108uses CONFIG_RAMTOP
Yinghai Luf55b58d2007-02-17 14:28:11 +0000109
110uses CONFIG_AP_CODE_IN_CAR
111
Stefan Reinauer08670622009-06-30 15:17:49 +0000112uses CONFIG_MEM_TRAIN_SEQ
Yinghai Luf55b58d2007-02-17 14:28:11 +0000113
Stefan Reinauer08670622009-06-30 15:17:49 +0000114uses CONFIG_WAIT_BEFORE_CPUS_INIT
Yinghai Luf55b58d2007-02-17 14:28:11 +0000115
116uses CONFIG_USE_PRINTK_IN_CAR
117
Myles Watsonec0ee642009-10-19 16:21:30 +0000118uses CONFIG_SUPERIO_ITE_IT8716F_OVERRIDE_FANCTL
Yinghai Luf55b58d2007-02-17 14:28:11 +0000119###
120### Build options
121###
122
123##
Stefan Reinauer08670622009-06-30 15:17:49 +0000124## CONFIG_ROM_SIZE is the size of boot ROM that this board will use.
Yinghai Luf55b58d2007-02-17 14:28:11 +0000125##
Stefan Reinauer08670622009-06-30 15:17:49 +0000126default CONFIG_ROM_SIZE=524288
127#default CONFIG_ROM_SIZE=0x100000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000128
129##
Stefan Reinauer08670622009-06-30 15:17:49 +0000130## CONFIG_FALLBACK_SIZE is the amount of the ROM the complete fallback image will use
Yinghai Luf55b58d2007-02-17 14:28:11 +0000131##
Yinghai Luf55b58d2007-02-17 14:28:11 +0000132
133#FALLBACK: 256K-4K
Patrick Georgib339e102009-08-11 17:35:02 +0000134default CONFIG_FALLBACK_SIZE = CONFIG_ROM_IMAGE_SIZE
Yinghai Luf55b58d2007-02-17 14:28:11 +0000135#FAILOVER: 4K
Stefan Reinauer08670622009-06-30 15:17:49 +0000136default CONFIG_FAILOVER_SIZE=0x01000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000137
138#more 1M for pgtbl
Myles Watson0f61a4f2009-10-16 16:32:57 +0000139default CONFIG_RAMTOP=2048*1024
Yinghai Luf55b58d2007-02-17 14:28:11 +0000140
141##
Ronald Hoogenboom56cf01f2008-02-25 19:36:20 +0000142## Set-up automatic fan control
143##
Myles Watsonec0ee642009-10-19 16:21:30 +0000144default CONFIG_SUPERIO_ITE_IT8716F_OVERRIDE_FANCTL=1
Ronald Hoogenboom56cf01f2008-02-25 19:36:20 +0000145
146##
Yinghai Luf55b58d2007-02-17 14:28:11 +0000147## Build code for the fallback boot
148##
Stefan Reinauer08670622009-06-30 15:17:49 +0000149default CONFIG_HAVE_FALLBACK_BOOT=1
150default CONFIG_HAVE_FAILOVER_BOOT=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000151
152##
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000153## Build code to reset the motherboard from coreboot
Yinghai Luf55b58d2007-02-17 14:28:11 +0000154##
Stefan Reinauer08670622009-06-30 15:17:49 +0000155default CONFIG_HAVE_HARD_RESET=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000156
157##
158## Build code to export a programmable irq routing table
159##
Myles Watsonb8e20272009-10-15 13:35:47 +0000160default CONFIG_GENERATE_PIRQ_TABLE=1
Stefan Reinauer08670622009-06-30 15:17:49 +0000161default CONFIG_IRQ_SLOT_COUNT=11
Yinghai Luf55b58d2007-02-17 14:28:11 +0000162
163##
164## Build code to export an x86 MP table
165## Useful for specifying IRQ routing values
166##
Myles Watsonb8e20272009-10-15 13:35:47 +0000167default CONFIG_GENERATE_MP_TABLE=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000168
Harald Gutmannb735f852009-06-18 09:46:11 +0000169## HIGH tables support
Myles Watsonb8e20272009-10-15 13:35:47 +0000170default CONFIG_WRITE_HIGH_TABLES=1
Harald Gutmannb735f852009-06-18 09:46:11 +0000171
Yinghai Luf55b58d2007-02-17 14:28:11 +0000172## ACPI tables will be included
Myles Watsonb8e20272009-10-15 13:35:47 +0000173default CONFIG_GENERATE_ACPI_TABLES=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000174
175##
176## Build code to export a CMOS option table
177##
Stefan Reinauer08670622009-06-30 15:17:49 +0000178default CONFIG_HAVE_OPTION_TABLE=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000179
180##
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000181## Move the default coreboot cmos range off of AMD RTC registers
Yinghai Luf55b58d2007-02-17 14:28:11 +0000182##
Stefan Reinauer08670622009-06-30 15:17:49 +0000183default CONFIG_LB_CKS_RANGE_START=49
184default CONFIG_LB_CKS_RANGE_END=122
185default CONFIG_LB_CKS_LOC=123
Yinghai Luf55b58d2007-02-17 14:28:11 +0000186
187##
188## Build code for SMP support
189## Only worry about 2 micro processors
190##
191default CONFIG_SMP=1
192default CONFIG_MAX_CPUS=2
193default CONFIG_MAX_PHYSICAL_CPUS=1
194default CONFIG_LOGICAL_CPUS=1
195
Stefan Reinauer08670622009-06-30 15:17:49 +0000196#default CONFIG_SERIAL_CPU_INIT=0
Yinghai Luf55b58d2007-02-17 14:28:11 +0000197
Stefan Reinauer08670622009-06-30 15:17:49 +0000198default CONFIG_ENABLE_APIC_EXT_ID=0
199default CONFIG_APIC_ID_OFFSET=0x10
200default CONFIG_LIFT_BSP_APIC_ID=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000201
Yinghai Luf55b58d2007-02-17 14:28:11 +0000202#memory hole size, 0 mean disable, others will enable the hole, at that case if it is small than mmio_basek, it will use mmio_basek instead.
203#2G
Stefan Reinauer08670622009-06-30 15:17:49 +0000204#default CONFIG_HW_MEM_HOLE_SIZEK=0x200000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000205#1G
Stefan Reinauer08670622009-06-30 15:17:49 +0000206default CONFIG_HW_MEM_HOLE_SIZEK=0x100000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000207#512M
Stefan Reinauer08670622009-06-30 15:17:49 +0000208#default CONFIG_HW_MEM_HOLE_SIZEK=0x80000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000209
210#make auto increase hole size to avoid hole_startk equal to basek so as to make some kernel happy
Stefan Reinauer08670622009-06-30 15:17:49 +0000211#default CONFIG_HW_MEM_HOLE_SIZE_AUTO_INC=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000212
213#Opteron K8 1G HT Support
Stefan Reinauer08670622009-06-30 15:17:49 +0000214default CONFIG_K8_HT_FREQ_1G_SUPPORT=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000215
216#VGA Console
217default CONFIG_CONSOLE_VGA=1
218default CONFIG_PCI_ROM_RUN=1
219
Ed Swierkad9a2c62007-04-06 20:01:44 +0000220#default CONFIG_USBDEBUG_DIRECT=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000221
222#HT Unit ID offset, default is 1, the typical one, 0 mean only one HT device
Stefan Reinauer08670622009-06-30 15:17:49 +0000223default CONFIG_HT_CHAIN_UNITID_BASE=0
Yinghai Luf55b58d2007-02-17 14:28:11 +0000224
225#real SB Unit ID, default is 0x20, mean dont touch it at last
Stefan Reinauer08670622009-06-30 15:17:49 +0000226#default CONFIG_HT_CHAIN_END_UNITID_BASE=0x6
Yinghai Luf55b58d2007-02-17 14:28:11 +0000227
228#make the SB HT chain on bus 0, default is not (0)
Stefan Reinauer08670622009-06-30 15:17:49 +0000229default CONFIG_SB_HT_CHAIN_ON_BUS0=2
Yinghai Luf55b58d2007-02-17 14:28:11 +0000230
231#only offset for SB chain?, default is yes(1)
Stefan Reinauer08670622009-06-30 15:17:49 +0000232default CONFIG_SB_HT_CHAIN_UNITID_OFFSET_ONLY=0
Yinghai Luf55b58d2007-02-17 14:28:11 +0000233
234#allow capable device use that above 4G
235#default CONFIG_PCI_64BIT_PREF_MEM=1
236
237##
238## enable CACHE_AS_RAM specifics
239##
Stefan Reinauer08670622009-06-30 15:17:49 +0000240default CONFIG_USE_DCACHE_RAM=1
241default CONFIG_DCACHE_RAM_BASE=0xc8000
242default CONFIG_DCACHE_RAM_SIZE=0x08000
243default CONFIG_DCACHE_RAM_GLOBAL_VAR_SIZE=0x01000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000244default CONFIG_USE_INIT=0
245
246default CONFIG_AP_CODE_IN_CAR=0
Stefan Reinauer08670622009-06-30 15:17:49 +0000247default CONFIG_MEM_TRAIN_SEQ=2
248default CONFIG_WAIT_BEFORE_CPUS_INIT=0
Yinghai Luf55b58d2007-02-17 14:28:11 +0000249
250##
251## Build code to setup a generic IOAPIC
252##
253default CONFIG_IOAPIC=1
254
255##
256## Clean up the motherboard id strings
257##
Stefan Reinauer08670622009-06-30 15:17:49 +0000258default CONFIG_MAINBOARD_PART_NUMBER="m57sli"
259default CONFIG_MAINBOARD_VENDOR="GIGABYTE"
260default CONFIG_MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID=0x1022
261default CONFIG_MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID=0x2b80
Yinghai Luf55b58d2007-02-17 14:28:11 +0000262
263###
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000264### coreboot layout values
Yinghai Luf55b58d2007-02-17 14:28:11 +0000265###
266
Stefan Reinauer08670622009-06-30 15:17:49 +0000267## CONFIG_ROM_IMAGE_SIZE is the amount of space to allow coreboot to occupy.
Patrick Georgib339e102009-08-11 17:35:02 +0000268default CONFIG_ROM_IMAGE_SIZE = 65536 - CONFIG_FAILOVER_SIZE
Yinghai Luf55b58d2007-02-17 14:28:11 +0000269
270##
271## Use a small 8K stack
272##
Stefan Reinauer08670622009-06-30 15:17:49 +0000273default CONFIG_STACK_SIZE=0x2000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000274
275##
276## Use a small 32K heap
277##
Stefan Reinauer08670622009-06-30 15:17:49 +0000278default CONFIG_HEAP_SIZE=0x8000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000279
280##
281## Only use the option table in a normal image
282##
Stefan Reinauer08670622009-06-30 15:17:49 +0000283default CONFIG_USE_OPTION_TABLE = (!CONFIG_USE_FALLBACK_IMAGE) && (!CONFIG_USE_FAILOVER_IMAGE )
Yinghai Luf55b58d2007-02-17 14:28:11 +0000284
285##
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000286## Coreboot C code runs at this location in RAM
Yinghai Luf55b58d2007-02-17 14:28:11 +0000287##
Stefan Reinauer08670622009-06-30 15:17:49 +0000288default CONFIG_RAMBASE=0x00100000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000289
290##
291## Load the payload from the ROM
292##
Stefan Reinauere6fdf972007-02-27 14:11:18 +0000293default CONFIG_ROM_PAYLOAD = 1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000294
Stefan Reinauere6fdf972007-02-27 14:11:18 +0000295#default CONFIG_COMPRESSED_PAYLOAD_NRV2B = 1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000296
297###
298### Defaults of options that you may want to override in the target config file
299###
300
301##
302## The default compiler
303##
Stefan Reinauer08670622009-06-30 15:17:49 +0000304default CC="$(CONFIG_CROSS_COMPILE)gcc -m32"
Stefan Reinauer9dd27bc2009-06-30 17:13:58 +0000305default HOSTCC="gcc"
Yinghai Luf55b58d2007-02-17 14:28:11 +0000306
307##
308## Disable the gdb stub by default
309##
310default CONFIG_GDB_STUB=0
311
312##
313## The Serial Console
314##
315default CONFIG_USE_PRINTK_IN_CAR=1
316
317# To Enable the Serial Console
318default CONFIG_CONSOLE_SERIAL8250=1
319
320## Select the serial console baud rate
Stefan Reinauer08670622009-06-30 15:17:49 +0000321default CONFIG_TTYS0_BAUD=115200
322#default CONFIG_TTYS0_BAUD=57600
323#default CONFIG_TTYS0_BAUD=38400
324#default CONFIG_TTYS0_BAUD=19200
325#default CONFIG_TTYS0_BAUD=9600
326#default CONFIG_TTYS0_BAUD=4800
327#default CONFIG_TTYS0_BAUD=2400
328#default CONFIG_TTYS0_BAUD=1200
Yinghai Luf55b58d2007-02-17 14:28:11 +0000329
330# Select the serial console base port
Stefan Reinauer08670622009-06-30 15:17:49 +0000331default CONFIG_TTYS0_BASE=0x3f8
Yinghai Luf55b58d2007-02-17 14:28:11 +0000332
333# Select the serial protocol
334# This defaults to 8 data bits, 1 stop bit, and no parity
Stefan Reinauer08670622009-06-30 15:17:49 +0000335default CONFIG_TTYS0_LCS=0x3
Yinghai Luf55b58d2007-02-17 14:28:11 +0000336
337##
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000338### Select the coreboot loglevel
Yinghai Luf55b58d2007-02-17 14:28:11 +0000339##
340## EMERG 1 system is unusable
341## ALERT 2 action must be taken immediately
342## CRIT 3 critical conditions
343## ERR 4 error conditions
344## WARNING 5 warning conditions
345## NOTICE 6 normal but significant condition
346## INFO 7 informational
Stefan Reinauer08670622009-06-30 15:17:49 +0000347## CONFIG_DEBUG 8 debug-level messages
Yinghai Luf55b58d2007-02-17 14:28:11 +0000348## SPEW 9 Way too many details
349
350## Request this level of debugging output
Stefan Reinauer08670622009-06-30 15:17:49 +0000351default CONFIG_DEFAULT_CONSOLE_LOGLEVEL=8
Yinghai Luf55b58d2007-02-17 14:28:11 +0000352## At a maximum only compile in this level of debugging
Stefan Reinauer08670622009-06-30 15:17:49 +0000353default CONFIG_MAXIMUM_CONSOLE_LOGLEVEL=8
Yinghai Luf55b58d2007-02-17 14:28:11 +0000354
355##
356## Select power on after power fail setting
Stefan Reinauer08670622009-06-30 15:17:49 +0000357default CONFIG_MAINBOARD_POWER_ON_AFTER_POWER_FAIL="MAINBOARD_POWER_ON"
Yinghai Luf55b58d2007-02-17 14:28:11 +0000358
Harald Gutmannb735f852009-06-18 09:46:11 +0000359### End Options.lb
Yinghai Luf55b58d2007-02-17 14:28:11 +0000360end