From 506b9c102c38867d778d9908d28641aafb74252f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20=C5=BBygowski?= Date: Fri, 20 Dec 2019 16:57:13 +0100 Subject: [PATCH] amd/agesa/state_machine: Add BeforeInitLate hooks MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Add missing BeforeInitLate hooks in order to bring back certain options that were lost on postcar migration. This will also allow to disable CDIT again that caused AmdInitLate error on 00730F01. Signed-off-by: Michał Żygowski Change-Id: I1226e9c0c8a92920f2569ec0f85d0be0adcc9e30 Reviewed-on: https://review.coreboot.org/c/coreboot/+/37998 Tested-by: build bot (Jenkins) Reviewed-by: Kyösti Mälkki --- src/drivers/amd/agesa/state_machine.c | 4 ++++ src/northbridge/amd/agesa/family14/state_machine.c | 4 ++++ src/northbridge/amd/agesa/family15tn/state_machine.c | 4 ++++ src/northbridge/amd/agesa/family16kb/state_machine.c | 4 ++++ src/northbridge/amd/agesa/state_machine.h | 2 ++ src/northbridge/amd/pi/00730F01/state_machine.c | 6 ++++-- 6 files changed, 22 insertions(+), 2 deletions(-) diff --git a/src/drivers/amd/agesa/state_machine.c b/src/drivers/amd/agesa/state_machine.c index 482b615c9c..1678f841d0 100644 --- a/src/drivers/amd/agesa/state_machine.c +++ b/src/drivers/amd/agesa/state_machine.c @@ -223,6 +223,8 @@ static AGESA_STATUS ramstage_dispatch(struct sysinfo *cb, case AMD_INIT_LATE: { AMD_LATE_PARAMS *param = (void *)StdHeader; + platform_BeforeInitLate(cb, param); + board_BeforeInitLate(cb, param); status = module_dispatch(func, StdHeader); platform_AfterInitLate(cb, param); completion_InitLate(cb, param); @@ -364,6 +366,8 @@ void __weak board_BeforeInitEnv(struct sysinfo *cb, AMD_ENV_PARAMS *Env) { } void __weak board_BeforeInitMid(struct sysinfo *cb, AMD_MID_PARAMS *Mid) { } +void __weak +board_BeforeInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late) { } AGESA_STATUS __weak fchs3earlyrestore(AMD_CONFIG_PARAMS *StdHeader) diff --git a/src/northbridge/amd/agesa/family14/state_machine.c b/src/northbridge/amd/agesa/family14/state_machine.c index ab96b75f40..b49dac0079 100644 --- a/src/northbridge/amd/agesa/family14/state_machine.c +++ b/src/northbridge/amd/agesa/family14/state_machine.c @@ -103,6 +103,10 @@ void platform_BeforeInitMid(struct sysinfo *cb, AMD_MID_PARAMS *Mid) amd_initcpuio(); } +void platform_BeforeInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late) +{ +} + void platform_AfterInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late) { sb_Late_Post(); diff --git a/src/northbridge/amd/agesa/family15tn/state_machine.c b/src/northbridge/amd/agesa/family15tn/state_machine.c index 473edfc255..dafb64c7eb 100644 --- a/src/northbridge/amd/agesa/family15tn/state_machine.c +++ b/src/northbridge/amd/agesa/family15tn/state_machine.c @@ -70,6 +70,10 @@ void platform_BeforeInitMid(struct sysinfo *cb, AMD_MID_PARAMS *Mid) amd_initcpuio(); } +void platform_BeforeInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late) +{ +} + void platform_AfterInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late) { } diff --git a/src/northbridge/amd/agesa/family16kb/state_machine.c b/src/northbridge/amd/agesa/family16kb/state_machine.c index fea097f6c6..7794f2d6b0 100644 --- a/src/northbridge/amd/agesa/family16kb/state_machine.c +++ b/src/northbridge/amd/agesa/family16kb/state_machine.c @@ -77,6 +77,10 @@ void platform_BeforeInitMid(struct sysinfo *cb, AMD_MID_PARAMS *Mid) amd_initcpuio(); } +void platform_BeforeInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late) +{ +} + void platform_AfterInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late) { } diff --git a/src/northbridge/amd/agesa/state_machine.h b/src/northbridge/amd/agesa/state_machine.h index c4a30540b5..6e86f535fc 100644 --- a/src/northbridge/amd/agesa/state_machine.h +++ b/src/northbridge/amd/agesa/state_machine.h @@ -84,6 +84,8 @@ void platform_AfterInitEnv(struct sysinfo *cb, AMD_ENV_PARAMS *Env); void platform_BeforeInitMid(struct sysinfo *cb, AMD_MID_PARAMS *Mid); void board_BeforeInitMid(struct sysinfo *cb, AMD_MID_PARAMS *Mid); +void platform_BeforeInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late); +void board_BeforeInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late); void platform_AfterInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late); void completion_InitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late); diff --git a/src/northbridge/amd/pi/00730F01/state_machine.c b/src/northbridge/amd/pi/00730F01/state_machine.c index b567f38e2e..7e5ca5bf3a 100644 --- a/src/northbridge/amd/pi/00730F01/state_machine.c +++ b/src/northbridge/amd/pi/00730F01/state_machine.c @@ -58,11 +58,13 @@ void platform_BeforeInitMid(struct sysinfo *cb, AMD_MID_PARAMS *Mid) amd_initcpuio(); } -void platform_AfterInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late) +void platform_BeforeInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late) { } - +void platform_AfterInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late) +{ +} void platform_BeforeInitResume(struct sysinfo *cb, AMD_RESUME_PARAMS *Resume) {