summaryrefslogtreecommitdiff
path: root/lib/acpi
diff options
context:
space:
mode:
authorSimon Glass <sjg@chromium.org>2020-07-07 13:11:45 -0600
committerBin Meng <bmeng.cn@gmail.com>2020-07-17 14:32:24 +0800
commit7fb8da4ce1b22c8f077e6d4fe6e0d88e3fd9206d (patch)
treec55bca9ffb98e573fcc2f775056346d18ed75a7f /lib/acpi
parent2912686c08c33aff5269512de962dffb35fbee7c (diff)
acpi: Support string output
Add support for output of strings and streams of bytes. 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 'lib/acpi')
-rw-r--r--lib/acpi/acpigen.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/acpi/acpigen.c b/lib/acpi/acpigen.c
index a42ae26494..671f1d0eea 100644
--- a/lib/acpi/acpigen.c
+++ b/lib/acpi/acpigen.c
@@ -37,3 +37,17 @@ void acpigen_emit_dword(struct acpi_ctx *ctx, uint data)
acpigen_emit_byte(ctx, (data >> 16) & 0xff);
acpigen_emit_byte(ctx, (data >> 24) & 0xff);
}
+
+void acpigen_emit_stream(struct acpi_ctx *ctx, const char *data, int size)
+{
+ int i;
+
+ for (i = 0; i < size; i++)
+ acpigen_emit_byte(ctx, data[i]);
+}
+
+void acpigen_emit_string(struct acpi_ctx *ctx, const char *str)
+{
+ acpigen_emit_stream(ctx, str, str ? strlen(str) : 0);
+ acpigen_emit_byte(ctx, '\0');
+}