aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/acpi/acpi_configfs.c25
-rw-r--r--drivers/acpi/pptt.c3
-rw-r--r--drivers/acpi/sysfs.c21
3 files changed, 28 insertions, 21 deletions
diff --git a/drivers/acpi/acpi_configfs.c b/drivers/acpi/acpi_configfs.c
index b58850389094..81bfc6197293 100644
--- a/drivers/acpi/acpi_configfs.c
+++ b/drivers/acpi/acpi_configfs.c
@@ -97,12 +97,12 @@ static ssize_t acpi_table_aml_read(struct config_item *cfg,
97 97
98CONFIGFS_BIN_ATTR(acpi_table_, aml, NULL, MAX_ACPI_TABLE_SIZE); 98CONFIGFS_BIN_ATTR(acpi_table_, aml, NULL, MAX_ACPI_TABLE_SIZE);
99 99
100struct configfs_bin_attribute *acpi_table_bin_attrs[] = { 100static struct configfs_bin_attribute *acpi_table_bin_attrs[] = {
101 &acpi_table_attr_aml, 101 &acpi_table_attr_aml,
102 NULL, 102 NULL,
103}; 103};
104 104
105ssize_t acpi_table_signature_show(struct config_item *cfg, char *str) 105static ssize_t acpi_table_signature_show(struct config_item *cfg, char *str)
106{ 106{
107 struct acpi_table_header *h = get_header(cfg); 107 struct acpi_table_header *h = get_header(cfg);
108 108
@@ -112,7 +112,7 @@ ssize_t acpi_table_signature_show(struct config_item *cfg, char *str)
112 return sprintf(str, "%.*s\n", ACPI_NAME_SIZE, h->signature); 112 return sprintf(str, "%.*s\n", ACPI_NAME_SIZE, h->signature);
113} 113}
114 114
115ssize_t acpi_table_length_show(struct config_item *cfg, char *str) 115static ssize_t acpi_table_length_show(struct config_item *cfg, char *str)
116{ 116{
117 struct acpi_table_header *h = get_header(cfg); 117 struct acpi_table_header *h = get_header(cfg);
118 118
@@ -122,7 +122,7 @@ ssize_t acpi_table_length_show(struct config_item *cfg, char *str)
122 return sprintf(str, "%d\n", h->length); 122 return sprintf(str, "%d\n", h->length);
123} 123}
124 124
125ssize_t acpi_table_revision_show(struct config_item *cfg, char *str) 125static ssize_t acpi_table_revision_show(struct config_item *cfg, char *str)
126{ 126{
127 struct acpi_table_header *h = get_header(cfg); 127 struct acpi_table_header *h = get_header(cfg);
128 128
@@ -132,7 +132,7 @@ ssize_t acpi_table_revision_show(struct config_item *cfg, char *str)
132 return sprintf(str, "%d\n", h->revision); 132 return sprintf(str, "%d\n", h->revision);
133} 133}
134 134
135ssize_t acpi_table_oem_id_show(struct config_item *cfg, char *str) 135static ssize_t acpi_table_oem_id_show(struct config_item *cfg, char *str)
136{ 136{
137 struct acpi_table_header *h = get_header(cfg); 137 struct acpi_table_header *h = get_header(cfg);
138 138
@@ -142,7 +142,7 @@ ssize_t acpi_table_oem_id_show(struct config_item *cfg, char *str)
142 return sprintf(str, "%.*s\n", ACPI_OEM_ID_SIZE, h->oem_id); 142 return sprintf(str, "%.*s\n", ACPI_OEM_ID_SIZE, h->oem_id);
143} 143}
144 144
145ssize_t acpi_table_oem_table_id_show(struct config_item *cfg, char *str) 145static ssize_t acpi_table_oem_table_id_show(struct config_item *cfg, char *str)
146{ 146{
147 struct acpi_table_header *h = get_header(cfg); 147 struct acpi_table_header *h = get_header(cfg);
148 148
@@ -152,7 +152,7 @@ ssize_t acpi_table_oem_table_id_show(struct config_item *cfg, char *str)
152 return sprintf(str, "%.*s\n", ACPI_OEM_TABLE_ID_SIZE, h->oem_table_id); 152 return sprintf(str, "%.*s\n", ACPI_OEM_TABLE_ID_SIZE, h->oem_table_id);
153} 153}
154 154
155ssize_t acpi_table_oem_revision_show(struct config_item *cfg, char *str) 155static ssize_t acpi_table_oem_revision_show(struct config_item *cfg, char *str)
156{ 156{
157 struct acpi_table_header *h = get_header(cfg); 157 struct acpi_table_header *h = get_header(cfg);
158 158
@@ -162,7 +162,8 @@ ssize_t acpi_table_oem_revision_show(struct config_item *cfg, char *str)
162 return sprintf(str, "%d\n", h->oem_revision); 162 return sprintf(str, "%d\n", h->oem_revision);
163} 163}
164 164
165ssize_t acpi_table_asl_compiler_id_show(struct config_item *cfg, char *str) 165static ssize_t acpi_table_asl_compiler_id_show(struct config_item *cfg,
166 char *str)
166{ 167{
167 struct acpi_table_header *h = get_header(cfg); 168 struct acpi_table_header *h = get_header(cfg);
168 169
@@ -172,8 +173,8 @@ ssize_t acpi_table_asl_compiler_id_show(struct config_item *cfg, char *str)
172 return sprintf(str, "%.*s\n", ACPI_NAME_SIZE, h->asl_compiler_id); 173 return sprintf(str, "%.*s\n", ACPI_NAME_SIZE, h->asl_compiler_id);
173} 174}
174 175
175ssize_t acpi_table_asl_compiler_revision_show(struct config_item *cfg, 176static ssize_t acpi_table_asl_compiler_revision_show(struct config_item *cfg,
176 char *str) 177 char *str)
177{ 178{
178 struct acpi_table_header *h = get_header(cfg); 179 struct acpi_table_header *h = get_header(cfg);
179 180
@@ -192,7 +193,7 @@ CONFIGFS_ATTR_RO(acpi_table_, oem_revision);
192CONFIGFS_ATTR_RO(acpi_table_, asl_compiler_id); 193CONFIGFS_ATTR_RO(acpi_table_, asl_compiler_id);
193CONFIGFS_ATTR_RO(acpi_table_, asl_compiler_revision); 194CONFIGFS_ATTR_RO(acpi_table_, asl_compiler_revision);
194 195
195struct configfs_attribute *acpi_table_attrs[] = { 196static struct configfs_attribute *acpi_table_attrs[] = {
196 &acpi_table_attr_signature, 197 &acpi_table_attr_signature,
197 &acpi_table_attr_length, 198 &acpi_table_attr_length,
198 &acpi_table_attr_revision, 199 &acpi_table_attr_revision,
@@ -232,7 +233,7 @@ static void acpi_table_drop_item(struct config_group *group,
232 acpi_tb_unload_table(table->index); 233 acpi_tb_unload_table(table->index);
233} 234}
234 235
235struct configfs_group_operations acpi_table_group_ops = { 236static struct configfs_group_operations acpi_table_group_ops = {
236 .make_item = acpi_table_make_item, 237 .make_item = acpi_table_make_item,
237 .drop_item = acpi_table_drop_item, 238 .drop_item = acpi_table_drop_item,
238}; 239};
diff --git a/drivers/acpi/pptt.c b/drivers/acpi/pptt.c
index ad31c50de3be..065c4fc245d1 100644
--- a/drivers/acpi/pptt.c
+++ b/drivers/acpi/pptt.c
@@ -209,6 +209,9 @@ static int acpi_pptt_leaf_node(struct acpi_table_header *table_hdr,
209 struct acpi_pptt_processor *cpu_node; 209 struct acpi_pptt_processor *cpu_node;
210 u32 proc_sz; 210 u32 proc_sz;
211 211
212 if (table_hdr->revision > 1)
213 return (node->flags & ACPI_PPTT_ACPI_LEAF_NODE);
214
212 table_end = (unsigned long)table_hdr + table_hdr->length; 215 table_end = (unsigned long)table_hdr + table_hdr->length;
213 node_entry = ACPI_PTR_DIFF(node, table_hdr); 216 node_entry = ACPI_PTR_DIFF(node, table_hdr);
214 entry = ACPI_ADD_PTR(struct acpi_subtable_header, table_hdr, 217 entry = ACPI_ADD_PTR(struct acpi_subtable_header, table_hdr,
diff --git a/drivers/acpi/sysfs.c b/drivers/acpi/sysfs.c
index 41324f0b1bee..fa76f5e41b5c 100644
--- a/drivers/acpi/sysfs.c
+++ b/drivers/acpi/sysfs.c
@@ -648,26 +648,29 @@ static void acpi_global_event_handler(u32 event_type, acpi_handle device,
648 } 648 }
649} 649}
650 650
651static int get_status(u32 index, acpi_event_status *status, 651static int get_status(u32 index, acpi_event_status *ret,
652 acpi_handle *handle) 652 acpi_handle *handle)
653{ 653{
654 int result; 654 acpi_status status;
655 655
656 if (index >= num_gpes + ACPI_NUM_FIXED_EVENTS) 656 if (index >= num_gpes + ACPI_NUM_FIXED_EVENTS)
657 return -EINVAL; 657 return -EINVAL;
658 658
659 if (index < num_gpes) { 659 if (index < num_gpes) {
660 result = acpi_get_gpe_device(index, handle); 660 status = acpi_get_gpe_device(index, handle);
661 if (result) { 661 if (ACPI_FAILURE(status)) {
662 ACPI_EXCEPTION((AE_INFO, AE_NOT_FOUND, 662 ACPI_EXCEPTION((AE_INFO, AE_NOT_FOUND,
663 "Invalid GPE 0x%x", index)); 663 "Invalid GPE 0x%x", index));
664 return result; 664 return -ENXIO;
665 } 665 }
666 result = acpi_get_gpe_status(*handle, index, status); 666 status = acpi_get_gpe_status(*handle, index, ret);
667 } else if (index < (num_gpes + ACPI_NUM_FIXED_EVENTS)) 667 } else {
668 result = acpi_get_event_status(index - num_gpes, status); 668 status = acpi_get_event_status(index - num_gpes, ret);
669 }
670 if (ACPI_FAILURE(status))
671 return -EIO;
669 672
670 return result; 673 return 0;
671} 674}
672 675
673static ssize_t counter_show(struct kobject *kobj, 676static ssize_t counter_show(struct kobject *kobj,