amd/hudson/pi: 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: Id2ee96ee076293d48ade84fd6e976ca994dcf491 Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com> Reviewed-on: https://review.coreboot.org/17925 Tested-by: build bot (Jenkins) Reviewed-by: Marshall Dawson <marshalldawson3rd@gmail.com>
This commit is contained in:
parent
df1ff231e4
commit
baae959a63
|
@ -103,29 +103,6 @@ config HUDSON_FWM
|
|||
default y if HUDSON_XHCI_FWM || HUDSON_IMC_FWM || HUDSON_GEC_FWM || HUDSON_PSP
|
||||
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 AMD_PUBKEY_FILE
|
||||
depends on HUDSON_PSP
|
||||
string "AMD public Key"
|
||||
|
|
|
@ -67,8 +67,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)
|
||||
|
||||
##
|
||||
ifeq ($(CONFIG_HUDSON_PSP), y)
|
||||
|
|
Loading…
Reference in New Issue