soc/amd/stoneyridge|mb: Add Kconfig symbol for Prairie Falcon

The stoneyridge code inferred that if Merlin Falcon was built but no
Merlin Falcon binaries were present, the intent must be Prairie Falcon.
The two falcons are Embedded variants, and Prairie Falcon falls within
Family 15h Models 70h-7Fh.

Add a Prairie Falcon symbol that can be used explicitely.  Drop
HAVE_MERLINFALCON_BINARIES.

Change-Id: I0d3a1bc302760c18c8fe3d57c955e2bb3bd8153a
Signed-off-by: Marshall Dawson <marshalldawson3rd@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/37223
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 11:15:35 -07:00 committed by Patrick Georgi
parent 7987c1cb6f
commit e1988f5e0a
5 changed files with 25 additions and 16 deletions

View File

@ -16,7 +16,7 @@ chip soc/amd/stoneyridge
register "spd_addr_lookup" = " register "spd_addr_lookup" = "
{ {
#if CONFIG(HAVE_MERLINFALCON_BINARIES) #if CONFIG(AMD_APU_MERLINFALCON)
{ {0xA0, 0x00}, {0xA4, 0x00} }, // socket 0 - Channel 0 & 1, slot 0 { {0xA0, 0x00}, {0xA4, 0x00} }, // socket 0 - Channel 0 & 1, slot 0
#else #else
{ {0xA0, 0x00} }, // socket 0 - Channel 0, slot 0 { {0xA0, 0x00} }, // socket 0 - Channel 0, slot 0

View File

@ -34,15 +34,14 @@ config SOC_AMD_MERLINFALCON
help help
AMD Merlin Falcon FP4 support AMD Merlin Falcon FP4 support
config HAVE_MERLINFALCON_BINARIES config SOC_AMD_PRAIRIEFALCON
depends on AMD_APU_MERLINFALCON bool
bool "Merlinfalcon binaries are present" select AMD_APU_PRAIRIEFALCON
default n select AMD_APU_PKG_FP4
help help
This config option will be removed once the binaries are merged AMD Prairie Falcon FP4 support
to the blobs repo. See 33615.
if SOC_AMD_STONEYRIDGE_FP4 || SOC_AMD_STONEYRIDGE_FT4 || SOC_AMD_MERLINFALCON if SOC_AMD_STONEYRIDGE_FP4 || SOC_AMD_STONEYRIDGE_FT4 || SOC_AMD_MERLINFALCON || SOC_AMD_PRAIRIEFALCON
config CPU_SPECIFIC_OPTIONS config CPU_SPECIFIC_OPTIONS
def_bool y def_bool y
@ -88,10 +87,15 @@ config AMD_APU_STONEYRIDGE
help help
AMD Stoney Ridge APU AMD Stoney Ridge APU
config AMD_APU_PRAIRIEFALCON
bool
help
AMD Embedded Prairie Falcon APU
config AMD_APU_MERLINFALCON config AMD_APU_MERLINFALCON
bool bool
help help
AMD Merlin Falcon APU AMD Embedded Merlin Falcon APU
config AMD_APU_PKG_FP4 config AMD_APU_PKG_FP4
bool bool
@ -176,7 +180,8 @@ config VGA_BIOS_FILE
string string
default "" if !USE_AMD_BLOBS default "" if !USE_AMD_BLOBS
default "3rdparty/amd_blobs/stoneyridge/CarrizoGenericVbios.bin" if AMD_APU_MERLINFALCON default "3rdparty/amd_blobs/stoneyridge/CarrizoGenericVbios.bin" if AMD_APU_MERLINFALCON
default "3rdparty/amd_blobs/stoneyridge/StoneyGenericVbios.bin" default "3rdparty/amd_blobs/stoneyridge/StoneyGenericVbios.bin" if AMD_APU_PRAIRIEFALCON
default "3rdparty/amd_blobs/stoneyridge/StoneyGenericVbios.bin" if AMD_APU_STONEYRIDGE
config S3_VGA_ROM_RUN config S3_VGA_ROM_RUN
bool bool
@ -227,7 +232,8 @@ config AMD_PUBKEY_FILE
string "AMD public Key" string "AMD public Key"
default "" if !USE_AMD_BLOBS default "" if !USE_AMD_BLOBS
default "3rdparty/amd_blobs/stoneyridge/PSP/CZ/AmdPubKeyCZ.bin" if AMD_APU_MERLINFALCON default "3rdparty/amd_blobs/stoneyridge/PSP/CZ/AmdPubKeyCZ.bin" if AMD_APU_MERLINFALCON
default "3rdparty/amd_blobs/stoneyridge/PSP/ST/AmdPubKeyST.bin" default "3rdparty/amd_blobs/stoneyridge/PSP/ST/AmdPubKeyST.bin" if AMD_APU_PRAIRIEFALCON
default "3rdparty/amd_blobs/stoneyridge/PSP/ST/AmdPubKeyST.bin" if AMD_APU_STONEYRIDGE
config STONEYRIDGE_SATA_MODE config STONEYRIDGE_SATA_MODE
int "SATA Mode" int "SATA Mode"
@ -433,4 +439,4 @@ config MAINBOARD_POWER_RESTORE
return to S0. Otherwise the system will remain in S5 once power return to S0. Otherwise the system will remain in S5 once power
is restored. is restored.
endif # SOC_AMD_STONEYRIDGE_FP4 || SOC_AMD_STONEYRIDGE_FT4 || SOC_AMD_MERLINFALCON endif # SOC_AMD_STONEYRIDGE_FP4 || SOC_AMD_STONEYRIDGE_FT4 || SOC_AMD_MERLINFALCON || SOC_AMD_PRAIRIEFALCON

View File

@ -139,8 +139,12 @@ else
ifeq ($(CONFIG_AMD_APU_MERLINFALCON),y) ifeq ($(CONFIG_AMD_APU_MERLINFALCON),y)
FIRMWARE_TYPE=CZ FIRMWARE_TYPE=CZ
else else
ifeq ($(CONFIG_AMD_APU_PRAIRIEFALCON),y)
FIRMWARE_TYPE=ST
else
$(error soc/amd/stoneyridge: Unusable FIRMWARE_TYPE) $(error soc/amd/stoneyridge: Unusable FIRMWARE_TYPE)
endif # CONFIG_AMD_APU_PRAIRIEFALCON
endif # CONFIG_AMD_APU_MERLINFALCON endif # CONFIG_AMD_APU_MERLINFALCON
endif # CONFIG_AMD_APU_STONEYRIDGE endif # CONFIG_AMD_APU_STONEYRIDGE

View File

@ -23,12 +23,11 @@
#include <soc/i2c.h> #include <soc/i2c.h>
#include <arch/acpi_device.h> #include <arch/acpi_device.h>
/* Merlin Falcon supports 2 channels, Prairie Falcon only 1 (channel B) */
#define MAX_NODES 1 #define MAX_NODES 1
#if CONFIG(SOC_AMD_MERLINFALCON) && CONFIG(HAVE_MERLINFALCON_BINARIES) #if CONFIG(AMD_APU_MERLINFALCON)
#define MAX_DRAM_CH 2 #define MAX_DRAM_CH 2
#define MAX_DIMMS_PER_CH 2 #define MAX_DIMMS_PER_CH 2
#else #else /* AMD_APU_STONEYRIDGE || AMD_APU_PRAIRIEFALCON */
#define MAX_DRAM_CH 1 #define MAX_DRAM_CH 1
#define MAX_DIMMS_PER_CH 2 #define MAX_DIMMS_PER_CH 2
#endif #endif

View File

@ -44,8 +44,8 @@ config AGESA_BINARY_PI_FILE
string "AGESA PI binary file name" string "AGESA PI binary file name"
default "3rdparty/blobs/pi/amd/00630F01/FP3/AGESA.bin" if CPU_AMD_PI_00630F01 default "3rdparty/blobs/pi/amd/00630F01/FP3/AGESA.bin" if CPU_AMD_PI_00630F01
default "3rdparty/blobs/pi/amd/00730F01/FT3b/AGESA.bin" if CPU_AMD_PI_00730F01 default "3rdparty/blobs/pi/amd/00730F01/FT3b/AGESA.bin" if CPU_AMD_PI_00730F01
default "3rdparty/amd_blobs/stoneyridge/pi/ST/$(CONFIG_AMD_SOC_PACKAGE)/AGESA.bin" if SOC_AMD_MERLINFALCON && HAVE_MERLINFALCON_BINARIES && USE_AMD_BLOBS
default "3rdparty/amd_blobs/stoneyridge/pi/CZ/$(CONFIG_AMD_SOC_PACKAGE)/AGESA.bin" if SOC_AMD_MERLINFALCON && USE_AMD_BLOBS default "3rdparty/amd_blobs/stoneyridge/pi/CZ/$(CONFIG_AMD_SOC_PACKAGE)/AGESA.bin" if SOC_AMD_MERLINFALCON && USE_AMD_BLOBS
default "3rdparty/amd_blobs/stoneyridge/pi/ST/$(CONFIG_AMD_SOC_PACKAGE)/AGESA.bin" if SOC_AMD_PRAIRIEFALCON && USE_AMD_BLOBS
default "3rdparty/amd_blobs/stoneyridge/pi/ST/$(CONFIG_AMD_SOC_PACKAGE)/AGESA.bin" if SOC_AMD_STONEYRIDGE_FP4 && USE_AMD_BLOBS default "3rdparty/amd_blobs/stoneyridge/pi/ST/$(CONFIG_AMD_SOC_PACKAGE)/AGESA.bin" if SOC_AMD_STONEYRIDGE_FP4 && USE_AMD_BLOBS
default "3rdparty/amd_blobs/stoneyridge/pi/ST/$(CONFIG_AMD_SOC_PACKAGE)/AGESA.bin" if SOC_AMD_STONEYRIDGE_FT4 && USE_AMD_BLOBS default "3rdparty/amd_blobs/stoneyridge/pi/ST/$(CONFIG_AMD_SOC_PACKAGE)/AGESA.bin" if SOC_AMD_STONEYRIDGE_FT4 && USE_AMD_BLOBS
default "3rdparty/blobs/pi/amd/00660F01/FP4/AGESA.bin" if CPU_AMD_PI_00660F01 default "3rdparty/blobs/pi/amd/00660F01/FP4/AGESA.bin" if CPU_AMD_PI_00660F01