Commit 3d936dfe authored by Hans de Goede's avatar Hans de Goede Committed by Jonathan Cameron

iio: accel: da280: Add support for the DA217 accelerometer

The DA217 accelerometer is another DA280 compatible accelerometer,
add its device-ids to the da280 driver.
Reported-by: default avatarJuno Computers USA <usa@junocomputers.com>
Tested-by: default avatarJuno Computers USA <usa@junocomputers.com>
Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20230613094346.162551-1-hdegoede@redhat.comSigned-off-by: default avatarJonathan Cameron <Jonathan.Cameron@huawei.com>
parent 111e1abd
// SPDX-License-Identifier: GPL-2.0-only // SPDX-License-Identifier: GPL-2.0-only
/* /*
* IIO driver for the MiraMEMS DA280 3-axis accelerometer and * IIO driver for the MiraMEMS DA217 and DA280 3-axis accelerometer and
* IIO driver for the MiraMEMS DA226 2-axis accelerometer * IIO driver for the MiraMEMS DA226 2-axis accelerometer
* *
* Copyright (c) 2016 Hans de Goede <hdegoede@redhat.com> * Copyright (c) 2016 Hans de Goede <hdegoede@redhat.com>
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
#define DA280_MODE_ENABLE 0x1e #define DA280_MODE_ENABLE 0x1e
#define DA280_MODE_DISABLE 0x9e #define DA280_MODE_DISABLE 0x9e
enum da280_chipset { da226, da280 }; enum da280_chipset { da217, da226, da280 };
/* /*
* a value of + or -4096 corresponds to + or - 1G * a value of + or -4096 corresponds to + or - 1G
...@@ -134,7 +134,10 @@ static int da280_probe(struct i2c_client *client) ...@@ -134,7 +134,10 @@ static int da280_probe(struct i2c_client *client)
chip = id->driver_data; chip = id->driver_data;
} }
if (chip == da226) { if (chip == da217) {
indio_dev->name = "da217";
indio_dev->num_channels = 3;
} else if (chip == da226) {
indio_dev->name = "da226"; indio_dev->name = "da226";
indio_dev->num_channels = 2; indio_dev->num_channels = 2;
} else { } else {
...@@ -166,12 +169,14 @@ static int da280_resume(struct device *dev) ...@@ -166,12 +169,14 @@ static int da280_resume(struct device *dev)
static DEFINE_SIMPLE_DEV_PM_OPS(da280_pm_ops, da280_suspend, da280_resume); static DEFINE_SIMPLE_DEV_PM_OPS(da280_pm_ops, da280_suspend, da280_resume);
static const struct acpi_device_id da280_acpi_match[] = { static const struct acpi_device_id da280_acpi_match[] = {
{"NSA2513", da217},
{"MIRAACC", da280}, {"MIRAACC", da280},
{}, {},
}; };
MODULE_DEVICE_TABLE(acpi, da280_acpi_match); MODULE_DEVICE_TABLE(acpi, da280_acpi_match);
static const struct i2c_device_id da280_i2c_id[] = { static const struct i2c_device_id da280_i2c_id[] = {
{ "da217", da217 },
{ "da226", da226 }, { "da226", da226 },
{ "da280", da280 }, { "da280", da280 },
{} {}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment