ACPI: NFIT: Switch to use acpi_evaluate_dsm_typed()
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Mon, 2 Oct 2023 13:54:58 +0000 (16:54 +0300)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Fri, 2 Feb 2024 16:31:50 +0000 (17:31 +0100)
The acpi_evaluate_dsm_typed() provides a way to check the type of the
object evaluated by _DSM call. Use it instead of open coded variant.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Dave Jiang <dave.jiang@intel.com>
Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/acpi/nfit/core.c

index 802f8a5..d4595d1 100644 (file)
@@ -1737,9 +1737,8 @@ __weak void nfit_intel_shutdown_status(struct nfit_mem *nfit_mem)
        if ((nfit_mem->dsm_mask & (1 << func)) == 0)
                return;
 
-       out_obj = acpi_evaluate_dsm(handle, guid, revid, func, &in_obj);
-       if (!out_obj || out_obj->type != ACPI_TYPE_BUFFER
-                       || out_obj->buffer.length < sizeof(smart)) {
+       out_obj = acpi_evaluate_dsm_typed(handle, guid, revid, func, &in_obj, ACPI_TYPE_BUFFER);
+       if (!out_obj || out_obj->buffer.length < sizeof(smart)) {
                dev_dbg(dev->parent, "%s: failed to retrieve initial health\n",
                                dev_name(dev));
                ACPI_FREE(out_obj);