AGESA: Introduce AGESA_LEGACY_WRAPPER and its counterpart

Hardware / Coreboot - Kyösti Mälkki [gmail.com] - 2 August 2017 00:46 EDT

We define AGESA_LEGACY_WRAPPER a method of calling AGESA
via functions in agesawrapper.c file. The approach implemented there makes it very inconvenient to do board-specific customisation or present common platform-specific features. Seems like it also causes assertion errors on AGESA side. The flag is applied here to all boards and then individually removed one at a time, as things get tested.

New method is not to call AGESA internal functions directly, but via the dispatcher. AGESA call parameters are routed to hooks in both platform and board -directories, to allow for easy capture or modification as needed.

For each AGESA dispatcher call made, eventlog entries are replayed to the console log. Also relocations of AGESA heap that took place are recorded.

New method is expected to be compatible with binaryPI.

Change-Id: Iac3d7f8b0354e9f02c2625576f36fe06b05eb4ce

28c4d2f AGESA: Introduce AGESA_LEGACY_WRAPPER and its counterpart
src/cpu/amd/agesa/Kconfig | 4 +
src/cpu/amd/agesa/Makefile.inc | 2 +-
src/cpu/amd/agesa/romstage.c | 31 +-
src/mainboard/amd/olivehill/Kconfig | 1 +
src/mainboard/amd/torpedo/Kconfig | 1 +
src/mainboard/asrock/e350m1/Kconfig | 1 +
src/mainboard/asrock/imb-a180/Kconfig | 1 +
src/mainboard/asus/f2a85-m/Kconfig | 1 +
src/mainboard/bap/ode_e20XX/Kconfig | 1 +
src/mainboard/elmex/pcm205400/Kconfig | 1 +
src/mainboard/gizmosphere/gizmo/Kconfig | 1 +
src/mainboard/lenovo/g505s/Kconfig | 1 +
src/mainboard/msi/ms7721/Kconfig | 1 +
src/mainboard/pcengines/apu1/Kconfig | 1 +
src/northbridge/amd/agesa/Makefile.inc | 12 +-
src/northbridge/amd/agesa/acpi_tables.c | 6 +
src/northbridge/amd/agesa/agesawrapper.h | 20 +-
src/northbridge/amd/agesa/def_callouts.c | 20 +-
src/northbridge/amd/agesa/eventlog.c | 21 +-
src/northbridge/amd/agesa/family12/Makefile.inc | 5 +
src/northbridge/amd/agesa/family12/northbridge.c | 4 +
src/northbridge/amd/agesa/family12/state_machine.c | 89 ++++++
src/northbridge/amd/agesa/family14/Makefile.inc | 5 +
src/northbridge/amd/agesa/family14/northbridge.c | 9 +-
src/northbridge/amd/agesa/family14/state_machine.c | 94 ++++++
src/northbridge/amd/agesa/family15/Makefile.inc | 5 +
src/northbridge/amd/agesa/family15/northbridge.c | 4 +-
src/northbridge/amd/agesa/family15/state_machine.c | 78 +++++
src/northbridge/amd/agesa/family15rl/Makefile.inc | 5 +
src/northbridge/amd/agesa/family15rl/northbridge.c | 3 +
src/northbridge/amd/agesa/family15tn/Makefile.inc | 5 +
src/northbridge/amd/agesa/family15tn/northbridge.c | 3 +
.../amd/agesa/family15tn/state_machine.c | 85 ++++++
src/northbridge/amd/agesa/family16kb/Makefile.inc | 5 +
src/northbridge/amd/agesa/family16kb/northbridge.c | 3 +
.../amd/agesa/family16kb/state_machine.c | 85 ++++++
src/northbridge/amd/agesa/oem_s3.c | 1 +
src/northbridge/amd/agesa/state_machine.c | 318 +++++++++++++++++++++
src/northbridge/amd/agesa/state_machine.h | 59 ++++
src/southbridge/amd/agesa/hudson/Makefile.inc | 2 +-
src/southbridge/amd/cimx/sb800/late.c | 2 +
src/vendorcode/amd/agesa/common/agesa-entry.c | 3 +-
42 files changed, 970 insertions(+), 29 deletions(-)

Upstream: review.coreboot.org


  • Share