iio: accel: kxcjk-1013: Replace a variant of iio_get_acpi_device_name_and_data()

IIO core (ACPI part) provides a generic helper that may be used in
the driver. Replace a variant of iio_get_acpi_device_name_and_data().

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://patch.msgid.link/20241024191200.229894-16-andriy.shevchenko@linux.intel.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
This commit is contained in:
Andy Shevchenko 2024-10-24 22:05:04 +03:00 committed by Jonathan Cameron
parent 5539c54b34
commit a58bab8047

View File

@ -1471,26 +1471,6 @@ static irqreturn_t kxcjk1013_data_rdy_trig_poll(int irq, void *private)
return IRQ_HANDLED;
}
static const char *kxcjk1013_match_acpi_device(struct device *dev,
const struct kx_chipset_info **info,
const char **label)
{
const struct acpi_device_id *id;
id = acpi_match_device(dev->driver->acpi_match_table, dev);
if (!id)
return NULL;
if (strcmp(id->id, "KIOX010A") == 0)
*label = "accel-display";
else if (strcmp(id->id, "KIOX020A") == 0)
*label = "accel-base";
*info = (const struct kx_chipset_info *)id->driver_data;
return dev_name(dev);
}
static int kxcjk1013_probe(struct i2c_client *client)
{
const struct i2c_device_id *id = i2c_client_get_device_id(client);
@ -1498,6 +1478,7 @@ static int kxcjk1013_probe(struct i2c_client *client)
struct kxcjk1013_data *data;
struct iio_dev *indio_dev;
struct kxcjk_1013_platform_data *pdata;
const void *ddata = NULL;
const char *name;
int ret;
@ -1540,15 +1521,17 @@ static int kxcjk1013_probe(struct i2c_client *client)
if (id) {
name = id->name;
data->info = (const struct kx_chipset_info *)(id->driver_data);
} else if (ACPI_HANDLE(&client->dev)) {
name = kxcjk1013_match_acpi_device(&client->dev, &data->info,
&indio_dev->label);
} else
} else {
name = iio_get_acpi_device_name_and_data(&client->dev, &ddata);
data->info = ddata;
if (data->info == &kxcj91008_kiox010a_info)
indio_dev->label = "accel-display";
else if (data->info == &kxcj91008_kiox020a_info)
indio_dev->label = "accel-base";
}
if (!name)
return -ENODEV;
if (!data->info)
return -EINVAL;
ret = kxcjk1013_chip_init(data);
if (ret < 0)
return ret;