blob: 85d83317013c5c946f608d29a1bf19ede02a1851 [file] [log] [blame]
Marc Jones5dd4a202009-03-20 16:36:05 +00001##
2## This file is part of the coreboot project.
3##
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
Marc Jones5dd4a202009-03-20 16:36:05 +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
Marc Jones5dd4a202009-03-20 16:36:05 +000046uses CONFIG_ROM_PAYLOAD
Marc Jones5dd4a202009-03-20 16:36:05 +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_HAVE_LOW_TABLES
Ward Vandewege55faef32009-04-27 20:19:06 +000057uses CONFIG_MULTIBOOT
Stefan Reinauer08670622009-06-30 15:17:49 +000058uses CONFIG_LB_CKS_RANGE_START
59uses CONFIG_LB_CKS_RANGE_END
60uses CONFIG_LB_CKS_LOC
61uses CONFIG_MAINBOARD_PART_NUMBER
62uses CONFIG_MAINBOARD_VENDOR
63uses CONFIG_MAINBOARD
64uses CONFIG_MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID
65uses CONFIG_MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID
Marc Jones5dd4a202009-03-20 16:36:05 +000066uses COREBOOT_EXTRA_VERSION
Stefan Reinauer08670622009-06-30 15:17:49 +000067uses CONFIG_RAMBASE
68uses CONFIG_TTYS0_BAUD
69uses CONFIG_TTYS0_BASE
70uses CONFIG_TTYS0_LCS
71uses CONFIG_DEFAULT_CONSOLE_LOGLEVEL
72uses CONFIG_MAXIMUM_CONSOLE_LOGLEVEL
73uses CONFIG_MAINBOARD_POWER_ON_AFTER_POWER_FAIL
Marc Jones5dd4a202009-03-20 16:36:05 +000074uses CONFIG_CONSOLE_SERIAL8250
Stefan Reinauer08670622009-06-30 15:17:49 +000075uses CONFIG_HAVE_INIT_TIMER
Marc Jones5dd4a202009-03-20 16:36:05 +000076uses CONFIG_GDB_STUB
77uses CONFIG_GDB_STUB
Stefan Reinauer08670622009-06-30 15:17:49 +000078uses CONFIG_CROSS_COMPILE
Marc Jones5dd4a202009-03-20 16:36:05 +000079uses CC
Stefan Reinauer9dd27bc2009-06-30 17:13:58 +000080uses HOSTCC
Stefan Reinauer08670622009-06-30 15:17:49 +000081uses CONFIG_OBJCOPY
Marc Jones5dd4a202009-03-20 16:36:05 +000082uses CONFIG_CONSOLE_VGA
83uses CONFIG_PCI_ROM_RUN
Stefan Reinauer08670622009-06-30 15:17:49 +000084uses CONFIG_HW_MEM_HOLE_SIZEK
85uses CONFIG_HW_MEM_HOLE_SIZE_AUTO_INC
86uses CONFIG_K8_HT_FREQ_1G_SUPPORT
Marc Jones5dd4a202009-03-20 16:36:05 +000087
Stefan Reinauer08670622009-06-30 15:17:49 +000088uses CONFIG_HT_CHAIN_UNITID_BASE
89uses CONFIG_HT_CHAIN_END_UNITID_BASE
90uses CONFIG_SB_HT_CHAIN_ON_BUS0
91uses CONFIG_SB_HT_CHAIN_UNITID_OFFSET_ONLY
Marc Jones5dd4a202009-03-20 16:36:05 +000092
Stefan Reinauer08670622009-06-30 15:17:49 +000093uses CONFIG_USE_DCACHE_RAM
94uses CONFIG_DCACHE_RAM_BASE
95uses CONFIG_DCACHE_RAM_SIZE
96uses CONFIG_DCACHE_RAM_GLOBAL_VAR_SIZE
Marc Jones5dd4a202009-03-20 16:36:05 +000097uses CONFIG_USE_INIT
98
Stefan Reinauer08670622009-06-30 15:17:49 +000099uses CONFIG_SERIAL_CPU_INIT
Marc Jones5dd4a202009-03-20 16:36:05 +0000100
Stefan Reinauer08670622009-06-30 15:17:49 +0000101uses CONFIG_ENABLE_APIC_EXT_ID
102uses CONFIG_APIC_ID_OFFSET
103uses CONFIG_LIFT_BSP_APIC_ID
Marc Jones5dd4a202009-03-20 16:36:05 +0000104
105uses CONFIG_PCI_64BIT_PREF_MEM
106
Myles Watson0f61a4f2009-10-16 16:32:57 +0000107uses CONFIG_RAMTOP
Marc Jones5dd4a202009-03-20 16:36:05 +0000108
109uses CONFIG_AP_CODE_IN_CAR
110
Stefan Reinauer08670622009-06-30 15:17:49 +0000111uses CONFIG_MEM_TRAIN_SEQ
Marc Jones5dd4a202009-03-20 16:36:05 +0000112
Stefan Reinauer08670622009-06-30 15:17:49 +0000113uses CONFIG_WAIT_BEFORE_CPUS_INIT
Marc Jones5dd4a202009-03-20 16:36:05 +0000114
115uses CONFIG_USE_PRINTK_IN_CAR
116
Patrick Georgi436f99b2009-11-27 16:55:13 +0000117uses CONFIG_ID_SECTION_OFFSET
118
Marc Jones5dd4a202009-03-20 16:36:05 +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.
Marc Jones5dd4a202009-03-20 16:36:05 +0000125##
Stefan Reinauer08670622009-06-30 15:17:49 +0000126#default CONFIG_ROM_SIZE=524288
127default CONFIG_ROM_SIZE=0x100000
Marc Jones5dd4a202009-03-20 16:36:05 +0000128
Stefan Reinauer08670622009-06-30 15:17:49 +0000129default CONFIG_HAVE_LOW_TABLES = 0
Ward Vandewege55faef32009-04-27 20:19:06 +0000130default CONFIG_MULTIBOOT=0
131
Marc Jones5dd4a202009-03-20 16:36:05 +0000132##
Stefan Reinauer08670622009-06-30 15:17:49 +0000133## CONFIG_FALLBACK_SIZE is the amount of the ROM the complete fallback image will use
Marc Jones5dd4a202009-03-20 16:36:05 +0000134##
Marc Jones5dd4a202009-03-20 16:36:05 +0000135
136#FALLBACK: 256K-4K
Patrick Georgib339e102009-08-11 17:35:02 +0000137default CONFIG_FALLBACK_SIZE = CONFIG_ROM_IMAGE_SIZE
Marc Jones5dd4a202009-03-20 16:36:05 +0000138#FAILOVER: 4K
Stefan Reinauer08670622009-06-30 15:17:49 +0000139default CONFIG_FAILOVER_SIZE=0x01000
Marc Jones5dd4a202009-03-20 16:36:05 +0000140
141#more 1M for pgtbl
Myles Watson0f61a4f2009-10-16 16:32:57 +0000142default CONFIG_RAMTOP=2048*1024
Marc Jones5dd4a202009-03-20 16:36:05 +0000143
144##
145## Build code for the fallback boot
146##
Stefan Reinauer08670622009-06-30 15:17:49 +0000147default CONFIG_HAVE_FALLBACK_BOOT=1
148default CONFIG_HAVE_FAILOVER_BOOT=1
Marc Jones5dd4a202009-03-20 16:36:05 +0000149
150##
151## Build code to reset the motherboard from coreboot
152##
Stefan Reinauer08670622009-06-30 15:17:49 +0000153default CONFIG_HAVE_HARD_RESET=1
Marc Jones5dd4a202009-03-20 16:36:05 +0000154
155##
156## Build code to export a programmable irq routing table
157##
Myles Watsonb8e20272009-10-15 13:35:47 +0000158default CONFIG_GENERATE_PIRQ_TABLE=1
Stefan Reinauer08670622009-06-30 15:17:49 +0000159default CONFIG_IRQ_SLOT_COUNT=11
Marc Jones5dd4a202009-03-20 16:36:05 +0000160
161##
162## Build code to export an x86 MP table
163## Useful for specifying IRQ routing values
164##
Myles Watsonb8e20272009-10-15 13:35:47 +0000165default CONFIG_GENERATE_MP_TABLE=1
Marc Jones5dd4a202009-03-20 16:36:05 +0000166
167## ACPI tables will be included
Myles Watsonb8e20272009-10-15 13:35:47 +0000168default CONFIG_GENERATE_ACPI_TABLES=0
Marc Jones5dd4a202009-03-20 16:36:05 +0000169
170##
171## Build code to export a CMOS option table
172##
Stefan Reinauer08670622009-06-30 15:17:49 +0000173default CONFIG_HAVE_OPTION_TABLE=1
Marc Jones5dd4a202009-03-20 16:36:05 +0000174
175##
176## Move the default coreboot cmos range off of AMD RTC registers
177##
Stefan Reinauer08670622009-06-30 15:17:49 +0000178default CONFIG_LB_CKS_RANGE_START=49
179default CONFIG_LB_CKS_RANGE_END=122
180default CONFIG_LB_CKS_LOC=123
Marc Jones5dd4a202009-03-20 16:36:05 +0000181
182##
183## Build code for SMP support
184## Only worry about 2 micro processors
185##
186default CONFIG_SMP=1
187default CONFIG_MAX_CPUS=4
188default CONFIG_MAX_PHYSICAL_CPUS=2
189default CONFIG_LOGICAL_CPUS=1
190
Stefan Reinauer08670622009-06-30 15:17:49 +0000191default CONFIG_SERIAL_CPU_INIT=0
Marc Jones5dd4a202009-03-20 16:36:05 +0000192
Stefan Reinauer08670622009-06-30 15:17:49 +0000193default CONFIG_ENABLE_APIC_EXT_ID=0
194default CONFIG_APIC_ID_OFFSET=0x10
195default CONFIG_LIFT_BSP_APIC_ID=1
Marc Jones5dd4a202009-03-20 16:36:05 +0000196
Marc Jones5dd4a202009-03-20 16:36:05 +0000197#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.
198#2G
Stefan Reinauer08670622009-06-30 15:17:49 +0000199#default CONFIG_HW_MEM_HOLE_SIZEK=0x200000
Marc Jones5dd4a202009-03-20 16:36:05 +0000200#1G
Stefan Reinauer08670622009-06-30 15:17:49 +0000201default CONFIG_HW_MEM_HOLE_SIZEK=0x100000
Marc Jones5dd4a202009-03-20 16:36:05 +0000202#512M
Stefan Reinauer08670622009-06-30 15:17:49 +0000203#default CONFIG_HW_MEM_HOLE_SIZEK=0x80000
Marc Jones5dd4a202009-03-20 16:36:05 +0000204
205#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 +0000206#default CONFIG_HW_MEM_HOLE_SIZE_AUTO_INC=1
Marc Jones5dd4a202009-03-20 16:36:05 +0000207
208#Opteron K8 1G HT Support
Stefan Reinauer08670622009-06-30 15:17:49 +0000209default CONFIG_K8_HT_FREQ_1G_SUPPORT=1
Marc Jones5dd4a202009-03-20 16:36:05 +0000210
211#VGA Console
212default CONFIG_CONSOLE_VGA=1
213default CONFIG_PCI_ROM_RUN=1
214
215#HT Unit ID offset, default is 1, the typical one, 0 mean only one HT device
Stefan Reinauer08670622009-06-30 15:17:49 +0000216default CONFIG_HT_CHAIN_UNITID_BASE=0
Marc Jones5dd4a202009-03-20 16:36:05 +0000217
218#real SB Unit ID, default is 0x20, mean dont touch it at last
Stefan Reinauer08670622009-06-30 15:17:49 +0000219#default CONFIG_HT_CHAIN_END_UNITID_BASE=0x6
Marc Jones5dd4a202009-03-20 16:36:05 +0000220
221#make the SB HT chain on bus 0, default is not (0)
Stefan Reinauer08670622009-06-30 15:17:49 +0000222default CONFIG_SB_HT_CHAIN_ON_BUS0=2
Marc Jones5dd4a202009-03-20 16:36:05 +0000223
224#only offset for SB chain?, default is yes(1)
Stefan Reinauer08670622009-06-30 15:17:49 +0000225default CONFIG_SB_HT_CHAIN_UNITID_OFFSET_ONLY=0
Marc Jones5dd4a202009-03-20 16:36:05 +0000226
227#allow capable device use that above 4G
228#default CONFIG_PCI_64BIT_PREF_MEM=1
229
230##
231## enable CACHE_AS_RAM specifics
232##
Stefan Reinauer08670622009-06-30 15:17:49 +0000233default CONFIG_USE_DCACHE_RAM=1
234default CONFIG_DCACHE_RAM_BASE=0xc8000
235default CONFIG_DCACHE_RAM_SIZE=0x08000
236default CONFIG_DCACHE_RAM_GLOBAL_VAR_SIZE=0x01000
Marc Jones5dd4a202009-03-20 16:36:05 +0000237default CONFIG_USE_INIT=0
238
239default CONFIG_AP_CODE_IN_CAR=1
Stefan Reinauer08670622009-06-30 15:17:49 +0000240default CONFIG_MEM_TRAIN_SEQ=1
241default CONFIG_WAIT_BEFORE_CPUS_INIT=1
Marc Jones5dd4a202009-03-20 16:36:05 +0000242
243##
244## Build code to setup a generic IOAPIC
245##
246default CONFIG_IOAPIC=1
247
248##
249## Clean up the motherboard id strings
250##
Stefan Reinauer08670622009-06-30 15:17:49 +0000251default CONFIG_MAINBOARD_PART_NUMBER="h8dme"
252default CONFIG_MAINBOARD_VENDOR="Supermicro"
253default CONFIG_MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID=0x15d9
254default CONFIG_MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID=0x1511
Marc Jones5dd4a202009-03-20 16:36:05 +0000255
256###
257### coreboot layout values
258###
259
Stefan Reinauer08670622009-06-30 15:17:49 +0000260## CONFIG_ROM_IMAGE_SIZE is the amount of space to allow coreboot to occupy.
Patrick Georgib339e102009-08-11 17:35:02 +0000261default CONFIG_ROM_IMAGE_SIZE = 65536 - CONFIG_FAILOVER_SIZE
Marc Jones5dd4a202009-03-20 16:36:05 +0000262
263##
264## Use a small 8K stack
265##
Stefan Reinauer08670622009-06-30 15:17:49 +0000266default CONFIG_STACK_SIZE=0x2000
Marc Jones5dd4a202009-03-20 16:36:05 +0000267
268##
269## Use a small 32K heap
270##
Stefan Reinauer08670622009-06-30 15:17:49 +0000271default CONFIG_HEAP_SIZE=0x8000
Marc Jones5dd4a202009-03-20 16:36:05 +0000272
273##
274## Only use the option table in a normal image
275##
Stefan Reinauer08670622009-06-30 15:17:49 +0000276default CONFIG_USE_OPTION_TABLE = (!CONFIG_USE_FALLBACK_IMAGE) && (!CONFIG_USE_FAILOVER_IMAGE )
Marc Jones5dd4a202009-03-20 16:36:05 +0000277
278##
279## Coreboot C code runs at this location in RAM
280##
Stefan Reinauer08670622009-06-30 15:17:49 +0000281default CONFIG_RAMBASE=0x00100000
Marc Jones5dd4a202009-03-20 16:36:05 +0000282
283##
284## Load the payload from the ROM
285##
286default CONFIG_ROM_PAYLOAD = 1
287
288#default CONFIG_COMPRESSED_PAYLOAD = 1
289
290###
291### Defaults of options that you may want to override in the target config file
292###
293
294##
295## The default compiler
296##
Stefan Reinauer08670622009-06-30 15:17:49 +0000297default CC="$(CONFIG_CROSS_COMPILE)gcc -m32"
Stefan Reinauer9dd27bc2009-06-30 17:13:58 +0000298default HOSTCC="gcc"
Marc Jones5dd4a202009-03-20 16:36:05 +0000299
300##
301## Disable the gdb stub by default
302##
303default CONFIG_GDB_STUB=0
304
305##
306## The Serial Console
307##
308default CONFIG_USE_PRINTK_IN_CAR=1
309
310# To Enable the Serial Console
311default CONFIG_CONSOLE_SERIAL8250=1
312
313## Select the serial console baud rate
Stefan Reinauer08670622009-06-30 15:17:49 +0000314default CONFIG_TTYS0_BAUD=115200
315#default CONFIG_TTYS0_BAUD=57600
316#default CONFIG_TTYS0_BAUD=38400
317#default CONFIG_TTYS0_BAUD=19200
318#default CONFIG_TTYS0_BAUD=9600
319#default CONFIG_TTYS0_BAUD=4800
320#default CONFIG_TTYS0_BAUD=2400
321#default CONFIG_TTYS0_BAUD=1200
Marc Jones5dd4a202009-03-20 16:36:05 +0000322
323# Select the serial console base port
Stefan Reinauer08670622009-06-30 15:17:49 +0000324default CONFIG_TTYS0_BASE=0x3f8
Marc Jones5dd4a202009-03-20 16:36:05 +0000325
326# Select the serial protocol
327# This defaults to 8 data bits, 1 stop bit, and no parity
Stefan Reinauer08670622009-06-30 15:17:49 +0000328default CONFIG_TTYS0_LCS=0x3
Marc Jones5dd4a202009-03-20 16:36:05 +0000329
330##
331### Select the coreboot loglevel
332##
333## EMERG 1 system is unusable
334## ALERT 2 action must be taken immediately
335## CRIT 3 critical conditions
336## ERR 4 error conditions
337## WARNING 5 warning conditions
338## NOTICE 6 normal but significant condition
339## INFO 7 informational
Stefan Reinauer08670622009-06-30 15:17:49 +0000340## CONFIG_DEBUG 8 debug-level messages
Marc Jones5dd4a202009-03-20 16:36:05 +0000341## SPEW 9 Way too many details
342
343## Request this level of debugging output
Stefan Reinauer08670622009-06-30 15:17:49 +0000344default CONFIG_DEFAULT_CONSOLE_LOGLEVEL=9
Marc Jones5dd4a202009-03-20 16:36:05 +0000345## At a maximum only compile in this level of debugging
Stefan Reinauer08670622009-06-30 15:17:49 +0000346default CONFIG_MAXIMUM_CONSOLE_LOGLEVEL=9
Marc Jones5dd4a202009-03-20 16:36:05 +0000347
348##
349## Select power on after power fail setting
Stefan Reinauer08670622009-06-30 15:17:49 +0000350default CONFIG_MAINBOARD_POWER_ON_AFTER_POWER_FAIL="MAINBOARD_POWER_ON"
Marc Jones5dd4a202009-03-20 16:36:05 +0000351
Patrick Georgi436f99b2009-11-27 16:55:13 +0000352default CONFIG_ID_SECTION_OFFSET=0x80
353
Marc Jones5dd4a202009-03-20 16:36:05 +0000354### End Options.lb
Marc Jones5dd4a202009-03-20 16:36:05 +0000355end