amd/agesa/state_machine: Add BeforeInitLate hooks

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 <michal.zygowski@3mdeb.com>
Change-Id: I1226e9c0c8a92920f2569ec0f85d0be0adcc9e30
Reviewed-on: https://review.coreboot.org/c/coreboot/+/37998
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Kyösti Mälkki <kyosti.malkki@gmail.com>
This commit is contained in:
Michał Żygowski 2019-12-20 16:57:13 +01:00 committed by Kyösti Mälkki
parent e1e3289052
commit 506b9c102c
6 changed files with 22 additions and 2 deletions

View File

@ -223,6 +223,8 @@ static AGESA_STATUS ramstage_dispatch(struct sysinfo *cb,
case AMD_INIT_LATE: case AMD_INIT_LATE:
{ {
AMD_LATE_PARAMS *param = (void *)StdHeader; AMD_LATE_PARAMS *param = (void *)StdHeader;
platform_BeforeInitLate(cb, param);
board_BeforeInitLate(cb, param);
status = module_dispatch(func, StdHeader); status = module_dispatch(func, StdHeader);
platform_AfterInitLate(cb, param); platform_AfterInitLate(cb, param);
completion_InitLate(cb, param); completion_InitLate(cb, param);
@ -364,6 +366,8 @@ void __weak
board_BeforeInitEnv(struct sysinfo *cb, AMD_ENV_PARAMS *Env) { } board_BeforeInitEnv(struct sysinfo *cb, AMD_ENV_PARAMS *Env) { }
void __weak void __weak
board_BeforeInitMid(struct sysinfo *cb, AMD_MID_PARAMS *Mid) { } board_BeforeInitMid(struct sysinfo *cb, AMD_MID_PARAMS *Mid) { }
void __weak
board_BeforeInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late) { }
AGESA_STATUS __weak AGESA_STATUS __weak
fchs3earlyrestore(AMD_CONFIG_PARAMS *StdHeader) fchs3earlyrestore(AMD_CONFIG_PARAMS *StdHeader)

View File

@ -103,6 +103,10 @@ void platform_BeforeInitMid(struct sysinfo *cb, AMD_MID_PARAMS *Mid)
amd_initcpuio(); amd_initcpuio();
} }
void platform_BeforeInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late)
{
}
void platform_AfterInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late) void platform_AfterInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late)
{ {
sb_Late_Post(); sb_Late_Post();

View File

@ -70,6 +70,10 @@ void platform_BeforeInitMid(struct sysinfo *cb, AMD_MID_PARAMS *Mid)
amd_initcpuio(); amd_initcpuio();
} }
void platform_BeforeInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late)
{
}
void platform_AfterInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late) void platform_AfterInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late)
{ {
} }

View File

@ -77,6 +77,10 @@ void platform_BeforeInitMid(struct sysinfo *cb, AMD_MID_PARAMS *Mid)
amd_initcpuio(); amd_initcpuio();
} }
void platform_BeforeInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late)
{
}
void platform_AfterInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late) void platform_AfterInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late)
{ {
} }

View File

@ -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 platform_BeforeInitMid(struct sysinfo *cb, AMD_MID_PARAMS *Mid);
void board_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 platform_AfterInitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late);
void completion_InitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late); void completion_InitLate(struct sysinfo *cb, AMD_LATE_PARAMS *Late);

View File

@ -58,11 +58,13 @@ void platform_BeforeInitMid(struct sysinfo *cb, AMD_MID_PARAMS *Mid)
amd_initcpuio(); 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) void platform_BeforeInitResume(struct sysinfo *cb, AMD_RESUME_PARAMS *Resume)
{ {