soc/amd/stoneyridge: Add selectable APU names

Add APU names of STONEYRIDGE and MERLINFALCON to Kconfig.  The existing
convention of SOC_AMD_PRODUCTNAME_PKG will be phased out.

Don't explicitely use the APU_STONEYRIDGE name yet when creating
default paths.  Prairie Falcon relies on the default setting, and this
will be addressed in a later change.

Change-Id: I2061b9b02f6e9def4e151fc38951ad8abb68df1d
Signed-off-by: Marshall Dawson <marshalldawson3rd@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/37219
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Richard Spiegel <richard.spiegel@silverbackltd.com>
This commit is contained in:
Marshall Dawson 2019-11-25 07:21:18 -07:00 committed by Patrick Georgi
parent 3ac0ab524b
commit 12294d0c48
2 changed files with 31 additions and 7 deletions

View File

@ -15,24 +15,27 @@
config SOC_AMD_STONEYRIDGE_FP4 config SOC_AMD_STONEYRIDGE_FP4
bool bool
select AMD_APU_STONEYRIDGE
select AMD_APU_PKG_FP4 select AMD_APU_PKG_FP4
help help
AMD Stoney Ridge FP4 support AMD Stoney Ridge FP4 support
config SOC_AMD_STONEYRIDGE_FT4 config SOC_AMD_STONEYRIDGE_FT4
bool bool
select AMD_APU_STONEYRIDGE
select AMD_APU_PKG_FT4 select AMD_APU_PKG_FT4
help help
AMD Stoney Ridge FT4 support AMD Stoney Ridge FT4 support
config SOC_AMD_MERLINFALCON config SOC_AMD_MERLINFALCON
bool bool
select AMD_APU_MERLINFALCON
select AMD_APU_PKG_FP4 select AMD_APU_PKG_FP4
help help
AMD Merlin Falcon FP4 support AMD Merlin Falcon FP4 support
config HAVE_MERLINFALCON_BINARIES config HAVE_MERLINFALCON_BINARIES
depends on SOC_AMD_MERLINFALCON depends on AMD_APU_MERLINFALCON
bool "Merlinfalcon binaries are present" bool "Merlinfalcon binaries are present"
default n default n
help help
@ -80,6 +83,16 @@ config CPU_SPECIFIC_OPTIONS
select SSE2 select SSE2
select RTC select RTC
config AMD_APU_STONEYRIDGE
bool
help
AMD Stoney Ridge APU
config AMD_APU_MERLINFALCON
bool
help
AMD Merlin Falcon APU
config AMD_APU_PKG_FP4 config AMD_APU_PKG_FP4
bool bool
help help
@ -153,7 +166,7 @@ config MMCONF_BUS_NUMBER
config VGA_BIOS_ID config VGA_BIOS_ID
string string
default "1002,9874" if SOC_AMD_MERLINFALCON default "1002,9874" if AMD_APU_MERLINFALCON
default "1002,98e4" default "1002,98e4"
help help
The default VGA BIOS PCI vendor/device ID should be set to the The default VGA BIOS PCI vendor/device ID should be set to the
@ -161,7 +174,7 @@ config VGA_BIOS_ID
config VGA_BIOS_FILE config VGA_BIOS_FILE
string string
default "3rdparty/blobs/soc/amd/merlinfalcon/VBIOS.bin" if SOC_AMD_MERLINFALCON && HAVE_MERLINFALCON_BINARIES default "3rdparty/blobs/soc/amd/merlinfalcon/VBIOS.bin" if AMD_APU_MERLINFALCON && HAVE_MERLINFALCON_BINARIES
default "3rdparty/blobs/soc/amd/stoneyridge/VBIOS.bin" default "3rdparty/blobs/soc/amd/stoneyridge/VBIOS.bin"
config S3_VGA_ROM_RUN config S3_VGA_ROM_RUN
@ -210,7 +223,7 @@ config STONEYRIDGE_GEC_FWM_FILE
config AMD_PUBKEY_FILE config AMD_PUBKEY_FILE
string "AMD public Key" string "AMD public Key"
default "3rdparty/blobs/soc/amd/merlinfalcon/PSP/AmdPubKeyCZ.bin" if SOC_AMD_MERLINFALCON && HAVE_MERLINFALCON_BINARIES default "3rdparty/blobs/soc/amd/merlinfalcon/PSP/AmdPubKeyCZ.bin" if AMD_APU_MERLINFALCON && HAVE_MERLINFALCON_BINARIES
default "3rdparty/blobs/soc/amd/stoneyridge/PSP/AmdPubKeyST.bin" default "3rdparty/blobs/soc/amd/stoneyridge/PSP/AmdPubKeyST.bin"
config STONEYRIDGE_SATA_MODE config STONEYRIDGE_SATA_MODE
@ -331,8 +344,7 @@ config USE_PSPSECUREOS
config SOC_AMD_PSP_SELECTABLE_SMU_FW config SOC_AMD_PSP_SELECTABLE_SMU_FW
bool bool
default n if SOC_AMD_MERLINFALCON default y if AMD_APU_STONEYRIDGE
default y
help help
Some ST implementations allow storing SMU firmware into cbfs and Some ST implementations allow storing SMU firmware into cbfs and
calling the PSP to load the blobs at the proper time. calling the PSP to load the blobs at the proper time.

View File

@ -137,11 +137,23 @@ STONEYRIDGE_FWM_POSITION=$(call int-add, \
### 0 ### 0
FIRMWARE_LOCATE=$(dir $(call strip_quotes, $(CONFIG_AMD_PUBKEY_FILE))) FIRMWARE_LOCATE=$(dir $(call strip_quotes, $(CONFIG_AMD_PUBKEY_FILE)))
ifeq ($(CONFIG_AMD_APU_STONEYRIDGE),y)
FIRMWARE_TYPE=ST
else
ifeq ($(CONFIG_AMD_APU_MERLINFALCON),y)
# If Merlin Falcon, but blobs aren't present, use Stoney Ridge instead
ifeq ($(CONFIG_HAVE_MERLINFALCON_BINARIES),y) ifeq ($(CONFIG_HAVE_MERLINFALCON_BINARIES),y)
FIRMWARE_TYPE=CZ FIRMWARE_TYPE=CZ
else else
FIRMWARE_TYPE=ST FIRMWARE_TYPE=ST
endif endif # CONFIG_HAVE_MERLINFALCON_BINARIES
else
$(error stoneyridge: Unknown FIRMWARE_TYPE)
endif # CONFIG_AMD_APU_MERLINFALCON
endif # CONFIG_AMD_APU_STONEYRIDGE
###5 ###5
PUBSIGNEDKEY_FILE=$(top)/$(FIRMWARE_LOCATE)/RtmPubSigned$(FIRMWARE_TYPE).key PUBSIGNEDKEY_FILE=$(top)/$(FIRMWARE_LOCATE)/RtmPubSigned$(FIRMWARE_TYPE).key