From 8c42424ec1669036fb4a7be4eb7ec0915bd6966c Mon Sep 17 00:00:00 2001 From: Ricardo Ribalda Delgado Date: Wed, 21 Dec 2016 20:57:13 +0100 Subject: amd/hudson/agesa: Fix position of hudson_fwm AMDFWTOOL calculates the location of the amdfw based on the CONFIG_ROM_SIZE. If HUDSON_FWM_POSITION does not match that location the resulting rom does not boot. This patch forces the position of HUDSON_FWM_POSITION to be the position calculated by amdfwrom. Tested on a Bettong derivative with a 16MiB flash. Change-Id: I3ce69f77174327c18ff97e551c0665c9f633991e Signed-off-by: Ricardo Ribalda Delgado Reviewed-on: https://review.coreboot.org/17934 Tested-by: build bot (Jenkins) Reviewed-by: Marshall Dawson --- src/southbridge/amd/agesa/hudson/Kconfig | 23 ----------------------- src/southbridge/amd/agesa/hudson/Makefile.inc | 3 +-- 2 files changed, 1 insertion(+), 25 deletions(-) (limited to 'src/southbridge/amd') diff --git a/src/southbridge/amd/agesa/hudson/Kconfig b/src/southbridge/amd/agesa/hudson/Kconfig index eed83ae53f..91ebe036a9 100644 --- a/src/southbridge/amd/agesa/hudson/Kconfig +++ b/src/southbridge/amd/agesa/hudson/Kconfig @@ -101,29 +101,6 @@ config HUDSON_FWM default y if HUDSON_XHCI_FWM || HUDSON_IMC_FWM || HUDSON_GEC_FWM default n -if HUDSON_FWM - -config HUDSON_FWM_POSITION - hex "Hudson Firmware ROM Position" - default 0xFFF20000 if BOARD_ROMSIZE_KB_1024 - default 0xFFE20000 if BOARD_ROMSIZE_KB_2048 - default 0xFFC20000 if BOARD_ROMSIZE_KB_4096 - default 0xFF820000 if BOARD_ROMSIZE_KB_8192 - default 0xFF020000 if BOARD_ROMSIZE_KB_16384 - help - Hudson requires the firmware MUST be located at - a specific address (ROM start address + 0x20000), otherwise - xhci host Controller can not find or load the xhci firmware. - - The firmware start address is dependent on the ROM chip size. - The default offset is 0x20000 from the ROM start address, namely - 0xFFF20000 if flash chip size is 1M - 0xFFE20000 if flash chip size is 2M - 0xFFC20000 if flash chip size is 4M - 0xFF820000 if flash chip size is 8M - 0xFF020000 if flash chip size is 16M -endif # HUDSON_FWM - config HUDSON_SATA_MODE int "SATA Mode" default 0 diff --git a/src/southbridge/amd/agesa/hudson/Makefile.inc b/src/southbridge/amd/agesa/hudson/Makefile.inc index 2e8b13be6b..7595889a2f 100644 --- a/src/southbridge/amd/agesa/hudson/Makefile.inc +++ b/src/southbridge/amd/agesa/hudson/Makefile.inc @@ -35,8 +35,7 @@ ramstage-$(CONFIG_HAVE_SMI_HANDLER) += smi.c smi_util.c # +-----------+---------------+----------------+------------+ # EC ROM should be 64K aligned. -HUDSON_FWM_POS_CALC=$(call int-add, $(call int-subtract, 0xffffffff $(call int-multiply, $(CONFIG_COREBOOT_ROMSIZE_KB) 1024)) 0x20000 1) -HUDSON_FWM_POSITION=$(shell printf %u $(CONFIG_HUDSON_FWM_POSITION)) +HUDSON_FWM_POSITION=$(call int-add, $(call int-subtract, 0xffffffff $(CONFIG_ROM_SIZE)) 0x20000 1) ifdef CONFIG_HUDSON_AHCI_ROM stripped_ahci_rom_id = $(call strip_quotes,$(CONFIG_AHCI_ROM_ID)) -- cgit v1.2.3