aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/acpica/rscreate.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/acpi/acpica/rscreate.c')
-rw-r--r--drivers/acpi/acpica/rscreate.c15
1 files changed, 7 insertions, 8 deletions
diff --git a/drivers/acpi/acpica/rscreate.c b/drivers/acpi/acpica/rscreate.c
index 61566b1a0616..663f692fffcf 100644
--- a/drivers/acpi/acpica/rscreate.c
+++ b/drivers/acpi/acpica/rscreate.c
@@ -212,7 +212,7 @@ acpi_rs_create_pci_routing_table(union acpi_operand_object *package_object,
212 212
213 /* Each element of the top-level package must also be a package */ 213 /* Each element of the top-level package must also be a package */
214 214
215 if (ACPI_GET_OBJECT_TYPE(*top_object_list) != ACPI_TYPE_PACKAGE) { 215 if ((*top_object_list)->common.type != ACPI_TYPE_PACKAGE) {
216 ACPI_ERROR((AE_INFO, 216 ACPI_ERROR((AE_INFO,
217 "(PRT[%X]) Need sub-package, found %s", 217 "(PRT[%X]) Need sub-package, found %s",
218 index, 218 index,
@@ -240,7 +240,7 @@ acpi_rs_create_pci_routing_table(union acpi_operand_object *package_object,
240 /* 1) First subobject: Dereference the PRT.Address */ 240 /* 1) First subobject: Dereference the PRT.Address */
241 241
242 obj_desc = sub_object_list[0]; 242 obj_desc = sub_object_list[0];
243 if (ACPI_GET_OBJECT_TYPE(obj_desc) != ACPI_TYPE_INTEGER) { 243 if (obj_desc->common.type != ACPI_TYPE_INTEGER) {
244 ACPI_ERROR((AE_INFO, 244 ACPI_ERROR((AE_INFO,
245 "(PRT[%X].Address) Need Integer, found %s", 245 "(PRT[%X].Address) Need Integer, found %s",
246 index, 246 index,
@@ -253,7 +253,7 @@ acpi_rs_create_pci_routing_table(union acpi_operand_object *package_object,
253 /* 2) Second subobject: Dereference the PRT.Pin */ 253 /* 2) Second subobject: Dereference the PRT.Pin */
254 254
255 obj_desc = sub_object_list[1]; 255 obj_desc = sub_object_list[1];
256 if (ACPI_GET_OBJECT_TYPE(obj_desc) != ACPI_TYPE_INTEGER) { 256 if (obj_desc->common.type != ACPI_TYPE_INTEGER) {
257 ACPI_ERROR((AE_INFO, 257 ACPI_ERROR((AE_INFO,
258 "(PRT[%X].Pin) Need Integer, found %s", 258 "(PRT[%X].Pin) Need Integer, found %s",
259 index, 259 index,
@@ -265,7 +265,7 @@ acpi_rs_create_pci_routing_table(union acpi_operand_object *package_object,
265 * If BIOS erroneously reversed the _PRT source_name and source_index, 265 * If BIOS erroneously reversed the _PRT source_name and source_index,
266 * then reverse them back. 266 * then reverse them back.
267 */ 267 */
268 if (ACPI_GET_OBJECT_TYPE(sub_object_list[3]) != 268 if ((sub_object_list[3])->common.type !=
269 ACPI_TYPE_INTEGER) { 269 ACPI_TYPE_INTEGER) {
270 if (acpi_gbl_enable_interpreter_slack) { 270 if (acpi_gbl_enable_interpreter_slack) {
271 source_name_index = 3; 271 source_name_index = 3;
@@ -291,8 +291,7 @@ acpi_rs_create_pci_routing_table(union acpi_operand_object *package_object,
291 * other ACPI implementations. 291 * other ACPI implementations.
292 */ 292 */
293 obj_desc = sub_object_list[3]; 293 obj_desc = sub_object_list[3];
294 if (!obj_desc 294 if (!obj_desc || (obj_desc->common.type != ACPI_TYPE_INTEGER)) {
295 || (ACPI_GET_OBJECT_TYPE(obj_desc) != ACPI_TYPE_INTEGER)) {
296 sub_object_list[3] = sub_object_list[2]; 295 sub_object_list[3] = sub_object_list[2];
297 sub_object_list[2] = obj_desc; 296 sub_object_list[2] = obj_desc;
298 297
@@ -307,7 +306,7 @@ acpi_rs_create_pci_routing_table(union acpi_operand_object *package_object,
307 */ 306 */
308 obj_desc = sub_object_list[source_name_index]; 307 obj_desc = sub_object_list[source_name_index];
309 if (obj_desc) { 308 if (obj_desc) {
310 switch (ACPI_GET_OBJECT_TYPE(obj_desc)) { 309 switch (obj_desc->common.type) {
311 case ACPI_TYPE_LOCAL_REFERENCE: 310 case ACPI_TYPE_LOCAL_REFERENCE:
312 311
313 if (obj_desc->reference.class != 312 if (obj_desc->reference.class !=
@@ -380,7 +379,7 @@ acpi_rs_create_pci_routing_table(union acpi_operand_object *package_object,
380 /* 4) Fourth subobject: Dereference the PRT.source_index */ 379 /* 4) Fourth subobject: Dereference the PRT.source_index */
381 380
382 obj_desc = sub_object_list[source_index_index]; 381 obj_desc = sub_object_list[source_index_index];
383 if (ACPI_GET_OBJECT_TYPE(obj_desc) != ACPI_TYPE_INTEGER) { 382 if (obj_desc->common.type != ACPI_TYPE_INTEGER) {
384 ACPI_ERROR((AE_INFO, 383 ACPI_ERROR((AE_INFO,
385 "(PRT[%X].SourceIndex) Need Integer, found %s", 384 "(PRT[%X].SourceIndex) Need Integer, found %s",
386 index, 385 index,