summaryrefslogtreecommitdiffstats
path: root/drivers/acpi/acpica/aclocal.h
diff options
context:
space:
mode:
authorBob Moore <robert.moore@intel.com>2013-04-12 00:24:22 +0000
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2013-04-12 13:29:46 +0200
commitc34c82bc9634a099a2652889806c5997f2a3d56f (patch)
treef2b9505b179e7e1a069105037fb0a531aeebdb56 /drivers/acpi/acpica/aclocal.h
parentf084dbb939070281be7c882db63a4a428c51fcf4 (diff)
downloadlinux-stable-c34c82bc9634a099a2652889806c5997f2a3d56f.tar.gz
linux-stable-c34c82bc9634a099a2652889806c5997f2a3d56f.tar.bz2
linux-stable-c34c82bc9634a099a2652889806c5997f2a3d56f.zip
ACPICA: Predefine names: Add allowed argument types to master info table
This change adds the infrastructure to enable typechecking on incoming arguments for the predefined methods/objects. It does not actually contain the code that will fully utilize this information. Also condenses some duplicate code for the predefined names into a new module, utilities/utpredef.c Signed-off-by: Bob Moore <robert.moore@intel.com> Signed-off-by: Lv Zheng <lv.zheng@intel.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/acpi/acpica/aclocal.h')
-rw-r--r--drivers/acpi/acpica/aclocal.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/drivers/acpi/acpica/aclocal.h b/drivers/acpi/acpica/aclocal.h
index 636658ffc9b1..d5bfbd331bfd 100644
--- a/drivers/acpi/acpica/aclocal.h
+++ b/drivers/acpi/acpica/aclocal.h
@@ -294,6 +294,8 @@ acpi_status(*acpi_internal_method) (struct acpi_walk_state * walk_state);
#define ACPI_BTYPE_OBJECTS_AND_REFS 0x0001FFFF /* ARG or LOCAL */
#define ACPI_BTYPE_ALL_OBJECTS 0x0000FFFF
+#pragma pack(1)
+
/*
* Information structure for ACPI predefined names.
* Each entry in the table contains the following items:
@@ -304,7 +306,7 @@ acpi_status(*acpi_internal_method) (struct acpi_walk_state * walk_state);
*/
struct acpi_name_info {
char name[ACPI_NAME_SIZE];
- u8 param_count;
+ u16 argument_list;
u8 expected_btypes;
};
@@ -327,7 +329,7 @@ struct acpi_package_info {
u8 count1;
u8 object_type2;
u8 count2;
- u8 reserved;
+ u16 reserved;
};
/* Used for ACPI_PTYPE2_FIXED */
@@ -336,6 +338,7 @@ struct acpi_package_info2 {
u8 type;
u8 count;
u8 object_type[4];
+ u8 reserved;
};
/* Used for ACPI_PTYPE1_OPTION */
@@ -345,7 +348,7 @@ struct acpi_package_info3 {
u8 count;
u8 object_type[2];
u8 tail_object_type;
- u8 reserved;
+ u16 reserved;
};
union acpi_predefined_info {
@@ -355,6 +358,10 @@ union acpi_predefined_info {
struct acpi_package_info3 ret_info3;
};
+/* Reset to default packing */
+
+#pragma pack()
+
/* Data block used during object validation */
struct acpi_predefined_data {