]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
ACPICA: Update support for ACPI 5 MPST table
authorBob Moore <robert.moore@intel.com>
Wed, 31 Oct 2012 02:27:56 +0000 (02:27 +0000)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Wed, 31 Oct 2012 21:57:18 +0000 (22:57 +0100)
Fixes some problems introduced by late changes to the table as it
was added to the ACPI 5.0 specification.  Both the table compiler
and the disassembler and the main header support for the table.

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>
include/acpi/actbl3.h

index 8c61b5fe42a48417fb7b9b4080fac0ff743978a4..6585141e4b97e1dafe342f4fc200786ece1b70dd 100644 (file)
@@ -277,10 +277,10 @@ struct acpi_table_gtdt {
  ******************************************************************************/
 
 #define ACPI_MPST_CHANNEL_INFO \
-       u16                             reserved1; \
        u8                              channel_id; \
-       u8                              reserved2; \
-       u16                             power_node_count;
+       u8                              reserved1[3]; \
+       u16                             power_node_count; \
+       u16                             reserved2;
 
 /* Main table */
 
@@ -304,9 +304,8 @@ struct acpi_mpst_power_node {
        u32 length;
        u64 range_address;
        u64 range_length;
-       u8 num_power_states;
-       u8 num_physical_components;
-       u16 reserved2;
+       u32 num_power_states;
+       u32 num_physical_components;
 };
 
 /* Values for Flags field above */
@@ -332,10 +331,11 @@ struct acpi_mpst_component {
 
 struct acpi_mpst_data_hdr {
        u16 characteristics_count;
+       u16 reserved;
 };
 
 struct acpi_mpst_power_data {
-       u8 revision;
+       u8 structure_id;
        u8 flags;
        u16 reserved1;
        u32 average_power;
@@ -356,10 +356,10 @@ struct acpi_mpst_shared {
        u32 signature;
        u16 pcc_command;
        u16 pcc_status;
-       u16 command_register;
-       u16 status_register;
-       u16 power_state_id;
-       u16 power_node_id;
+       u32 command_register;
+       u32 status_register;
+       u32 power_state_id;
+       u32 power_node_id;
        u64 energy_consumed;
        u64 average_power;
 };