From 0b86c76cfc13e435b4d5225326a1c71e154299cd Mon Sep 17 00:00:00 2001 From: Sven Schnelle Date: Fri, 21 Oct 2011 21:46:47 +0200 Subject: ACPI: Add function for writing _CST tables Change-Id: I4e16a0d37717c56a3529f9f9fdb05efec1d93f99 Signed-off-by: Sven Schnelle Reviewed-on: http://review.coreboot.org/312 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi --- src/arch/x86/include/arch/acpigen.h | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/arch/x86/include') diff --git a/src/arch/x86/include/arch/acpigen.h b/src/arch/x86/include/arch/acpigen.h index 6f13a7ae1f..7feaa8e130 100644 --- a/src/arch/x86/include/arch/acpigen.h +++ b/src/arch/x86/include/arch/acpigen.h @@ -24,6 +24,17 @@ #include #include +struct cst_entry { + int type; + int width; + int offset; + int addrsize; + u64 address; + int ctype; + int latency; + int power; +}; + void acpigen_patch_len(int len); void acpigen_set_current(char *curr); char *acpigen_get_current(void); @@ -45,9 +56,11 @@ int acpigen_write_PSS_package(u32 coreFreq, u32 power, u32 transLat, u32 busmLat u32 control, u32 status); typedef enum { SW_ALL=0xfc, SW_ANY=0xfd, HW_ALL=0xfe } PSD_coord; int acpigen_write_PSD_package(u32 domain, u32 numprocs, PSD_coord coordtype); +int acpigen_write_CST_package(struct cst_entry *entry, int nentries); int acpigen_write_processor(u8 cpuindex, u32 pblock_addr, u8 pblock_len); int acpigen_write_mem32fixed(int readwrite, u32 base, u32 size); int acpigen_write_io16(u16 min, u16 max, u8 align, u8 len, u8 decode16); +int acpigen_write_register(int type, int width, int offset, int addrsize, u64 address); int acpigen_write_resourcetemplate_header(void); int acpigen_write_resourcetemplate_footer(int len); int acpigen_write_mainboard_resource_template(void); -- cgit v1.2.3