arch/x86/acpi_bert_storage.c: Use a common implementation

All targets now use cbmem for the BERT region, so the implementation can
be common.

This also drops the obsolete comment about the need to have bert in a
reserved region (cbmem gets fixed to be in a reserved region).

Change-Id: I6f33d9e05a02492a1c91fb7af94aadaa9acd2931
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/64602
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Paul Menzel <paulepanter@mailbox.org>
Reviewed-by: Raul Rangel <rrangel@chromium.org>
Reviewed-by: Felix Held <felix-coreboot@felixheld.de>
This commit is contained in:
Arthur Heymans
2022-05-23 16:09:51 +02:00
committed by Felix Held
parent e40ca124c6
commit eafcc8e5b1
6 changed files with 17 additions and 43 deletions

View File

@@ -567,15 +567,16 @@ cper_ia32x64_context_t *cper_new_ia32x64_context_msr(
return ctx;
}
/* The region must be in memory marked as reserved. If not implemented,
* skip generating the information in the region.
*/
__weak void bert_reserved_region(void **start, size_t *size)
static void bert_reserved_region(void **start, size_t *size)
{
printk(BIOS_ERR, "%s not implemented. BERT region generation disabled\n",
__func__);
*start = NULL;
*size = 0;
if (!CONFIG(ACPI_BERT)) {
*start = NULL;
*size = 0;
} else {
*start = cbmem_add(CBMEM_ID_ACPI_BERT, CONFIG_ACPI_BERT_SIZE);
*size = CONFIG_ACPI_BERT_SIZE;
}
printk(BIOS_INFO, "Reserved BERT region base: %p, size: 0x%zx\n", *start, *size);
}
static void bert_storage_setup(void *unused)

View File

@@ -44,9 +44,6 @@
#define CRASHLOG_RECORD_TYPE 0x2
#define CRASHLOG_FW_ERR_REV 0x2
/* Get implementation-specific reserved area for generating BERT info */
void bert_reserved_region(void **start, size_t *size);
/* Get the region where BERT error structures have been constructed for
* generating the ACPI table
*/