diff options
Diffstat (limited to 'drivers/acpi/executer/exfldio.c')
-rw-r--r-- | drivers/acpi/executer/exfldio.c | 65 |
1 files changed, 42 insertions, 23 deletions
diff --git a/drivers/acpi/executer/exfldio.c b/drivers/acpi/executer/exfldio.c index 9fe27fd04a2f..bd1af35f7fcf 100644 --- a/drivers/acpi/executer/exfldio.c +++ b/drivers/acpi/executer/exfldio.c | |||
@@ -94,9 +94,9 @@ acpi_ex_setup_region(union acpi_operand_object *obj_desc, | |||
94 | /* We must have a valid region */ | 94 | /* We must have a valid region */ |
95 | 95 | ||
96 | if (ACPI_GET_OBJECT_TYPE(rgn_desc) != ACPI_TYPE_REGION) { | 96 | if (ACPI_GET_OBJECT_TYPE(rgn_desc) != ACPI_TYPE_REGION) { |
97 | ACPI_REPORT_ERROR(("Needed Region, found type %X (%s)\n", | 97 | ACPI_ERROR((AE_INFO, "Needed Region, found type %X (%s)", |
98 | ACPI_GET_OBJECT_TYPE(rgn_desc), | 98 | ACPI_GET_OBJECT_TYPE(rgn_desc), |
99 | acpi_ut_get_object_type_name(rgn_desc))); | 99 | acpi_ut_get_object_type_name(rgn_desc))); |
100 | 100 | ||
101 | return_ACPI_STATUS(AE_AML_OPERAND_TYPE); | 101 | return_ACPI_STATUS(AE_AML_OPERAND_TYPE); |
102 | } | 102 | } |
@@ -161,14 +161,28 @@ acpi_ex_setup_region(union acpi_operand_object *obj_desc, | |||
161 | * than the region itself. For example, a region of length one | 161 | * than the region itself. For example, a region of length one |
162 | * byte, and a field with Dword access specified. | 162 | * byte, and a field with Dword access specified. |
163 | */ | 163 | */ |
164 | ACPI_REPORT_ERROR(("Field [%4.4s] access width (%d bytes) too large for region [%4.4s] (length %X)\n", acpi_ut_get_node_name(obj_desc->common_field.node), obj_desc->common_field.access_byte_width, acpi_ut_get_node_name(rgn_desc->region.node), rgn_desc->region.length)); | 164 | ACPI_ERROR((AE_INFO, |
165 | "Field [%4.4s] access width (%d bytes) too large for region [%4.4s] (length %X)", | ||
166 | acpi_ut_get_node_name(obj_desc-> | ||
167 | common_field.node), | ||
168 | obj_desc->common_field.access_byte_width, | ||
169 | acpi_ut_get_node_name(rgn_desc->region. | ||
170 | node), | ||
171 | rgn_desc->region.length)); | ||
165 | } | 172 | } |
166 | 173 | ||
167 | /* | 174 | /* |
168 | * Offset rounded up to next multiple of field width | 175 | * Offset rounded up to next multiple of field width |
169 | * exceeds region length, indicate an error | 176 | * exceeds region length, indicate an error |
170 | */ | 177 | */ |
171 | ACPI_REPORT_ERROR(("Field [%4.4s] Base+Offset+Width %X+%X+%X is beyond end of region [%4.4s] (length %X)\n", acpi_ut_get_node_name(obj_desc->common_field.node), obj_desc->common_field.base_byte_offset, field_datum_byte_offset, obj_desc->common_field.access_byte_width, acpi_ut_get_node_name(rgn_desc->region.node), rgn_desc->region.length)); | 178 | ACPI_ERROR((AE_INFO, |
179 | "Field [%4.4s] Base+Offset+Width %X+%X+%X is beyond end of region [%4.4s] (length %X)", | ||
180 | acpi_ut_get_node_name(obj_desc->common_field.node), | ||
181 | obj_desc->common_field.base_byte_offset, | ||
182 | field_datum_byte_offset, | ||
183 | obj_desc->common_field.access_byte_width, | ||
184 | acpi_ut_get_node_name(rgn_desc->region.node), | ||
185 | rgn_desc->region.length)); | ||
172 | 186 | ||
173 | return_ACPI_STATUS(AE_AML_REGION_LIMIT); | 187 | return_ACPI_STATUS(AE_AML_REGION_LIMIT); |
174 | } | 188 | } |
@@ -252,17 +266,17 @@ acpi_ex_access_region(union acpi_operand_object *obj_desc, | |||
252 | 266 | ||
253 | if (ACPI_FAILURE(status)) { | 267 | if (ACPI_FAILURE(status)) { |
254 | if (status == AE_NOT_IMPLEMENTED) { | 268 | if (status == AE_NOT_IMPLEMENTED) { |
255 | ACPI_REPORT_ERROR(("Region %s(%X) not implemented\n", | 269 | ACPI_ERROR((AE_INFO, |
256 | acpi_ut_get_region_name(rgn_desc-> | 270 | "Region %s(%X) not implemented", |
257 | region. | 271 | acpi_ut_get_region_name(rgn_desc->region. |
258 | space_id), | 272 | space_id), |
259 | rgn_desc->region.space_id)); | 273 | rgn_desc->region.space_id)); |
260 | } else if (status == AE_NOT_EXIST) { | 274 | } else if (status == AE_NOT_EXIST) { |
261 | ACPI_REPORT_ERROR(("Region %s(%X) has no handler\n", | 275 | ACPI_ERROR((AE_INFO, |
262 | acpi_ut_get_region_name(rgn_desc-> | 276 | "Region %s(%X) has no handler", |
263 | region. | 277 | acpi_ut_get_region_name(rgn_desc->region. |
264 | space_id), | 278 | space_id), |
265 | rgn_desc->region.space_id)); | 279 | rgn_desc->region.space_id)); |
266 | } | 280 | } |
267 | } | 281 | } |
268 | 282 | ||
@@ -495,8 +509,8 @@ acpi_ex_field_datum_io(union acpi_operand_object *obj_desc, | |||
495 | 509 | ||
496 | default: | 510 | default: |
497 | 511 | ||
498 | ACPI_REPORT_ERROR(("Wrong object type in field I/O %X\n", | 512 | ACPI_ERROR((AE_INFO, "Wrong object type in field I/O %X", |
499 | ACPI_GET_OBJECT_TYPE(obj_desc))); | 513 | ACPI_GET_OBJECT_TYPE(obj_desc))); |
500 | status = AE_AML_INTERNAL; | 514 | status = AE_AML_INTERNAL; |
501 | break; | 515 | break; |
502 | } | 516 | } |
@@ -599,10 +613,11 @@ acpi_ex_write_with_update_rule(union acpi_operand_object *obj_desc, | |||
599 | 613 | ||
600 | default: | 614 | default: |
601 | 615 | ||
602 | ACPI_REPORT_ERROR(("Unknown update_rule value: %X\n", | 616 | ACPI_ERROR((AE_INFO, |
603 | (obj_desc->common_field. | 617 | "Unknown update_rule value: %X", |
604 | field_flags & | 618 | (obj_desc->common_field. |
605 | AML_FIELD_UPDATE_RULE_MASK))); | 619 | field_flags & |
620 | AML_FIELD_UPDATE_RULE_MASK))); | ||
606 | return_ACPI_STATUS(AE_AML_OPERAND_VALUE); | 621 | return_ACPI_STATUS(AE_AML_OPERAND_VALUE); |
607 | } | 622 | } |
608 | } | 623 | } |
@@ -657,7 +672,9 @@ acpi_ex_extract_from_field(union acpi_operand_object *obj_desc, | |||
657 | 672 | ||
658 | if (buffer_length < | 673 | if (buffer_length < |
659 | ACPI_ROUND_BITS_UP_TO_BYTES(obj_desc->common_field.bit_length)) { | 674 | ACPI_ROUND_BITS_UP_TO_BYTES(obj_desc->common_field.bit_length)) { |
660 | ACPI_REPORT_ERROR(("Field size %X (bits) is too large for buffer (%X)\n", obj_desc->common_field.bit_length, buffer_length)); | 675 | ACPI_ERROR((AE_INFO, |
676 | "Field size %X (bits) is too large for buffer (%X)", | ||
677 | obj_desc->common_field.bit_length, buffer_length)); | ||
661 | 678 | ||
662 | return_ACPI_STATUS(AE_BUFFER_OVERFLOW); | 679 | return_ACPI_STATUS(AE_BUFFER_OVERFLOW); |
663 | } | 680 | } |
@@ -769,7 +786,9 @@ acpi_ex_insert_into_field(union acpi_operand_object *obj_desc, | |||
769 | 786 | ||
770 | if (buffer_length < | 787 | if (buffer_length < |
771 | ACPI_ROUND_BITS_UP_TO_BYTES(obj_desc->common_field.bit_length)) { | 788 | ACPI_ROUND_BITS_UP_TO_BYTES(obj_desc->common_field.bit_length)) { |
772 | ACPI_REPORT_ERROR(("Field size %X (bits) is too large for buffer (%X)\n", obj_desc->common_field.bit_length, buffer_length)); | 789 | ACPI_ERROR((AE_INFO, |
790 | "Field size %X (bits) is too large for buffer (%X)", | ||
791 | obj_desc->common_field.bit_length, buffer_length)); | ||
773 | 792 | ||
774 | return_ACPI_STATUS(AE_BUFFER_OVERFLOW); | 793 | return_ACPI_STATUS(AE_BUFFER_OVERFLOW); |
775 | } | 794 | } |