summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSugnan Prabhu S <sugnan.prabhu.s@intel.com>2020-06-10 09:51:02 +0530
committerPatrick Georgi <pgeorgi@google.com>2020-07-07 14:44:55 +0000
commit4f77f61d2dc8088a710611936680228d00eabed4 (patch)
treecf3a316a82d3a9c1266907267ecef1f5b095f4e2 /src
parent879b3c195f6b441c88c768f0cff025128a54986d (diff)
acpi: add STA function to return external variable
This change adds support function to add STA function which returns an external variable. Change-Id: I31755a76ee985ee6059289ae194537d531270761 Signed-off-by: Sugnan Prabhu S <sugnan.prabhu.s@intel.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/42245 Reviewed-by: Rizwan Qureshi <rizwan.qureshi@intel.com> Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Diffstat (limited to 'src')
-rw-r--r--src/acpi/acpigen.c11
-rw-r--r--src/include/acpi/acpigen.h1
2 files changed, 12 insertions, 0 deletions
diff --git a/src/acpi/acpigen.c b/src/acpi/acpigen.c
index fc6da1beb9..bf1b373a60 100644
--- a/src/acpi/acpigen.c
+++ b/src/acpi/acpigen.c
@@ -742,6 +742,17 @@ void acpigen_write_STA(uint8_t status)
acpigen_pop_len();
}
+void acpigen_write_STA_ext(const char *namestring)
+{
+ /*
+ * Method (_STA, 0, NotSerialized) { Return (ext_val) }
+ */
+ acpigen_write_method("_STA", 0);
+ acpigen_emit_byte(RETURN_OP);
+ acpigen_emit_namestring(namestring);
+ acpigen_pop_len();
+}
+
/*
* Generates a func with max supported P-states.
*/
diff --git a/src/include/acpi/acpigen.h b/src/include/acpi/acpigen.h
index dffde851f5..701e44ba97 100644
--- a/src/include/acpi/acpigen.h
+++ b/src/include/acpi/acpigen.h
@@ -319,6 +319,7 @@ void acpigen_write_empty_PCT(void);
void acpigen_write_empty_PTC(void);
void acpigen_write_PRW(u32 wake, u32 level);
void acpigen_write_STA(uint8_t status);
+void acpigen_write_STA_ext(const char *namestring);
void acpigen_write_TPC(const char *gnvs_tpc_limit);
void acpigen_write_PSS_package(u32 coreFreq, u32 power, u32 transLat,
u32 busmLat, u32 control, u32 status);