diff mbox

[RFC,17/47] acpi: add acpi_package() term

Message ID 1418954562-13716-18-git-send-email-imammedo@redhat.com
State New
Headers show

Commit Message

Igor Mammedov Dec. 19, 2014, 2:02 a.m. UTC
Signed-off-by: Igor Mammedov <imammedo@redhat.com>
---
 hw/acpi/acpi_gen_utils.c         | 8 ++++++++
 include/hw/acpi/acpi_gen_utils.h | 1 +
 2 files changed, 9 insertions(+)
diff mbox

Patch

diff --git a/hw/acpi/acpi_gen_utils.c b/hw/acpi/acpi_gen_utils.c
index 33478ef..ae23b4a 100644
--- a/hw/acpi/acpi_gen_utils.c
+++ b/hw/acpi/acpi_gen_utils.c
@@ -467,3 +467,11 @@  AcpiAml GCC_FMT_ATTR(1, 2) acpi_device(const char *name_format, ...)
     va_end(ap);
     return var;
 }
+
+/* ACPI 5.0: 20.2.5.4 Type 2 Opcodes Encoding: DefPackage */
+AcpiAml acpi_package(uint8_t num_elements)
+{
+    AcpiAml var = aml_allocate_internal(0x12 /* PackageOp */, PACKAGE);
+    build_append_byte(var.buf, num_elements);
+    return var;
+}
diff --git a/include/hw/acpi/acpi_gen_utils.h b/include/hw/acpi/acpi_gen_utils.h
index 473589d..e34e19a 100644
--- a/include/hw/acpi/acpi_gen_utils.h
+++ b/include/hw/acpi/acpi_gen_utils.h
@@ -45,6 +45,7 @@  AcpiAml acpi_if(AcpiAml predicate);
 AcpiAml acpi_method(const char *name, int arg_count);
 AcpiAml GCC_FMT_ATTR(1, 2) acpi_scope(const char *name_format, ...);
 AcpiAml GCC_FMT_ATTR(1, 2) acpi_device(const char *name_format, ...);
+AcpiAml acpi_package(uint8_t num_elements);
 
 /* other helpers */
 GArray *build_alloc_array(void);