From f6945026974e371a16a5343964f2751dffc29efd Mon Sep 17 00:00:00 2001 From: Tim Wawrzynczak Date: Thu, 4 Jun 2020 15:18:47 -0600 Subject: [PATCH] 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 Change-Id: I0f18db9cc836ec9249604452f03ed9b4c6478827 Reviewed-on: https://review.coreboot.org/c/coreboot/+/42102 Reviewed-by: Sumeet R Pawnikar Reviewed-by: Nick Vaccaro Reviewed-by: Duncan Laurie Tested-by: build bot (Jenkins) --- src/acpi/acpigen.c | 7 +++++++ src/include/acpi/acpigen.h | 3 +++ 2 files changed, 10 insertions(+) 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__ */