mmc: sdhci-pci: Switch to use acpi_evaluate_dsm_typed()
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Mon, 2 Oct 2023 13:51:03 +0000 (16:51 +0300)
committerUlf Hansson <ulf.hansson@linaro.org>
Tue, 10 Oct 2023 13:46:14 +0000 (15:46 +0200)
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>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Link: https://lore.kernel.org/r/20231002135103.2602847-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
drivers/mmc/host/sdhci-pci-core.c

index 7c14feb5db770260076eaccd02e2ef286d4b11ec..025b31aa712caa13fb16c7038fbe92122d3d2912 100644 (file)
@@ -483,11 +483,12 @@ static int __intel_dsm(struct intel_host *intel_host, struct device *dev,
        int err = 0;
        size_t len;
 
-       obj = acpi_evaluate_dsm(ACPI_HANDLE(dev), &intel_dsm_guid, 0, fn, NULL);
+       obj = acpi_evaluate_dsm_typed(ACPI_HANDLE(dev), &intel_dsm_guid, 0, fn, NULL,
+                                     ACPI_TYPE_BUFFER);
        if (!obj)
                return -EOPNOTSUPP;
 
-       if (obj->type != ACPI_TYPE_BUFFER || obj->buffer.length < 1) {
+       if (obj->buffer.length < 1) {
                err = -EINVAL;
                goto out;
        }