drm/amdgpu/apci: switch ATIF/ATCS probe order
authorAlex Deucher <alexander.deucher@amd.com>
Thu, 20 May 2021 15:50:51 +0000 (11:50 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Fri, 21 May 2021 22:03:05 +0000 (18:03 -0400)
Try the handle from ATPX first since this is the most
common case.

Reviewed-by: Lijo Lazar <lijo.lazar@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c

index 67675ef..dcde3f6 100644 (file)
@@ -230,16 +230,15 @@ static acpi_handle amdgpu_atif_probe_handle(acpi_handle dhandle)
        /* For PX/HG systems, ATIF and ATPX are in the iGPU's namespace, on dGPU only
         * systems, ATIF is in the dGPU's namespace.
         */
-       status = acpi_get_handle(dhandle, "ATIF", &handle);
-       if (ACPI_SUCCESS(status))
-               goto out;
-
        if (amdgpu_has_atpx()) {
                status = acpi_get_handle(amdgpu_atpx_get_dhandle(), "ATIF",
                                         &handle);
                if (ACPI_SUCCESS(status))
                        goto out;
        }
+       status = acpi_get_handle(dhandle, "ATIF", &handle);
+       if (ACPI_SUCCESS(status))
+               goto out;
 
        DRM_DEBUG_DRIVER("No ATIF handle found\n");
        return NULL;
@@ -259,16 +258,15 @@ static acpi_handle amdgpu_atcs_probe_handle(acpi_handle dhandle)
        /* For PX/HG systems, ATCS and ATPX are in the iGPU's namespace, on dGPU only
         * systems, ATIF is in the dGPU's namespace.
         */
-       status = acpi_get_handle(dhandle, "ATCS", &handle);
-       if (ACPI_SUCCESS(status))
-               goto out;
-
        if (amdgpu_has_atpx()) {
                status = acpi_get_handle(amdgpu_atpx_get_dhandle(), "ATCS",
                                         &handle);
                if (ACPI_SUCCESS(status))
                        goto out;
        }
+       status = acpi_get_handle(dhandle, "ATCS", &handle);
+       if (ACPI_SUCCESS(status))
+               goto out;
 
        DRM_DEBUG_DRIVER("No ATCS handle found\n");
        return NULL;