blob: 640f147296d60ee55b26a92a8e0edbdb9675a1b6 [file] [log] [blame]
Myles Watsona643ea32008-10-06 21:00:46 +00001##
Stefan Reinauer7e61e452008-01-18 10:35:56 +00002## This file is part of the coreboot project.
Myles Watsona643ea32008-10-06 21:00:46 +00003##
Yinghai Luf55b58d2007-02-17 14:28:11 +00004## Copyright (C) 2007 AMD
5## Written by Yinghai Lu <yinghailu@amd.com> for AMD.
Myles Watsona643ea32008-10-06 21:00:46 +00006##
Yinghai Luf55b58d2007-02-17 14:28:11 +00007## 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.
Myles Watsona643ea32008-10-06 21:00:46 +000011##
Yinghai Luf55b58d2007-02-17 14:28:11 +000012## 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.
Myles Watsona643ea32008-10-06 21:00:46 +000016##
Yinghai Luf55b58d2007-02-17 14:28:11 +000017## 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
Myles Watsona643ea32008-10-06 21:00:46 +000020##
Yinghai Luf55b58d2007-02-17 14:28:11 +000021
Stefan Reinauer08670622009-06-30 15:17:49 +000022uses CONFIG_HAVE_MP_TABLE
Peter Stuge483b7bb2009-04-14 07:40:01 +000023uses CONFIG_CBFS
Stefan Reinauer08670622009-06-30 15:17:49 +000024uses CONFIG_HAVE_PIRQ_TABLE
25uses CONFIG_HAVE_ACPI_TABLES
26uses CONFIG_HAVE_ACPI_RESUME
27uses CONFIG_ACPI_SSDTX_NUM
28uses CONFIG_USE_FALLBACK_IMAGE
29uses CONFIG_USE_FAILOVER_IMAGE
30uses CONFIG_HAVE_FALLBACK_BOOT
31uses CONFIG_HAVE_FAILOVER_BOOT
32uses CONFIG_HAVE_HARD_RESET
33uses CONFIG_IRQ_SLOT_COUNT
34uses CONFIG_HAVE_OPTION_TABLE
Yinghai Luf55b58d2007-02-17 14:28:11 +000035uses CONFIG_MAX_CPUS
36uses CONFIG_MAX_PHYSICAL_CPUS
37uses CONFIG_LOGICAL_CPUS
38uses CONFIG_IOAPIC
39uses CONFIG_SMP
Stefan Reinauer08670622009-06-30 15:17:49 +000040uses CONFIG_FALLBACK_SIZE
41uses CONFIG_FAILOVER_SIZE
42uses CONFIG_ROM_SIZE
43uses CONFIG_ROM_SECTION_SIZE
44uses CONFIG_ROM_IMAGE_SIZE
45uses CONFIG_ROM_SECTION_SIZE
46uses CONFIG_ROM_SECTION_OFFSET
Stefan Reinauere6fdf972007-02-27 14:11:18 +000047uses CONFIG_ROM_PAYLOAD
48uses CONFIG_ROM_PAYLOAD_START
49uses CONFIG_COMPRESSED_PAYLOAD_NRV2B
50uses CONFIG_COMPRESSED_PAYLOAD_LZMA
51uses CONFIG_PRECOMPRESSED_PAYLOAD
Stefan Reinauer08670622009-06-30 15:17:49 +000052uses CONFIG_PAYLOAD_SIZE
53uses CONFIG_ROMBASE
54uses CONFIG_XIP_ROM_SIZE
55uses CONFIG_XIP_ROM_BASE
56uses CONFIG_STACK_SIZE
57uses CONFIG_HEAP_SIZE
58uses CONFIG_USE_OPTION_TABLE
59uses CONFIG_LB_CKS_RANGE_START
60uses CONFIG_LB_CKS_RANGE_END
61uses CONFIG_LB_CKS_LOC
62uses CONFIG_MAINBOARD_PART_NUMBER
63uses CONFIG_MAINBOARD_VENDOR
64uses CONFIG_MAINBOARD
65uses CONFIG_MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID
66uses CONFIG_MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID
Stefan Reinauerf8ee1802008-01-18 15:08:58 +000067uses COREBOOT_EXTRA_VERSION
Stefan Reinauer08670622009-06-30 15:17:49 +000068uses CONFIG_RAMBASE
69uses CONFIG_TTYS0_BAUD
70uses CONFIG_TTYS0_BASE
71uses CONFIG_TTYS0_LCS
72uses CONFIG_DEFAULT_CONSOLE_LOGLEVEL
73uses CONFIG_MAXIMUM_CONSOLE_LOGLEVEL
74uses CONFIG_MAINBOARD_POWER_ON_AFTER_POWER_FAIL
Yinghai Luf55b58d2007-02-17 14:28:11 +000075uses CONFIG_CONSOLE_SERIAL8250
Stefan Reinauer08670622009-06-30 15:17:49 +000076uses CONFIG_HAVE_INIT_TIMER
Yinghai Luf55b58d2007-02-17 14:28:11 +000077uses CONFIG_GDB_STUB
78uses CONFIG_GDB_STUB
Stefan Reinauer08670622009-06-30 15:17:49 +000079uses CONFIG_CROSS_COMPILE
Yinghai Luf55b58d2007-02-17 14:28:11 +000080uses CC
Stefan Reinauer9dd27bc2009-06-30 17:13:58 +000081uses HOSTCC
Stefan Reinauer08670622009-06-30 15:17:49 +000082uses CONFIG_OBJCOPY
Yinghai Luf55b58d2007-02-17 14:28:11 +000083uses CONFIG_CONSOLE_VGA
84uses CONFIG_USBDEBUG_DIRECT
85uses CONFIG_PCI_ROM_RUN
Stefan Reinauer08670622009-06-30 15:17:49 +000086uses CONFIG_HW_MEM_HOLE_SIZEK
87uses CONFIG_HW_MEM_HOLE_SIZE_AUTO_INC
88uses CONFIG_K8_HT_FREQ_1G_SUPPORT
Yinghai Luf55b58d2007-02-17 14:28:11 +000089
Stefan Reinauer08670622009-06-30 15:17:49 +000090uses CONFIG_HT_CHAIN_UNITID_BASE
91uses CONFIG_HT_CHAIN_END_UNITID_BASE
92uses CONFIG_SB_HT_CHAIN_ON_BUS0
93uses CONFIG_SB_HT_CHAIN_UNITID_OFFSET_ONLY
Yinghai Luf55b58d2007-02-17 14:28:11 +000094
Stefan Reinauer08670622009-06-30 15:17:49 +000095uses CONFIG_USE_DCACHE_RAM
96uses CONFIG_DCACHE_RAM_BASE
97uses CONFIG_DCACHE_RAM_SIZE
98uses CONFIG_DCACHE_RAM_GLOBAL_VAR_SIZE
Yinghai Luf55b58d2007-02-17 14:28:11 +000099uses CONFIG_USE_INIT
100
Stefan Reinauer08670622009-06-30 15:17:49 +0000101uses CONFIG_SERIAL_CPU_INIT
Yinghai Luf55b58d2007-02-17 14:28:11 +0000102
Stefan Reinauer08670622009-06-30 15:17:49 +0000103uses CONFIG_ENABLE_APIC_EXT_ID
104uses CONFIG_APIC_ID_OFFSET
105uses CONFIG_LIFT_BSP_APIC_ID
Yinghai Luf55b58d2007-02-17 14:28:11 +0000106
107uses CONFIG_PCI_64BIT_PREF_MEM
108
109uses CONFIG_LB_MEM_TOPK
110
111uses CONFIG_AP_CODE_IN_CAR
112
Stefan Reinauer08670622009-06-30 15:17:49 +0000113uses CONFIG_MEM_TRAIN_SEQ
Yinghai Luf55b58d2007-02-17 14:28:11 +0000114
Stefan Reinauer08670622009-06-30 15:17:49 +0000115uses CONFIG_WAIT_BEFORE_CPUS_INIT
Yinghai Luf55b58d2007-02-17 14:28:11 +0000116
117uses CONFIG_USE_PRINTK_IN_CAR
118
119###
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
139default CONFIG_LB_MEM_TOPK=2048
140
141##
142## Build code for the fallback boot
143##
Stefan Reinauer08670622009-06-30 15:17:49 +0000144default CONFIG_HAVE_FALLBACK_BOOT=1
145default CONFIG_HAVE_FAILOVER_BOOT=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000146
147##
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000148## Build code to reset the motherboard from coreboot
Yinghai Luf55b58d2007-02-17 14:28:11 +0000149##
Stefan Reinauer08670622009-06-30 15:17:49 +0000150default CONFIG_HAVE_HARD_RESET=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000151
152##
153## Build code to export a programmable irq routing table
154##
Stefan Reinauer08670622009-06-30 15:17:49 +0000155default CONFIG_HAVE_PIRQ_TABLE=1
156default CONFIG_IRQ_SLOT_COUNT=11
Yinghai Luf55b58d2007-02-17 14:28:11 +0000157
158##
159## Build code to export an x86 MP table
160## Useful for specifying IRQ routing values
161##
Stefan Reinauer08670622009-06-30 15:17:49 +0000162default CONFIG_HAVE_MP_TABLE=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000163
164## ACPI tables will be included
Stefan Reinauer08670622009-06-30 15:17:49 +0000165default CONFIG_HAVE_ACPI_TABLES=0
Yinghai Luf55b58d2007-02-17 14:28:11 +0000166## extra SSDT num
Stefan Reinauer08670622009-06-30 15:17:49 +0000167default CONFIG_ACPI_SSDTX_NUM=3
Yinghai Luf55b58d2007-02-17 14:28:11 +0000168
169##
170## Build code to export a CMOS option table
171##
Stefan Reinauer08670622009-06-30 15:17:49 +0000172default CONFIG_HAVE_OPTION_TABLE=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000173
174##
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000175## Move the default coreboot cmos range off of AMD RTC registers
Yinghai Luf55b58d2007-02-17 14:28:11 +0000176##
Stefan Reinauer08670622009-06-30 15:17:49 +0000177default CONFIG_LB_CKS_RANGE_START=49
178default CONFIG_LB_CKS_RANGE_END=122
179default CONFIG_LB_CKS_LOC=123
Yinghai Luf55b58d2007-02-17 14:28:11 +0000180
181##
182## Build code for SMP support
183## Only worry about 2 micro processors
184##
185default CONFIG_SMP=1
186default CONFIG_MAX_CPUS=4
187default CONFIG_MAX_PHYSICAL_CPUS=2
188default CONFIG_LOGICAL_CPUS=1
189
Stefan Reinauer08670622009-06-30 15:17:49 +0000190#default CONFIG_SERIAL_CPU_INIT=0
Yinghai Luf55b58d2007-02-17 14:28:11 +0000191
Stefan Reinauer08670622009-06-30 15:17:49 +0000192default CONFIG_ENABLE_APIC_EXT_ID=0
193default CONFIG_APIC_ID_OFFSET=0x10
194default CONFIG_LIFT_BSP_APIC_ID=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000195
Myles Watsona643ea32008-10-06 21:00:46 +0000196#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.
Yinghai Luf55b58d2007-02-17 14:28:11 +0000197#2G
Stefan Reinauer08670622009-06-30 15:17:49 +0000198#default CONFIG_HW_MEM_HOLE_SIZEK=0x200000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000199#1G
Stefan Reinauer08670622009-06-30 15:17:49 +0000200default CONFIG_HW_MEM_HOLE_SIZEK=0x100000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000201#512M
Stefan Reinauer08670622009-06-30 15:17:49 +0000202#default CONFIG_HW_MEM_HOLE_SIZEK=0x80000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000203
204#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 +0000205#default CONFIG_HW_MEM_HOLE_SIZE_AUTO_INC=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000206
207#Opteron K8 1G HT Support
Stefan Reinauer08670622009-06-30 15:17:49 +0000208default CONFIG_K8_HT_FREQ_1G_SUPPORT=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000209
210#VGA Console
211default CONFIG_CONSOLE_VGA=1
212default CONFIG_PCI_ROM_RUN=1
213
214#default CONFIG_USBDEBUG_DIRECT=1
215
216#HT Unit ID offset, default is 1, the typical one, 0 mean only one HT device
Stefan Reinauer08670622009-06-30 15:17:49 +0000217default CONFIG_HT_CHAIN_UNITID_BASE=0
Yinghai Luf55b58d2007-02-17 14:28:11 +0000218
219#real SB Unit ID, default is 0x20, mean dont touch it at last
Stefan Reinauer08670622009-06-30 15:17:49 +0000220#default CONFIG_HT_CHAIN_END_UNITID_BASE=0x6
Yinghai Luf55b58d2007-02-17 14:28:11 +0000221
222#make the SB HT chain on bus 0, default is not (0)
Stefan Reinauer08670622009-06-30 15:17:49 +0000223default CONFIG_SB_HT_CHAIN_ON_BUS0=2
Yinghai Luf55b58d2007-02-17 14:28:11 +0000224
225#only offset for SB chain?, default is yes(1)
Stefan Reinauer08670622009-06-30 15:17:49 +0000226default CONFIG_SB_HT_CHAIN_UNITID_OFFSET_ONLY=0
Yinghai Luf55b58d2007-02-17 14:28:11 +0000227
228#allow capable device use that above 4G
229#default CONFIG_PCI_64BIT_PREF_MEM=1
230
231##
232## enable CACHE_AS_RAM specifics
233##
Stefan Reinauer08670622009-06-30 15:17:49 +0000234default CONFIG_USE_DCACHE_RAM=1
235default CONFIG_DCACHE_RAM_BASE=0xc8000
236default CONFIG_DCACHE_RAM_SIZE=0x08000
237default CONFIG_DCACHE_RAM_GLOBAL_VAR_SIZE=0x01000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000238default CONFIG_USE_INIT=0
239
240default CONFIG_AP_CODE_IN_CAR=0
Stefan Reinauer08670622009-06-30 15:17:49 +0000241default CONFIG_MEM_TRAIN_SEQ=1
242default CONFIG_WAIT_BEFORE_CPUS_INIT=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000243
244##
245## Build code to setup a generic IOAPIC
246##
247default CONFIG_IOAPIC=1
248
249##
250## Clean up the motherboard id strings
251##
Stefan Reinauer08670622009-06-30 15:17:49 +0000252default CONFIG_MAINBOARD_PART_NUMBER="S2912"
253default CONFIG_MAINBOARD_VENDOR="Tyan"
254default CONFIG_MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID=0x10f1
255default CONFIG_MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID=0x2912
Yinghai Luf55b58d2007-02-17 14:28:11 +0000256
257###
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000258### coreboot layout values
Yinghai Luf55b58d2007-02-17 14:28:11 +0000259###
260
Stefan Reinauer08670622009-06-30 15:17:49 +0000261## CONFIG_ROM_IMAGE_SIZE is the amount of space to allow coreboot to occupy.
Patrick Georgib339e102009-08-11 17:35:02 +0000262default CONFIG_ROM_IMAGE_SIZE = 65536 - CONFIG_FAILOVER_SIZE
Yinghai Luf55b58d2007-02-17 14:28:11 +0000263
264##
265## Use a small 8K stack
266##
Stefan Reinauer08670622009-06-30 15:17:49 +0000267default CONFIG_STACK_SIZE=0x2000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000268
269##
270## Use a small 32K heap
271##
Stefan Reinauer08670622009-06-30 15:17:49 +0000272default CONFIG_HEAP_SIZE=0x8000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000273
274##
275## Only use the option table in a normal image
276##
Stefan Reinauer08670622009-06-30 15:17:49 +0000277default CONFIG_USE_OPTION_TABLE = (!CONFIG_USE_FALLBACK_IMAGE) && (!CONFIG_USE_FAILOVER_IMAGE )
Yinghai Luf55b58d2007-02-17 14:28:11 +0000278
279##
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000280## Coreboot C code runs at this location in RAM
Yinghai Luf55b58d2007-02-17 14:28:11 +0000281##
Stefan Reinauer08670622009-06-30 15:17:49 +0000282default CONFIG_RAMBASE=0x00100000
Yinghai Luf55b58d2007-02-17 14:28:11 +0000283
284##
285## Load the payload from the ROM
286##
Stefan Reinauere6fdf972007-02-27 14:11:18 +0000287default CONFIG_ROM_PAYLOAD = 1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000288
Stefan Reinauere6fdf972007-02-27 14:11:18 +0000289#default CONFIG_COMPRESSED_PAYLOAD = 1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000290
291###
292### Defaults of options that you may want to override in the target config file
Myles Watsona643ea32008-10-06 21:00:46 +0000293###
Yinghai Luf55b58d2007-02-17 14:28:11 +0000294
295##
296## The default compiler
297##
Stefan Reinauer08670622009-06-30 15:17:49 +0000298default CC="$(CONFIG_CROSS_COMPILE)gcc -m32"
Stefan Reinauer9dd27bc2009-06-30 17:13:58 +0000299default HOSTCC="gcc"
Yinghai Luf55b58d2007-02-17 14:28:11 +0000300
301##
302## Disable the gdb stub by default
Myles Watsona643ea32008-10-06 21:00:46 +0000303##
Yinghai Luf55b58d2007-02-17 14:28:11 +0000304default CONFIG_GDB_STUB=0
305
306##
307## The Serial Console
308##
309default CONFIG_USE_PRINTK_IN_CAR=1
310
311# To Enable the Serial Console
312default CONFIG_CONSOLE_SERIAL8250=1
313
314## Select the serial console baud rate
Stefan Reinauer08670622009-06-30 15:17:49 +0000315default CONFIG_TTYS0_BAUD=115200
316#default CONFIG_TTYS0_BAUD=57600
317#default CONFIG_TTYS0_BAUD=38400
318#default CONFIG_TTYS0_BAUD=19200
319#default CONFIG_TTYS0_BAUD=9600
320#default CONFIG_TTYS0_BAUD=4800
321#default CONFIG_TTYS0_BAUD=2400
322#default CONFIG_TTYS0_BAUD=1200
Yinghai Luf55b58d2007-02-17 14:28:11 +0000323
324# Select the serial console base port
Stefan Reinauer08670622009-06-30 15:17:49 +0000325default CONFIG_TTYS0_BASE=0x3f8
Yinghai Luf55b58d2007-02-17 14:28:11 +0000326
327# Select the serial protocol
328# This defaults to 8 data bits, 1 stop bit, and no parity
Stefan Reinauer08670622009-06-30 15:17:49 +0000329default CONFIG_TTYS0_LCS=0x3
Yinghai Luf55b58d2007-02-17 14:28:11 +0000330
331##
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000332### Select the coreboot loglevel
Yinghai Luf55b58d2007-02-17 14:28:11 +0000333##
Myles Watsona643ea32008-10-06 21:00:46 +0000334## EMERG 1 system is unusable
335## ALERT 2 action must be taken immediately
336## CRIT 3 critical conditions
337## ERR 4 error conditions
338## WARNING 5 warning conditions
339## NOTICE 6 normal but significant condition
340## INFO 7 informational
Stefan Reinauer08670622009-06-30 15:17:49 +0000341## CONFIG_DEBUG 8 debug-level messages
Myles Watsona643ea32008-10-06 21:00:46 +0000342## SPEW 9 Way too many details
Yinghai Luf55b58d2007-02-17 14:28:11 +0000343
344## Request this level of debugging output
Stefan Reinauer08670622009-06-30 15:17:49 +0000345default CONFIG_DEFAULT_CONSOLE_LOGLEVEL=8
Yinghai Luf55b58d2007-02-17 14:28:11 +0000346## At a maximum only compile in this level of debugging
Stefan Reinauer08670622009-06-30 15:17:49 +0000347default CONFIG_MAXIMUM_CONSOLE_LOGLEVEL=8
Yinghai Luf55b58d2007-02-17 14:28:11 +0000348
349##
350## Select power on after power fail setting
Stefan Reinauer08670622009-06-30 15:17:49 +0000351default CONFIG_MAINBOARD_POWER_ON_AFTER_POWER_FAIL="MAINBOARD_POWER_ON"
Yinghai Luf55b58d2007-02-17 14:28:11 +0000352
353### End Options.lb
Ronald G. Minnichd469cda2009-03-31 16:32:01 +0000354#
Peter Stuge483b7bb2009-04-14 07:40:01 +0000355# CBFS
Ronald G. Minnichd469cda2009-03-31 16:32:01 +0000356#
357#
Patrick Georgib339e102009-08-11 17:35:02 +0000358default CONFIG_CBFS=1
Yinghai Luf55b58d2007-02-17 14:28:11 +0000359end