2024-04-04 20:38:53

by Andy Shevchenko

[permalink] [raw]
Subject: [PATCH v2 1/1] drivers/perf: thunderx2_pmu: Replace open coded acpi_match_acpi_device()

Replace open coded acpi_match_acpi_device() in get_tx2_pmu_type().

Signed-off-by: Andy Shevchenko <[email protected]>
---

v2:
switched to acpi_match_acpi_device() which is newer API suitable for this case

drivers/perf/thunderx2_pmu.c | 19 +++++++------------
1 file changed, 7 insertions(+), 12 deletions(-)

diff --git a/drivers/perf/thunderx2_pmu.c b/drivers/perf/thunderx2_pmu.c
index e16d10c763de..f03aa85072ec 100644
--- a/drivers/perf/thunderx2_pmu.c
+++ b/drivers/perf/thunderx2_pmu.c
@@ -504,24 +504,19 @@ static void tx2_uncore_event_update(struct perf_event *event)

static enum tx2_uncore_type get_tx2_pmu_type(struct acpi_device *adev)
{
- int i = 0;
- struct acpi_tx2_pmu_device {
- __u8 id[ACPI_ID_LEN];
- enum tx2_uncore_type type;
- } devices[] = {
+ struct acpi_device_id devices[] = {
{"CAV901D", PMU_TYPE_L3C},
{"CAV901F", PMU_TYPE_DMC},
{"CAV901E", PMU_TYPE_CCPI2},
- {"", PMU_TYPE_INVALID}
+ {}
};
+ const struct acpi_device_id *id;

- while (devices[i].type != PMU_TYPE_INVALID) {
- if (!strcmp(acpi_device_hid(adev), devices[i].id))
- break;
- i++;
- }
+ id = acpi_match_acpi_device(devices, adev);
+ if (!id)
+ return PMU_TYPE_INVALID;

- return devices[i].type;
+ return (enum tx2_uncore_type)id->driver_data;
}

static bool tx2_uncore_validate_event(struct pmu *pmu,
--
2.43.0.rc1.1.gbec44491f096



2024-04-09 16:59:56

by Will Deacon

[permalink] [raw]
Subject: Re: [PATCH v2 1/1] drivers/perf: thunderx2_pmu: Replace open coded acpi_match_acpi_device()

On Thu, 04 Apr 2024 19:59:23 +0300, Andy Shevchenko wrote:
> Replace open coded acpi_match_acpi_device() in get_tx2_pmu_type().
>
>

Applied to will (for-next/perf), thanks!

[1/1] drivers/perf: thunderx2_pmu: Replace open coded acpi_match_acpi_device()
https://git.kernel.org/will/c/105350fe0786

Cheers,
--
Will

https://fixes.arm64.dev
https://next.arm64.dev
https://will.arm64.dev