summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim Wawrzynczak <twawrzynczak@chromium.org>2020-06-04 15:18:47 -0600
committerDuncan Laurie <dlaurie@chromium.org>2020-07-07 20:31:22 +0000
commitf6945026974e371a16a5343964f2751dffc29efd (patch)
treeab3db3e4d622eeb026c8feac09e001f5ad0594c4
parentc5316ec4d675750f35ff1b383adacc2255e92d79 (diff)
acpigen: Add acpigen_notify
A fairly common thing in ACPI is notifying a device when some kind of device-specific event happens; this function simplifies writing this pattern. Signed-off-by: Tim Wawrzynczak <twawrzynczak@chromium.org> Change-Id: I0f18db9cc836ec9249604452f03ed9b4c6478827 Reviewed-on: https://review.coreboot.org/c/coreboot/+/42102 Reviewed-by: Sumeet R Pawnikar <sumeet.r.pawnikar@intel.com> Reviewed-by: Nick Vaccaro <nvaccaro@google.com> Reviewed-by: Duncan Laurie <dlaurie@chromium.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
-rw-r--r--src/acpi/acpigen.c7
-rw-r--r--src/include/acpi/acpigen.h3
2 files changed, 10 insertions, 0 deletions
diff --git a/src/acpi/acpigen.c b/src/acpi/acpigen.c
index bf1b373a60..a4a74f65d7 100644
--- a/src/acpi/acpigen.c
+++ b/src/acpi/acpigen.c
@@ -1964,3 +1964,10 @@ void acpigen_write_ADR_soundwire_device(const struct soundwire_address *address)
(((uint64_t)address->part_id & 0xffff) << 8) |
(((uint64_t)address->class & 0xff)));
}
+
+void acpigen_notify(const char *namestr, int value)
+{
+ acpigen_emit_byte(NOTIFY_OP);
+ acpigen_emit_namestring(namestr);
+ acpigen_write_integer(value);
+}
diff --git a/src/include/acpi/acpigen.h b/src/include/acpi/acpigen.h
index 701e44ba97..98a9fe474c 100644
--- a/src/include/acpi/acpigen.h
+++ b/src/include/acpi/acpigen.h
@@ -509,4 +509,7 @@ void acpigen_resource_dword(u16 res_type, u16 gen_flags, u16 type_flags,
void acpigen_resource_qword(u16 res_type, u16 gen_flags, u16 type_flags,
u64 gran, u64 range_min, u64 range_max, u64 translation, u64 length);
+/* Emits Notify(namestr, value) */
+void acpigen_notify(const char *namestr, int value);
+
#endif /* __ACPI_ACPIGEN_H__ */