Apply the following commit to all AMD boards.
commit 935850e082
Author: Stefan Reinauer <reinauer@chromium.org>
Date: Mon May 6 16:16:03 2013 -0700
asrock/e350m1: reduce default stack size
The stack used on the ASRock E350M1 is significantly less than
what we currently set (64k per core). In fact, we use about half
of the default stack size (4k) on core 0 and even less on non
BSP cores [1]:
$ grep stack coreboot_without_patch_but_monotonic_timer.log
CPU1: stack_base 002a0000, stack_end 002afff8
CPU1: stack: 002a0000 - 002b0000, lowest used address 002afda8, stack used: 600 bytes
CPU0: stack: 002b0000 - 002c0000, lowest used address 002bf75c, stack used: 2212 bytes
[…]
Reviewed-on: http://review.coreboot.org/3209
Please note that AGESA seems to define bigger stack sizes. But
these seem to be too much too.
$ git grep STACK_SIZE src/vendorcode/amd
[…]
src/vendorcode/amd/agesa/f14/Proc/CPU/Family/0x14/cpuF14CacheDefaults.c:#define BSP_STACK_SIZE 16384
src/vendorcode/amd/agesa/f14/Proc/CPU/Family/0x14/cpuF14CacheDefaults.c:#define CORE0_STACK_SIZE 16384
src/vendorcode/amd/agesa/f14/Proc/CPU/Family/0x14/cpuF14CacheDefaults.c:#define CORE1_STACK_SIZE 4096
src/vendorcode/amd/agesa/f14/Proc/CPU/Family/0x14/cpuF14CacheDefaults.c: BSP_STACK_SIZE,
src/vendorcode/amd/agesa/f14/Proc/CPU/Family/0x14/cpuF14CacheDefaults.c: CORE0_STACK_SIZE,
src/vendorcode/amd/agesa/f14/Proc/CPU/Family/0x14/cpuF14CacheDefaults.c: CORE1_STACK_SIZE,
[…]
The following command was used to create the patch.
$ git grep -l STACK_SIZE src/mainboard/ | xargs sed -i '/STACK_SIZE/,+3d'
Change-Id: I36b95b7a6f190b64d0639fc036ce2fb0253f3fa1
Signed-off-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-on: http://review.coreboot.org/3217
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
119 lines
2.3 KiB
Plaintext
119 lines
2.3 KiB
Plaintext
#
|
|
# This file is part of the coreboot project.
|
|
#
|
|
# Copyright (C) 2011 - 2012 Advanced Micro Devices, Inc.
|
|
#
|
|
# 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; version 2 of the License.
|
|
#
|
|
# 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
|
|
#
|
|
|
|
if BOARD_SUPERMICRO_H8SCM
|
|
|
|
config BOARD_SPECIFIC_OPTIONS
|
|
def_bool y
|
|
select ARCH_X86
|
|
select CPU_AMD_AGESA_FAMILY15
|
|
select CPU_AMD_SOCKET_C32
|
|
select NORTHBRIDGE_AMD_AGESA_FAMILY15_ROOT_COMPLEX
|
|
select NORTHBRIDGE_AMD_AGESA_FAMILY15
|
|
select NORTHBRIDGE_AMD_CIMX_RD890
|
|
select SOUTHBRIDGE_AMD_CIMX_SB700
|
|
select SUPERIO_WINBOND_W83627DHG
|
|
select SUPERIO_NUVOTON_WPCM450
|
|
select DRIVERS_I2C_W83795
|
|
select HAVE_OPTION_TABLE
|
|
select HAVE_PIRQ_TABLE
|
|
select HAVE_MP_TABLE
|
|
select HAVE_HARD_RESET
|
|
select SERIAL_CPU_INIT
|
|
select HAVE_ACPI_TABLES
|
|
select BOARD_ROMSIZE_KB_4096
|
|
|
|
config MAINBOARD_DIR
|
|
string
|
|
default supermicro/h8scm
|
|
|
|
config MAINBOARD_PART_NUMBER
|
|
string
|
|
default "H8SCM"
|
|
|
|
config HW_MEM_HOLE_SIZEK
|
|
hex
|
|
default 0x200000
|
|
|
|
config MAX_CPUS
|
|
int
|
|
default 64
|
|
|
|
config MAX_PHYSICAL_CPUS
|
|
int
|
|
default 16
|
|
|
|
config CPU_ADDR_BITS
|
|
int
|
|
default 36 # TODO: Set it conservatively to match both fam10 & 15
|
|
|
|
config HW_MEM_HOLE_SIZE_AUTO_INC
|
|
bool
|
|
default n
|
|
|
|
config MEM_TRAIN_SEQ
|
|
int
|
|
default 2
|
|
|
|
config IRQ_SLOT_COUNT
|
|
int
|
|
default 11
|
|
|
|
config RAMTOP
|
|
hex
|
|
default 0x1000000
|
|
|
|
config HEAP_SIZE
|
|
hex
|
|
default 0xc0000
|
|
|
|
config RAMBASE
|
|
hex
|
|
default 0x200000
|
|
|
|
config SIO_PORT
|
|
hex
|
|
default 0x164E
|
|
help
|
|
though UARTs are on the NUVOTON BMC, port 0x164E
|
|
PS2 keyboard and mouse are on SUPERIO_WINBOND_W83627DHG, port 0x2E
|
|
|
|
config DRIVERS_PS2_KEYBOARD
|
|
bool
|
|
default y
|
|
|
|
config WARNINGS_ARE_ERRORS
|
|
bool
|
|
default n
|
|
|
|
config ONBOARD_VGA_IS_PRIMARY
|
|
bool
|
|
default y
|
|
|
|
config VGA_BIOS
|
|
bool
|
|
default n
|
|
|
|
config VGA_BIOS_ID
|
|
string
|
|
depends on VGA_BIOS
|
|
default "102b,0532"
|
|
|
|
endif # BOARD_SUPERMICRO_H8SCM_FAM15
|