From: Igor Mammedov Date: Wed, 18 Feb 2015 19:14:28 +0000 (+0000) Subject: acpi: add aml_package() term X-Git-Tag: v2.3.0-rc0~34^2~59 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=3bfa74a7e8c0787877e0f23a873413ad8817c66c;p=thirdparty%2Fqemu.git acpi: add aml_package() term Signed-off-by: Igor Mammedov Reviewed-by: Michael S. Tsirkin Signed-off-by: Michael S. Tsirkin --- diff --git a/hw/acpi/aml-build.c b/hw/acpi/aml-build.c index 18427b6407c..fdeeacc993a 100644 --- a/hw/acpi/aml-build.c +++ b/hw/acpi/aml-build.c @@ -505,3 +505,11 @@ Aml *aml_device(const char *name_format, ...) va_end(ap); return var; } + +/* ACPI 1.0b: 16.2.5.4 Type 2 Opcodes Encoding: DefPackage */ +Aml *aml_package(uint8_t num_elements) +{ + Aml *var = aml_bundle(0x12 /* PackageOp */, AML_PACKAGE); + build_append_byte(var->buf, num_elements); + return var; +} diff --git a/include/hw/acpi/aml-build.h b/include/hw/acpi/aml-build.h index 5f00b07c308..92097b59455 100644 --- a/include/hw/acpi/aml-build.h +++ b/include/hw/acpi/aml-build.h @@ -78,6 +78,7 @@ Aml *aml_scope(const char *name_format, ...) GCC_FMT_ATTR(1, 2); Aml *aml_device(const char *name_format, ...) GCC_FMT_ATTR(1, 2); Aml *aml_method(const char *name, int arg_count); Aml *aml_if(Aml *predicate); +Aml *aml_package(uint8_t num_elements); /* other helpers */ GArray *build_alloc_array(void);