summaryrefslogtreecommitdiff
path: root/src/include
diff options
context:
space:
mode:
authorArthur Heymans <arthur@aheymans.xyz>2023-06-30 15:01:08 +0200
committerLean Sheng Tan <sheng.tan@9elements.com>2023-07-23 18:26:13 +0000
commit2e3cb639258fcc63816e3e0f0c5ec468931bf2a4 (patch)
tree82493a1b4939015130d4b84f7c89dccb660d6c6c /src/include
parentc202be793fd483167ab25b60a3f4630137ca33ae (diff)
acpi.c: Add functions to create GTDT
Signed-off-by: Arthur Heymans <arthur@aheymans.xyz> Change-Id: Ica6b2d79d61558706998edbbaee185125ff5b36c Reviewed-on: https://review.coreboot.org/c/coreboot/+/76296 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Lean Sheng Tan <sheng.tan@9elements.com>
Diffstat (limited to 'src/include')
-rw-r--r--src/include/acpi/acpi.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/include/acpi/acpi.h b/src/include/acpi/acpi.h
index dc26b85597..f1c52d1560 100644
--- a/src/include/acpi/acpi.h
+++ b/src/include/acpi/acpi.h
@@ -77,7 +77,7 @@ enum acpi_tables {
/* Tables defined by ACPI and used by coreboot */
BERT, CEDT, DBG2, DMAR, DSDT, EINJ, FACS, FADT, HEST, HMAT, HPET, IVRS,
MADT, MCFG, RSDP, RSDT, SLIT, SRAT, SSDT, TCPA, TPM2, XSDT, ECDT, LPIT,
- SPCR,
+ SPCR, GTDT,
/* Additional proprietary tables used by coreboot */
VFCT, NHLT, SPMI, CRAT
};
@@ -1576,6 +1576,13 @@ unsigned long acpi_create_lpi_desc_ncst(acpi_lpi_desc_ncst_t *lpi_desc, uint16_t
/* chipsets that select ACPI_BERT must implement this function */
enum cb_err acpi_soc_get_bert_region(void **region, size_t *length);
+void acpi_soc_fill_gtdt(acpi_gtdt_t *gtdt);
+unsigned long acpi_soc_gtdt_add_timers(uint32_t *count, unsigned long current);
+unsigned long acpi_gtdt_add_timer_block(unsigned long current, const uint64_t address,
+ struct acpi_gtdt_timer_entry *timers, size_t number);
+unsigned long acpi_gtdt_add_watchdog(unsigned long current, uint64_t refresh_frame,
+ uint64_t control_frame, uint32_t gsiv, uint32_t flags);
+
/* For ACPI S3 support. */
void __noreturn acpi_resume(void *wake_vec);
void mainboard_suspend_resume(void);