diff options
Diffstat (limited to 'src/soc/amd')
-rw-r--r-- | src/soc/amd/common/block/include/amdblocks/stb.h | 1 | ||||
-rw-r--r-- | src/soc/amd/common/block/stb/Kconfig | 6 | ||||
-rw-r--r-- | src/soc/amd/common/block/stb/stb.c | 6 |
3 files changed, 13 insertions, 0 deletions
diff --git a/src/soc/amd/common/block/include/amdblocks/stb.h b/src/soc/amd/common/block/include/amdblocks/stb.h index 51b01948f8c8..c8851f89a33b 100644 --- a/src/soc/amd/common/block/include/amdblocks/stb.h +++ b/src/soc/amd/common/block/include/amdblocks/stb.h @@ -7,6 +7,7 @@ #define AMD_STB_PMI_0 0x30600 +#define AMD_STB_COREBOOT_POST_PREFIX 0xBA000000 #define AMD_STB_COREBOOT_MARKER 0xBAADF00D struct stb_entry_struct { diff --git a/src/soc/amd/common/block/stb/Kconfig b/src/soc/amd/common/block/stb/Kconfig index 8935e92556a6..fe2b5b7a1a37 100644 --- a/src/soc/amd/common/block/stb/Kconfig +++ b/src/soc/amd/common/block/stb/Kconfig @@ -14,4 +14,10 @@ config WRITE_STB_BUFFER_TO_CONSOLE points through the boot process. Note that this will prevent the entries from being stored if the Spill-to-DRAM feature is enabled. +config ADD_POSTCODES_TO_STB + bool "Add coreboot postcodes to STB" + default y + help + Add coreboot's postcodes to the smart trace buffer + endif diff --git a/src/soc/amd/common/block/stb/stb.c b/src/soc/amd/common/block/stb/stb.c index 074a4ed7148b..0cea5c3d6758 100644 --- a/src/soc/amd/common/block/stb/stb.c +++ b/src/soc/amd/common/block/stb/stb.c @@ -18,6 +18,12 @@ static uint32_t stb_read32(uint32_t reg) return smn_read32(STB_CFG_SMN_ADDR + reg); } +void soc_post_code(uint8_t value) +{ + if (CONFIG(ADD_POSTCODES_TO_STB)) + stb_write32(AMD_STB_PMI_0, AMD_STB_COREBOOT_POST_PREFIX | value); +} + void write_stb_to_console(void) { int i; |