summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarshall Dawson <marshalldawson3rd@gmail.com>2019-11-25 11:15:35 -0700
committerPatrick Georgi <pgeorgi@google.com>2019-12-11 11:41:04 +0000
commite1988f5e0a3c9f6767cb5c37ea2910bf4b2c99f6 (patch)
tree9627df26e1500449d4ddb0bf7b2bbe906ff62aa5
parent7987c1cb6f2140d44eb0aa1a3642ac2a114c20ad (diff)
downloadcoreboot-e1988f5e0a3c9f6767cb5c37ea2910bf4b2c99f6.tar.xz
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>
-rw-r--r--src/mainboard/amd/padmelon/devicetree.cb2
-rw-r--r--src/soc/amd/stoneyridge/Kconfig28
-rw-r--r--src/soc/amd/stoneyridge/Makefile.inc4
-rw-r--r--src/soc/amd/stoneyridge/chip.h5
-rw-r--r--src/vendorcode/amd/pi/Kconfig2
5 files changed, 25 insertions, 16 deletions
diff --git a/src/mainboard/amd/padmelon/devicetree.cb b/src/mainboard/amd/padmelon/devicetree.cb
index 9baee2f2cf..fa83d106ca 100644
--- a/src/mainboard/amd/padmelon/devicetree.cb
+++ b/src/mainboard/amd/padmelon/devicetree.cb
@@ -16,7 +16,7 @@ chip soc/amd/stoneyridge
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
#else
{ {0xA0, 0x00} }, // socket 0 - Channel 0, slot 0
diff --git a/src/soc/amd/stoneyridge/Kconfig b/src/soc/amd/stoneyridge/Kconfig
index 0a3e77d4e0..d1dd4334de 100644
--- a/src/soc/amd/stoneyridge/Kconfig
+++ b/src/soc/amd/stoneyridge/Kconfig
@@ -34,15 +34,14 @@ config SOC_AMD_MERLINFALCON
help
AMD Merlin Falcon FP4 support
-config HAVE_MERLINFALCON_BINARIES
- depends on AMD_APU_MERLINFALCON
- bool "Merlinfalcon binaries are present"
- default n
+config SOC_AMD_PRAIRIEFALCON
+ bool
+ select AMD_APU_PRAIRIEFALCON
+ select AMD_APU_PKG_FP4
help
- This config option will be removed once the binaries are merged
- to the blobs repo. See 33615.
+ AMD Prairie Falcon FP4 support
-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
def_bool y
@@ -88,10 +87,15 @@ config AMD_APU_STONEYRIDGE
help
AMD Stoney Ridge APU
+config AMD_APU_PRAIRIEFALCON
+ bool
+ help
+ AMD Embedded Prairie Falcon APU
+
config AMD_APU_MERLINFALCON
bool
help
- AMD Merlin Falcon APU
+ AMD Embedded Merlin Falcon APU
config AMD_APU_PKG_FP4
bool
@@ -176,7 +180,8 @@ config VGA_BIOS_FILE
string
default "" if !USE_AMD_BLOBS
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
bool
@@ -227,7 +232,8 @@ config AMD_PUBKEY_FILE
string "AMD public Key"
default "" if !USE_AMD_BLOBS
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
int "SATA Mode"
@@ -433,4 +439,4 @@ config MAINBOARD_POWER_RESTORE
return to S0. Otherwise the system will remain in S5 once power
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
diff --git a/src/soc/amd/stoneyridge/Makefile.inc b/src/soc/amd/stoneyridge/Makefile.inc
index 52c54d26eb..ee4560d085 100644
--- a/src/soc/amd/stoneyridge/Makefile.inc
+++ b/src/soc/amd/stoneyridge/Makefile.inc
@@ -139,8 +139,12 @@ else
ifeq ($(CONFIG_AMD_APU_MERLINFALCON),y)
FIRMWARE_TYPE=CZ
else
+ifeq ($(CONFIG_AMD_APU_PRAIRIEFALCON),y)
+FIRMWARE_TYPE=ST
+else
$(error soc/amd/stoneyridge: Unusable FIRMWARE_TYPE)
+endif # CONFIG_AMD_APU_PRAIRIEFALCON
endif # CONFIG_AMD_APU_MERLINFALCON
endif # CONFIG_AMD_APU_STONEYRIDGE
diff --git a/src/soc/amd/stoneyridge/chip.h b/src/soc/amd/stoneyridge/chip.h
index 00b675cbb0..fedb3e9cd0 100644
--- a/src/soc/amd/stoneyridge/chip.h
+++ b/src/soc/amd/stoneyridge/chip.h
@@ -23,12 +23,11 @@
#include <soc/i2c.h>
#include <arch/acpi_device.h>
-/* Merlin Falcon supports 2 channels, Prairie Falcon only 1 (channel B) */
#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_DIMMS_PER_CH 2
-#else
+#else /* AMD_APU_STONEYRIDGE || AMD_APU_PRAIRIEFALCON */
#define MAX_DRAM_CH 1
#define MAX_DIMMS_PER_CH 2
#endif
diff --git a/src/vendorcode/amd/pi/Kconfig b/src/vendorcode/amd/pi/Kconfig
index acf84974af..9ac391386f 100644
--- a/src/vendorcode/amd/pi/Kconfig
+++ b/src/vendorcode/amd/pi/Kconfig
@@ -44,8 +44,8 @@ config AGESA_BINARY_PI_FILE
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/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/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_FT4 && USE_AMD_BLOBS
default "3rdparty/blobs/pi/amd/00660F01/FP4/AGESA.bin" if CPU_AMD_PI_00660F01