]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
ACPICA: Utilities: Cleanup to enforce ACPI_PHYSADDR_TO_PTR()/ACPI_PTR_TO_PHYSADDR().
authorLv Zheng <lv.zheng@intel.com>
Mon, 13 Apr 2015 03:48:37 +0000 (11:48 +0800)
committerSasha Levin <sasha.levin@oracle.com>
Tue, 9 Jun 2015 17:43:41 +0000 (13:43 -0400)
[ Upstream commit 6d3fd3cc33d50e4c0d0c0bd172de02caaec3127c ]

ACPICA commit 154f6d074dd38d6ebc0467ad454454e6c5c9ecdf

There are code pieces converting pointers using "(acpi_physical_address) x"
or "ACPI_CAST_PTR (t, x)" formats, this patch cleans up them.

Known issues:
1. Cleanup of "(ACPI_PHYSICAL_ADDRRESS) x" for a table field
   For the conversions around the table fields, it is better to fix it with
   alignment also fixed. So this patch doesn't modify such code. There
   should be no functional problem by leaving them unchanged.

Link: https://github.com/acpica/acpica/commit/154f6d07
Signed-off-by: Lv Zheng <lv.zheng@intel.com>
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
drivers/acpi/acpica/dsopcode.c
drivers/acpi/acpica/tbdata.c
drivers/acpi/acpica/tbinstal.c

index 6c0759c0db470ab520be6accf81e66ee87ed6e58..cd2d98778405d23d1523bc5cc94bffb7670faa40 100644 (file)
@@ -539,8 +539,7 @@ acpi_ds_eval_table_region_operands(struct acpi_walk_state *walk_state,
                return_ACPI_STATUS(AE_NOT_EXIST);
        }
 
-       obj_desc->region.address =
-           (acpi_physical_address) ACPI_TO_INTEGER(table);
+       obj_desc->region.address = ACPI_PTR_TO_PHYSADDR(table);
        obj_desc->region.length = table->length;
 
        ACPI_DEBUG_PRINT((ACPI_DB_EXEC, "RgnObj %p Addr %8.8X%8.8X Len %X\n",
index f499c10ceb4a92549d651955ef8c038d77ac6d02..7d3dd1250398036b04f2e86778b6da2199a82c24 100644 (file)
@@ -113,9 +113,9 @@ acpi_tb_acquire_table(struct acpi_table_desc *table_desc,
        case ACPI_TABLE_ORIGIN_INTERNAL_VIRTUAL:
        case ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL:
 
-               table =
-                   ACPI_CAST_PTR(struct acpi_table_header,
-                                 table_desc->address);
+               table = ACPI_CAST_PTR(struct acpi_table_header,
+                                     ACPI_PHYSADDR_TO_PTR(table_desc->
+                                                          address));
                break;
 
        default:
@@ -214,7 +214,8 @@ acpi_tb_acquire_temp_table(struct acpi_table_desc *table_desc,
        case ACPI_TABLE_ORIGIN_INTERNAL_VIRTUAL:
        case ACPI_TABLE_ORIGIN_EXTERNAL_VIRTUAL:
 
-               table_header = ACPI_CAST_PTR(struct acpi_table_header, address);
+               table_header = ACPI_CAST_PTR(struct acpi_table_header,
+                                            ACPI_PHYSADDR_TO_PTR(address));
                if (!table_header) {
                        return (AE_NO_MEMORY);
                }
index c0b39f304ea38a2dcc14ec3e53c45abea9950a74..3c57ff2956c5ce4e5fb78a637f5f071c3dca970c 100644 (file)
@@ -188,7 +188,7 @@ acpi_tb_install_fixed_table(acpi_physical_address address,
                                            ACPI_TABLE_ORIGIN_INTERNAL_PHYSICAL);
        if (ACPI_FAILURE(status)) {
                ACPI_ERROR((AE_INFO, "Could not acquire table length at %p",
-                           ACPI_CAST_PTR(void, address)));
+                           ACPI_PHYSADDR_TO_PTR(address)));
                return_ACPI_STATUS(status);
        }
 
@@ -247,7 +247,7 @@ acpi_tb_install_standard_table(acpi_physical_address address,
        status = acpi_tb_acquire_temp_table(&new_table_desc, address, flags);
        if (ACPI_FAILURE(status)) {
                ACPI_ERROR((AE_INFO, "Could not acquire table length at %p",
-                           ACPI_CAST_PTR(void, address)));
+                           ACPI_PHYSADDR_TO_PTR(address)));
                return_ACPI_STATUS(status);
        }
 
@@ -259,8 +259,8 @@ acpi_tb_install_standard_table(acpi_physical_address address,
            acpi_gbl_disable_ssdt_table_install &&
            ACPI_COMPARE_NAME(&new_table_desc.signature, ACPI_SIG_SSDT)) {
                ACPI_INFO((AE_INFO, "Ignoring installation of %4.4s at %p",
-                          new_table_desc.signature.ascii, ACPI_CAST_PTR(void,
-                                                                        address)));
+                          new_table_desc.signature.ascii,
+                          ACPI_PHYSADDR_TO_PTR(address)));
                goto release_and_exit;
        }
 
@@ -516,7 +516,7 @@ void acpi_tb_uninstall_table(struct acpi_table_desc *table_desc)
 
        if ((table_desc->flags & ACPI_TABLE_ORIGIN_MASK) ==
            ACPI_TABLE_ORIGIN_INTERNAL_VIRTUAL) {
-               ACPI_FREE(ACPI_CAST_PTR(void, table_desc->address));
+               ACPI_FREE(ACPI_PHYSADDR_TO_PTR(table_desc->address));
        }
 
        table_desc->address = ACPI_PTR_TO_PHYSADDR(NULL);