blob: ed45cf60cc3129bab655c4e1f3db3ef834daee4e [file] [log] [blame]
Morgan Tsai218c2652007-11-02 16:09:58 +00001##
Stefan Reinauer7e61e452008-01-18 10:35:56 +00002## This file is part of the coreboot project.
Morgan Tsai218c2652007-11-02 16:09:58 +00003##
Morgan Tsai1602dd52007-10-29 21:00:14 +00004## Copyright (C) 2007 AMD
5## Written by Yinghai Lu <yinghailu@amd.com> for AMD.
6## Copyright (C) 2007 Silicon Integrated Systems Corp. (SiS)
7## Written by Morgan Tsai <my_tsai@sis.com> for SiS.
Morgan Tsai218c2652007-11-02 16:09:58 +00008##
Morgan Tsai1602dd52007-10-29 21:00:14 +00009## This program is free software; you can redistribute it and/or modify
10## it under the terms of the GNU General Public License as published by
11## the Free Software Foundation; either version 2 of the License, or
12## (at your option) any later version.
Morgan Tsai218c2652007-11-02 16:09:58 +000013##
Morgan Tsai1602dd52007-10-29 21:00:14 +000014## This program is distributed in the hope that it will be useful,
15## but WITHOUT ANY WARRANTY; without even the implied warranty of
16## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
17## GNU General Public License for more details.
Morgan Tsai218c2652007-11-02 16:09:58 +000018##
Morgan Tsai1602dd52007-10-29 21:00:14 +000019## You should have received a copy of the GNU General Public License
20## along with this program; if not, write to the Free Software
21## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
Morgan Tsai218c2652007-11-02 16:09:58 +000022##
Morgan Tsai1602dd52007-10-29 21:00:14 +000023
Stefan Reinauer08670622009-06-30 15:17:49 +000024uses CONFIG_HAVE_MP_TABLE
Peter Stuge483b7bb2009-04-14 07:40:01 +000025uses CONFIG_CBFS
Stefan Reinauer08670622009-06-30 15:17:49 +000026uses CONFIG_HAVE_PIRQ_TABLE
27uses CONFIG_HAVE_ACPI_TABLES
28uses CONFIG_HAVE_ACPI_RESUME
29uses CONFIG_ACPI_SSDTX_NUM
30uses CONFIG_USE_FALLBACK_IMAGE
31uses CONFIG_USE_FAILOVER_IMAGE
32uses CONFIG_HAVE_FALLBACK_BOOT
33uses CONFIG_HAVE_FAILOVER_BOOT
34uses CONFIG_HAVE_HARD_RESET
35uses CONFIG_IRQ_SLOT_COUNT
36uses CONFIG_HAVE_OPTION_TABLE
Morgan Tsai1602dd52007-10-29 21:00:14 +000037uses CONFIG_MAX_CPUS
38uses CONFIG_MAX_PHYSICAL_CPUS
39uses CONFIG_LOGICAL_CPUS
40uses CONFIG_IOAPIC
41uses CONFIG_SMP
Stefan Reinauer08670622009-06-30 15:17:49 +000042uses CONFIG_FALLBACK_SIZE
43uses CONFIG_FAILOVER_SIZE
44uses CONFIG_ROM_SIZE
45uses CONFIG_ROM_SECTION_SIZE
46uses CONFIG_ROM_IMAGE_SIZE
47uses CONFIG_ROM_SECTION_SIZE
48uses CONFIG_ROM_SECTION_OFFSET
Morgan Tsai1602dd52007-10-29 21:00:14 +000049uses CONFIG_ROM_PAYLOAD
50uses CONFIG_ROM_PAYLOAD_START
51uses CONFIG_COMPRESSED_PAYLOAD_NRV2B
52uses CONFIG_COMPRESSED_PAYLOAD_LZMA
53uses CONFIG_PRECOMPRESSED_PAYLOAD
Stefan Reinauer08670622009-06-30 15:17:49 +000054uses CONFIG_PAYLOAD_SIZE
55uses CONFIG_ROMBASE
56uses CONFIG_XIP_ROM_SIZE
57uses CONFIG_XIP_ROM_BASE
58uses CONFIG_STACK_SIZE
59uses CONFIG_HEAP_SIZE
60uses CONFIG_USE_OPTION_TABLE
61uses CONFIG_LB_CKS_RANGE_START
62uses CONFIG_LB_CKS_RANGE_END
63uses CONFIG_LB_CKS_LOC
64uses CONFIG_MAINBOARD_PART_NUMBER
65uses CONFIG_MAINBOARD_VENDOR
66uses CONFIG_MAINBOARD
67uses CONFIG_MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID
68uses CONFIG_MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID
Stefan Reinauerf8ee1802008-01-18 15:08:58 +000069uses COREBOOT_EXTRA_VERSION
Stefan Reinauer08670622009-06-30 15:17:49 +000070uses CONFIG_RAMBASE
71uses CONFIG_TTYS0_BAUD
72uses CONFIG_TTYS0_BASE
73uses CONFIG_TTYS0_LCS
74uses CONFIG_DEFAULT_CONSOLE_LOGLEVEL
75uses CONFIG_MAXIMUM_CONSOLE_LOGLEVEL
76uses CONFIG_MAINBOARD_POWER_ON_AFTER_POWER_FAIL
Morgan Tsai1602dd52007-10-29 21:00:14 +000077uses CONFIG_CONSOLE_SERIAL8250
Stefan Reinauer08670622009-06-30 15:17:49 +000078uses CONFIG_HAVE_INIT_TIMER
Morgan Tsai1602dd52007-10-29 21:00:14 +000079uses CONFIG_GDB_STUB
80uses CONFIG_GDB_STUB
Stefan Reinauer08670622009-06-30 15:17:49 +000081uses CONFIG_CROSS_COMPILE
Morgan Tsai1602dd52007-10-29 21:00:14 +000082uses CC
Stefan Reinauer9dd27bc2009-06-30 17:13:58 +000083uses HOSTCC
Stefan Reinauer08670622009-06-30 15:17:49 +000084uses CONFIG_OBJCOPY
Morgan Tsai1602dd52007-10-29 21:00:14 +000085uses CONFIG_CONSOLE_VGA
86uses CONFIG_USBDEBUG_DIRECT
87uses CONFIG_PCI_ROM_RUN
Stefan Reinauer08670622009-06-30 15:17:49 +000088uses CONFIG_HW_MEM_HOLE_SIZEK
89uses CONFIG_HW_MEM_HOLE_SIZE_AUTO_INC
90uses CONFIG_K8_HT_FREQ_1G_SUPPORT
Morgan Tsai1602dd52007-10-29 21:00:14 +000091
Stefan Reinauer08670622009-06-30 15:17:49 +000092uses CONFIG_HT_CHAIN_UNITID_BASE
93uses CONFIG_HT_CHAIN_END_UNITID_BASE
94uses CONFIG_SB_HT_CHAIN_ON_BUS0
95uses CONFIG_SB_HT_CHAIN_UNITID_OFFSET_ONLY
Morgan Tsai1602dd52007-10-29 21:00:14 +000096
Stefan Reinauer08670622009-06-30 15:17:49 +000097uses CONFIG_USE_DCACHE_RAM
98uses CONFIG_DCACHE_RAM_BASE
99uses CONFIG_DCACHE_RAM_SIZE
100uses CONFIG_DCACHE_RAM_GLOBAL_VAR_SIZE
Morgan Tsai1602dd52007-10-29 21:00:14 +0000101uses CONFIG_USE_INIT
102
Stefan Reinauer08670622009-06-30 15:17:49 +0000103uses CONFIG_SERIAL_CPU_INIT
Morgan Tsai1602dd52007-10-29 21:00:14 +0000104
Stefan Reinauer08670622009-06-30 15:17:49 +0000105uses CONFIG_ENABLE_APIC_EXT_ID
106uses CONFIG_APIC_ID_OFFSET
107uses CONFIG_LIFT_BSP_APIC_ID
Morgan Tsai1602dd52007-10-29 21:00:14 +0000108
109uses CONFIG_PCI_64BIT_PREF_MEM
110
111uses CONFIG_LB_MEM_TOPK
112
113uses CONFIG_AP_CODE_IN_CAR
114
Stefan Reinauer08670622009-06-30 15:17:49 +0000115uses CONFIG_MEM_TRAIN_SEQ
Morgan Tsai1602dd52007-10-29 21:00:14 +0000116
Stefan Reinauer08670622009-06-30 15:17:49 +0000117uses CONFIG_WAIT_BEFORE_CPUS_INIT
Morgan Tsai1602dd52007-10-29 21:00:14 +0000118
119uses CONFIG_USE_PRINTK_IN_CAR
120
121###
122### Build options
123###
124
125##
Stefan Reinauer08670622009-06-30 15:17:49 +0000126## CONFIG_ROM_SIZE is the size of boot ROM that this board will use.
Morgan Tsai1602dd52007-10-29 21:00:14 +0000127##
Stefan Reinauer08670622009-06-30 15:17:49 +0000128default CONFIG_ROM_SIZE=524288
129#default CONFIG_ROM_SIZE=0x100000
Morgan Tsai1602dd52007-10-29 21:00:14 +0000130
131##
Stefan Reinauer08670622009-06-30 15:17:49 +0000132## CONFIG_FALLBACK_SIZE is the amount of the ROM the complete fallback image will use
Morgan Tsai1602dd52007-10-29 21:00:14 +0000133##
Morgan Tsai1602dd52007-10-29 21:00:14 +0000134
135#FALLBACK: 256K-4K
Patrick Georgib339e102009-08-11 17:35:02 +0000136default CONFIG_FALLBACK_SIZE = CONFIG_ROM_IMAGE_SIZE
Morgan Tsai1602dd52007-10-29 21:00:14 +0000137#FAILOVER: 4K
Stefan Reinauer08670622009-06-30 15:17:49 +0000138default CONFIG_FAILOVER_SIZE=0x01000
Morgan Tsai1602dd52007-10-29 21:00:14 +0000139
140#more 1M for pgtbl
141default CONFIG_LB_MEM_TOPK=2048
142
143##
144## Build code for the fallback boot
145##
Stefan Reinauer08670622009-06-30 15:17:49 +0000146default CONFIG_HAVE_FALLBACK_BOOT=1
147default CONFIG_HAVE_FAILOVER_BOOT=1
Morgan Tsai1602dd52007-10-29 21:00:14 +0000148
149##
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000150## Build code to reset the motherboard from coreboot
Morgan Tsai1602dd52007-10-29 21:00:14 +0000151##
Stefan Reinauer08670622009-06-30 15:17:49 +0000152default CONFIG_HAVE_HARD_RESET=1
Morgan Tsai1602dd52007-10-29 21:00:14 +0000153
154##
155## Build code to export a programmable irq routing table
156##
Stefan Reinauer08670622009-06-30 15:17:49 +0000157default CONFIG_HAVE_PIRQ_TABLE=1
158default CONFIG_IRQ_SLOT_COUNT=11
Morgan Tsai1602dd52007-10-29 21:00:14 +0000159
160##
161## Build code to export an x86 MP table
162## Useful for specifying IRQ routing values
163##
Stefan Reinauer08670622009-06-30 15:17:49 +0000164default CONFIG_HAVE_MP_TABLE=0
Morgan Tsai1602dd52007-10-29 21:00:14 +0000165
166## ACPI tables will be included
Stefan Reinauer08670622009-06-30 15:17:49 +0000167default CONFIG_HAVE_ACPI_TABLES=0
Morgan Tsai1602dd52007-10-29 21:00:14 +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
Morgan Tsai1602dd52007-10-29 21:00:14 +0000173
174##
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000175## Move the default coreboot cmos range off of AMD RTC registers
Morgan Tsai1602dd52007-10-29 21:00:14 +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
Morgan Tsai1602dd52007-10-29 21:00:14 +0000180
181##
182## Build code for SMP support
183## Only worry about 2 micro processors
184##
185default CONFIG_SMP=0
186default CONFIG_MAX_CPUS=2
187default CONFIG_MAX_PHYSICAL_CPUS=1
188default CONFIG_LOGICAL_CPUS=1
189
Stefan Reinauer08670622009-06-30 15:17:49 +0000190#default CONFIG_SERIAL_CPU_INIT=0
Morgan Tsai1602dd52007-10-29 21:00:14 +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
Morgan Tsai1602dd52007-10-29 21:00:14 +0000195
Morgan Tsai218c2652007-11-02 16:09:58 +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.
Morgan Tsai1602dd52007-10-29 21:00:14 +0000197#2G
Stefan Reinauer08670622009-06-30 15:17:49 +0000198#default CONFIG_HW_MEM_HOLE_SIZEK=0x200000
Morgan Tsai1602dd52007-10-29 21:00:14 +0000199#1G
Stefan Reinauer08670622009-06-30 15:17:49 +0000200default CONFIG_HW_MEM_HOLE_SIZEK=0x100000
Morgan Tsai1602dd52007-10-29 21:00:14 +0000201#512M
Stefan Reinauer08670622009-06-30 15:17:49 +0000202#default CONFIG_HW_MEM_HOLE_SIZEK=0x80000
Morgan Tsai1602dd52007-10-29 21:00:14 +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
Morgan Tsai1602dd52007-10-29 21:00:14 +0000206
207#Opteron K8 1G HT Support
Stefan Reinauer08670622009-06-30 15:17:49 +0000208default CONFIG_K8_HT_FREQ_1G_SUPPORT=1
Morgan Tsai1602dd52007-10-29 21:00:14 +0000209
210#VGA Console
211default CONFIG_CONSOLE_VGA=1
212default CONFIG_PCI_ROM_RUN=1
213
214#default CONFIG_USBDEBUG_DIRECT=0
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
Morgan Tsai1602dd52007-10-29 21:00:14 +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
Morgan Tsai1602dd52007-10-29 21:00:14 +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
Morgan Tsai1602dd52007-10-29 21:00:14 +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
Morgan Tsai1602dd52007-10-29 21:00:14 +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
Morgan Tsai1602dd52007-10-29 21:00:14 +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=2
242default CONFIG_WAIT_BEFORE_CPUS_INIT=0
Morgan Tsai1602dd52007-10-29 21:00:14 +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="ga_2761gxdk"
253default CONFIG_MAINBOARD_VENDOR="GIGABYTE"
254default CONFIG_MAINBOARD_PCI_SUBSYSTEM_VENDOR_ID=0x1039
255default CONFIG_MAINBOARD_PCI_SUBSYSTEM_DEVICE_ID=0x1234
Morgan Tsai1602dd52007-10-29 21:00:14 +0000256
257###
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000258### coreboot layout values
Morgan Tsai1602dd52007-10-29 21:00:14 +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
Morgan Tsai1602dd52007-10-29 21:00:14 +0000263
264##
265## Use a small 8K stack
266##
Stefan Reinauer08670622009-06-30 15:17:49 +0000267default CONFIG_STACK_SIZE=0x2000
Morgan Tsai1602dd52007-10-29 21:00:14 +0000268
269##
270## Use a small 32K heap
271##
Stefan Reinauer08670622009-06-30 15:17:49 +0000272default CONFIG_HEAP_SIZE=0x8000
Morgan Tsai1602dd52007-10-29 21:00:14 +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 )
Morgan Tsai1602dd52007-10-29 21:00:14 +0000278
279##
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000280## Coreboot C code runs at this location in RAM
Morgan Tsai1602dd52007-10-29 21:00:14 +0000281##
Stefan Reinauer08670622009-06-30 15:17:49 +0000282default CONFIG_RAMBASE=0x00100000
Morgan Tsai1602dd52007-10-29 21:00:14 +0000283
284##
285## Load the payload from the ROM
286##
287default CONFIG_ROM_PAYLOAD = 1
288
289#default CONFIG_COMPRESSED_PAYLOAD_NRV2B = 1
290
291###
292### Defaults of options that you may want to override in the target config file
Morgan Tsai218c2652007-11-02 16:09:58 +0000293###
Morgan Tsai1602dd52007-10-29 21:00:14 +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"
Morgan Tsai1602dd52007-10-29 21:00:14 +0000300
301##
302## Disable the gdb stub by default
Morgan Tsai218c2652007-11-02 16:09:58 +0000303##
Morgan Tsai1602dd52007-10-29 21:00:14 +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
Morgan Tsai1602dd52007-10-29 21:00:14 +0000323
324# Select the serial console base port
Stefan Reinauer08670622009-06-30 15:17:49 +0000325default CONFIG_TTYS0_BASE=0x3f8
Morgan Tsai1602dd52007-10-29 21:00:14 +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
Morgan Tsai1602dd52007-10-29 21:00:14 +0000330
331##
Stefan Reinauerf8ee1802008-01-18 15:08:58 +0000332### Select the coreboot loglevel
Morgan Tsai1602dd52007-10-29 21:00:14 +0000333##
Morgan Tsai218c2652007-11-02 16:09:58 +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
Morgan Tsai218c2652007-11-02 16:09:58 +0000342## SPEW 9 Way too many details
Morgan Tsai1602dd52007-10-29 21:00:14 +0000343
344## Request this level of debugging output
Stefan Reinauer08670622009-06-30 15:17:49 +0000345default CONFIG_DEFAULT_CONSOLE_LOGLEVEL=8
Morgan Tsai1602dd52007-10-29 21:00:14 +0000346## At a maximum only compile in this level of debugging
Stefan Reinauer08670622009-06-30 15:17:49 +0000347default CONFIG_MAXIMUM_CONSOLE_LOGLEVEL=8
Morgan Tsai1602dd52007-10-29 21:00:14 +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"
Morgan Tsai1602dd52007-10-29 21:00:14 +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
Morgan Tsai1602dd52007-10-29 21:00:14 +0000359end