diff options
Diffstat (limited to 'drivers/acpi/acpica/exconvrt.c')
-rw-r--r-- | drivers/acpi/acpica/exconvrt.c | 21 |
1 files changed, 9 insertions, 12 deletions
diff --git a/drivers/acpi/acpica/exconvrt.c b/drivers/acpi/acpica/exconvrt.c index 51d5f224f9fa..bda7aed0404b 100644 --- a/drivers/acpi/acpica/exconvrt.c +++ b/drivers/acpi/acpica/exconvrt.c | |||
@@ -5,7 +5,7 @@ | |||
5 | *****************************************************************************/ | 5 | *****************************************************************************/ |
6 | 6 | ||
7 | /* | 7 | /* |
8 | * Copyright (C) 2000 - 2008, Intel Corp. | 8 | * Copyright (C) 2000 - 2010, Intel Corp. |
9 | * All rights reserved. | 9 | * All rights reserved. |
10 | * | 10 | * |
11 | * Redistribution and use in source and binary forms, with or without | 11 | * Redistribution and use in source and binary forms, with or without |
@@ -51,8 +51,7 @@ ACPI_MODULE_NAME("exconvrt") | |||
51 | 51 | ||
52 | /* Local prototypes */ | 52 | /* Local prototypes */ |
53 | static u32 | 53 | static u32 |
54 | acpi_ex_convert_to_ascii(acpi_integer integer, | 54 | acpi_ex_convert_to_ascii(u64 integer, u16 base, u8 *string, u8 max_length); |
55 | u16 base, u8 * string, u8 max_length); | ||
56 | 55 | ||
57 | /******************************************************************************* | 56 | /******************************************************************************* |
58 | * | 57 | * |
@@ -75,7 +74,7 @@ acpi_ex_convert_to_integer(union acpi_operand_object *obj_desc, | |||
75 | { | 74 | { |
76 | union acpi_operand_object *return_desc; | 75 | union acpi_operand_object *return_desc; |
77 | u8 *pointer; | 76 | u8 *pointer; |
78 | acpi_integer result; | 77 | u64 result; |
79 | u32 i; | 78 | u32 i; |
80 | u32 count; | 79 | u32 count; |
81 | acpi_status status; | 80 | acpi_status status; |
@@ -155,7 +154,7 @@ acpi_ex_convert_to_integer(union acpi_operand_object *obj_desc, | |||
155 | * Little endian is used, meaning that the first byte of the buffer | 154 | * Little endian is used, meaning that the first byte of the buffer |
156 | * is the LSB of the integer | 155 | * is the LSB of the integer |
157 | */ | 156 | */ |
158 | result |= (((acpi_integer) pointer[i]) << (i * 8)); | 157 | result |= (((u64) pointer[i]) << (i * 8)); |
159 | } | 158 | } |
160 | break; | 159 | break; |
161 | 160 | ||
@@ -285,10 +284,9 @@ acpi_ex_convert_to_buffer(union acpi_operand_object *obj_desc, | |||
285 | ******************************************************************************/ | 284 | ******************************************************************************/ |
286 | 285 | ||
287 | static u32 | 286 | static u32 |
288 | acpi_ex_convert_to_ascii(acpi_integer integer, | 287 | acpi_ex_convert_to_ascii(u64 integer, u16 base, u8 *string, u8 data_width) |
289 | u16 base, u8 * string, u8 data_width) | ||
290 | { | 288 | { |
291 | acpi_integer digit; | 289 | u64 digit; |
292 | u32 i; | 290 | u32 i; |
293 | u32 j; | 291 | u32 j; |
294 | u32 k = 0; | 292 | u32 k = 0; |
@@ -531,10 +529,9 @@ acpi_ex_convert_to_string(union acpi_operand_object * obj_desc, | |||
531 | * (separated by commas or spaces) | 529 | * (separated by commas or spaces) |
532 | */ | 530 | */ |
533 | for (i = 0; i < obj_desc->buffer.length; i++) { | 531 | for (i = 0; i < obj_desc->buffer.length; i++) { |
534 | new_buf += acpi_ex_convert_to_ascii((acpi_integer) | 532 | new_buf += acpi_ex_convert_to_ascii((u64) obj_desc-> |
535 | obj_desc->buffer. | 533 | buffer.pointer[i], |
536 | pointer[i], base, | 534 | base, new_buf, 1); |
537 | new_buf, 1); | ||
538 | *new_buf++ = separator; /* each separated by a comma or space */ | 535 | *new_buf++ = separator; /* each separated by a comma or space */ |
539 | } | 536 | } |
540 | 537 | ||