vc/amd/opensil/genoa_poc: remove xSIM-api dependency from opensil.h

Provide 3 separate functions for each openSIL time point instead of one,
so that we don't need the xSIM-api header file to be included in
opensil.h to decouple the coreboot code more form the openSIL code. This
will allow to create an openSIL stub implementation to already get most
of the coreboot-side SoC code in place before the openSIL source code is
done and released.

Signed-off-by: Felix Held <felix-coreboot@felixheld.de>
Change-Id: I969bc0862560b7254c48f04e9a03387417f328bc
Reviewed-on: https://review.coreboot.org/c/coreboot/+/80287
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Reviewed-by: Varshit Pandya <pandyavarshit@gmail.com>
This commit is contained in:
Felix Held
2024-02-01 16:16:23 +01:00
parent 0c5b6320d4
commit 3730ce839e
3 changed files with 20 additions and 4 deletions

View File

@ -4,7 +4,6 @@
#define _OPENSIL_H_
#include <acpi/acpi.h>
#include <xSIM-api.h>
void SIL_STATUS_report(const char *function, const int status);
// Add the memory map to dev, starting at index idx, returns last use idx
@ -15,6 +14,8 @@ void opensil_fill_fadt_io_ports(acpi_fadt_t *fadt);
void configure_mpio(void);
void setup_opensil(void);
void opensil_entry(SIL_TIMEPOINT timepoint);
void opensil_xSIM_timepoint_1(void);
void opensil_xSIM_timepoint_2(void);
void opensil_xSIM_timepoint_3(void);
#endif

View File

@ -129,7 +129,7 @@ void setup_opensil(void)
configure_mpio();
}
void opensil_entry(SIL_TIMEPOINT timepoint)
static void opensil_entry(SIL_TIMEPOINT timepoint)
{
SIL_STATUS ret;
SIL_TIMEPOINT tp = (uintptr_t)timepoint;
@ -160,4 +160,19 @@ void opensil_entry(SIL_TIMEPOINT timepoint)
}
}
void opensil_xSIM_timepoint_1(void)
{
opensil_entry(SIL_TP1);
}
void opensil_xSIM_timepoint_2(void)
{
opensil_entry(SIL_TP2);
}
void opensil_xSIM_timepoint_3(void)
{
opensil_entry(SIL_TP3);
}
/* TODO: also call timepoints 2 and 3 from coreboot. Are they NOOP? */