diff options
author | Martin Roth <martinroth@chromium.org> | 2021-06-25 15:09:43 -0600 |
---|---|---|
committer | Martin Roth <martinroth@google.com> | 2021-06-28 15:57:26 +0000 |
commit | fe58977e6fe2501e2ae50ce9a6bd1790e47eadb8 (patch) | |
tree | 8df72465a225c9548c21032104a7d700bbf2b6d3 /src | |
parent | 5a3b07d168e574448db3985288551bbb458d31bb (diff) |
soc/amd/cezanne: Add call to mb to configure eSPI requirements
When initializing espi early, there may be mainboard requirements to
configure the bus properly. This allows the mainboard to do that.
BUG=192100564
TEST=Build along with next patch, eSPI works on guybrush
Change-Id: Icc02877a09b8f8ed20fd1b04f3cee0509f1a85c5
Signed-off-by: Martin Roth <martinroth@chromium.org>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/55863
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nikolai Vyssotski <nikolai.vyssotski@amd.corp-partner.google.com>
Reviewed-by: Jason Glenesk <jason.glenesk@gmail.com>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
Diffstat (limited to 'src')
-rw-r--r-- | src/soc/amd/cezanne/early_fch.c | 1 | ||||
-rw-r--r-- | src/soc/amd/common/block/include/amdblocks/espi.h | 3 | ||||
-rw-r--r-- | src/soc/amd/common/block/lpc/espi_util.c | 4 |
3 files changed, 8 insertions, 0 deletions
diff --git a/src/soc/amd/cezanne/early_fch.c b/src/soc/amd/cezanne/early_fch.c index d76afc8174..5d268bcbab 100644 --- a/src/soc/amd/cezanne/early_fch.c +++ b/src/soc/amd/cezanne/early_fch.c @@ -35,6 +35,7 @@ static void reset_i2c_peripherals(void) /* Initialize port80h routing early if needed */ void configure_port80_routing_early(void) { + mb_set_up_early_espi(); if (CONFIG(SOC_AMD_COMMON_BLOCK_USE_ESPI)) espi_setup(); } diff --git a/src/soc/amd/common/block/include/amdblocks/espi.h b/src/soc/amd/common/block/include/amdblocks/espi.h index 5d758354c5..9a563f9e36 100644 --- a/src/soc/amd/common/block/include/amdblocks/espi.h +++ b/src/soc/amd/common/block/include/amdblocks/espi.h @@ -128,4 +128,7 @@ void espi_update_static_bar(uintptr_t bar); */ int espi_setup(void); +/* Run mainboard configuration needed to set up eSPI */ +void mb_set_up_early_espi(void); + #endif /* AMD_BLOCK_ESPI_H */ diff --git a/src/soc/amd/common/block/lpc/espi_util.c b/src/soc/amd/common/block/lpc/espi_util.c index b724408022..e698c8cc48 100644 --- a/src/soc/amd/common/block/lpc/espi_util.c +++ b/src/soc/amd/common/block/lpc/espi_util.c @@ -17,6 +17,10 @@ void espi_update_static_bar(uintptr_t bar) espi_bar = bar; } +__weak void mb_set_up_early_espi(void) +{ +} + static uintptr_t espi_get_bar(void) { if (ENV_X86 && !espi_bar) |