perf: qcom_l2_pmu: Refactor _UID handling to use acpi_dev_uid_to_integer()
authorAndy Shevchenko <andriy.shevchenko@linux.intel.com>
Tue, 13 Sep 2022 16:31:45 +0000 (19:31 +0300)
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>
Mon, 19 Sep 2022 16:34:42 +0000 (18:34 +0200)
ACPI utils provide acpi_dev_uid_to_integer() helper to extract _UID as
an integer. Use it instead of custom approach.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
drivers/perf/qcom_l2_pmu.c

index 30234c261b05c33b3616a4c98114dee478f64bbc..aaca6db7d8f6c47f24a43a4831031e4afca1a2c9 100644 (file)
@@ -840,16 +840,16 @@ static int l2_cache_pmu_probe_cluster(struct device *dev, void *data)
 {
        struct platform_device *pdev = to_platform_device(dev->parent);
        struct platform_device *sdev = to_platform_device(dev);
-       struct acpi_device *adev = ACPI_COMPANION(dev);
        struct l2cache_pmu *l2cache_pmu = data;
        struct cluster_pmu *cluster;
-       unsigned long fw_cluster_id;
+       u64 fw_cluster_id;
        int err;
        int irq;
 
-       if (!adev || kstrtoul(adev->pnp.unique_id, 10, &fw_cluster_id) < 0) {
+       err = acpi_dev_uid_to_integer(ACPI_COMPANION(dev), &fw_cluster_id);
+       if (err) {
                dev_err(&pdev->dev, "unable to read ACPI uid\n");
-               return -ENODEV;
+               return err;
        }
 
        cluster = devm_kzalloc(&pdev->dev, sizeof(*cluster), GFP_KERNEL);
@@ -879,7 +879,7 @@ static int l2_cache_pmu_probe_cluster(struct device *dev, void *data)
        }
 
        dev_info(&pdev->dev,
-               "Registered L2 cache PMU cluster %ld\n", fw_cluster_id);
+                "Registered L2 cache PMU cluster %lld\n", fw_cluster_id);
 
        spin_lock_init(&cluster->pmu_lock);