diff options
author | Rob Barnes <robbarnes@google.com> | 2021-11-09 13:21:28 -0700 |
---|---|---|
committer | Felix Held <felix-coreboot@felixheld.de> | 2021-11-18 23:33:15 +0000 |
commit | 188be6b27008c4ca400b004c2a82127383dd318e (patch) | |
tree | ccb735f798f6f7c5e7125123232604e6e122d819 /src/soc/amd/common | |
parent | eae7bf2327f7f1fab7c0177e5ee2116b624a92a9 (diff) |
mb/google/guybrush: Add variant_tpm_gpio_table
Add separate gpio table for TPM i2c and interrupt. Remove TPM gpios from
early_gpio_table. This allows for initializing TPM gpios separately from
other gpios.
BUG=b:200578885
BRANCH=None
TEST=Build and boot guybrush
Change-Id: I51d087087b166ec3bb3762bc1150b34db5b22f2f
Signed-off-by: Rob Barnes <robbarnes@google.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/59083
Reviewed-by: Karthik Ramasubramanian <kramasub@google.com>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src/soc/amd/common')
-rw-r--r-- | src/soc/amd/common/psp_verstage/include/psp_verstage.h | 1 | ||||
-rw-r--r-- | src/soc/amd/common/psp_verstage/psp_verstage.c | 12 |
2 files changed, 10 insertions, 3 deletions
diff --git a/src/soc/amd/common/psp_verstage/include/psp_verstage.h b/src/soc/amd/common/psp_verstage/include/psp_verstage.h index dbdf2f2884..ef8a9da951 100644 --- a/src/soc/amd/common/psp_verstage/include/psp_verstage.h +++ b/src/soc/amd/common/psp_verstage/include/psp_verstage.h @@ -49,6 +49,7 @@ void test_svc_calls(void); uint32_t unmap_fch_devices(void); uint32_t verstage_soc_early_init(void); void verstage_mainboard_espi_init(void); +void verstage_mainboard_tpm_init(void); void verstage_soc_aoac_init(void); void verstage_soc_espi_init(void); void verstage_soc_i2c_init(void); diff --git a/src/soc/amd/common/psp_verstage/psp_verstage.c b/src/soc/amd/common/psp_verstage/psp_verstage.c index 8fc2732d47..71f07c0417 100644 --- a/src/soc/amd/common/psp_verstage/psp_verstage.c +++ b/src/soc/amd/common/psp_verstage/psp_verstage.c @@ -25,7 +25,9 @@ extern char _bss_start, _bss_end; void __weak verstage_mainboard_early_init(void) {} void __weak verstage_mainboard_espi_init(void) {} +void __weak verstage_mainboard_tpm_init(void) {} void __weak verstage_mainboard_init(void) {} + uint32_t __weak get_max_workbuf_size(uint32_t *size) { /* This svc only exists in picasso and deprecated for later platforms. @@ -238,15 +240,19 @@ void Main(void) printk(BIOS_DEBUG, "calling verstage_mainboard_espi_init\n"); verstage_mainboard_espi_init(); + printk(BIOS_DEBUG, "calling verstage_soc_espi_init\n"); + verstage_soc_espi_init(); + + printk(BIOS_DEBUG, "calling verstage_mainboard_tpm_init\n"); + /* mainboard_tpm_init may check board_id, so make sure espi is ready first */ + verstage_mainboard_tpm_init(); + printk(BIOS_DEBUG, "calling verstage_mainboard_early_init\n"); verstage_mainboard_early_init(); svc_write_postcode(POSTCODE_LATE_INIT); fch_io_enable_legacy_io(); - printk(BIOS_DEBUG, "calling verstage_soc_espi_init\n"); - verstage_soc_espi_init(); - printk(BIOS_DEBUG, "calling verstage_soc_aoac_init\n"); verstage_soc_aoac_init(); |