diff options
author | Simon Glass <sjg@chromium.org> | 2020-07-07 13:11:54 -0600 |
---|---|---|
committer | Bin Meng <bmeng.cn@gmail.com> | 2020-07-17 14:32:24 +0800 |
commit | 7aed90d44c07ff4ea2f05e7a7b167040fe99f64f (patch) | |
tree | b9cc8fcf5292a4cb42c8558114744a7e63cd2967 /include/acpi/acpigen.h | |
parent | 3df33bda5c92a1a8b46b83ac9521fcf48a2fe50f (diff) | |
download | u-boot-7aed90d44c07ff4ea2f05e7a7b167040fe99f64f.tar.gz u-boot-7aed90d44c07ff4ea2f05e7a7b167040fe99f64f.tar.xz u-boot-7aed90d44c07ff4ea2f05e7a7b167040fe99f64f.zip |
acpi: Support writing a name
ACPI supports storing names which are made up of multiple path components.
Several special cases are supported. Add a function to emit a name.
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Wolfgang Wallner <wolfgang.wallner@br-automation.com>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Diffstat (limited to 'include/acpi/acpigen.h')
-rw-r--r-- | include/acpi/acpigen.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/include/acpi/acpigen.h b/include/acpi/acpigen.h index 14b96203a9..24aec7fad6 100644 --- a/include/acpi/acpigen.h +++ b/include/acpi/acpigen.h @@ -21,12 +21,15 @@ struct acpi_ctx; enum { ZERO_OP = 0x00, ONE_OP = 0x01, + NAME_OP = 0x08, BYTE_PREFIX = 0x0a, WORD_PREFIX = 0x0b, DWORD_PREFIX = 0x0c, STRING_PREFIX = 0x0d, QWORD_PREFIX = 0x0e, PACKAGE_OP = 0x12, + DUAL_NAME_PREFIX = 0x2e, + MULTI_NAME_PREFIX = 0x2f, }; /** @@ -165,4 +168,26 @@ void acpigen_write_integer(struct acpi_ctx *ctx, u64 data); * @str: String to write */ void acpigen_write_string(struct acpi_ctx *ctx, const char *str); + +/** + * acpigen_emit_namestring() - Emit an ACPI name + * + * This writes out an ACPI name or path in the required special format. It does + * not add the NAME_OP prefix. + * + * @ctx: ACPI context pointer + * @namepath: Name / path to emit + */ +void acpigen_emit_namestring(struct acpi_ctx *ctx, const char *namepath); + +/** + * acpigen_write_name() - Write out an ACPI name + * + * This writes out an ACPI name or path in the required special format with a + * NAME_OP prefix. + * + * @ctx: ACPI context pointer + * @namepath: Name / path to emit + */ +void acpigen_write_name(struct acpi_ctx *ctx, const char *namepath); #endif |