From: Haibo Chen <haibo.chen@nxp.com>
fxls8974cf is similar with fxls8962af, the only difference is the device id
change to 0x86.
Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
Reviewed-by: Clark Wang <xiaoning.wang@nxp.com>
Signed-off-by: Frank Li <Frank.Li@nxp.com>
---
drivers/iio/accel/fxls8962af-core.c | 7 +++++++
drivers/iio/accel/fxls8962af-i2c.c | 2 ++
drivers/iio/accel/fxls8962af.h | 1 +
3 files changed, 10 insertions(+)
diff --git a/drivers/iio/accel/fxls8962af-core.c b/drivers/iio/accel/fxls8962af-core.c
index f07fba17048e7..b5607e753a7db 100644
--- a/drivers/iio/accel/fxls8962af-core.c
+++ b/drivers/iio/accel/fxls8962af-core.c
@@ -129,6 +129,7 @@
#define FXLS8962AF_DEVICE_ID 0x62
#define FXLS8964AF_DEVICE_ID 0x84
+#define FXLS8974CF_DEVICE_ID 0x86
/* Raw temp channel offset */
#define FXLS8962AF_TEMP_CENTER_VAL 25
@@ -766,6 +767,12 @@ static const struct fxls8962af_chip_info fxls_chip_info_table[] = {
.channels = fxls8962af_channels,
.num_channels = ARRAY_SIZE(fxls8962af_channels),
},
+ [fxls8974cf] = {
+ .chip_id = FXLS8974CF_DEVICE_ID,
+ .name = "fxls8974cf",
+ .channels = fxls8962af_channels,
+ .num_channels = ARRAY_SIZE(fxls8962af_channels),
+ },
};
static const struct iio_info fxls8962af_info = {
diff --git a/drivers/iio/accel/fxls8962af-i2c.c b/drivers/iio/accel/fxls8962af-i2c.c
index 1601246733083..ebdf6926db0a7 100644
--- a/drivers/iio/accel/fxls8962af-i2c.c
+++ b/drivers/iio/accel/fxls8962af-i2c.c
@@ -30,6 +30,7 @@ static int fxls8962af_probe(struct i2c_client *client)
static const struct i2c_device_id fxls8962af_id[] = {
{ "fxls8962af", fxls8962af },
{ "fxls8964af", fxls8964af },
+ { "fxls8974cf", fxls8974cf },
{}
};
MODULE_DEVICE_TABLE(i2c, fxls8962af_id);
@@ -37,6 +38,7 @@ MODULE_DEVICE_TABLE(i2c, fxls8962af_id);
static const struct of_device_id fxls8962af_of_match[] = {
{ .compatible = "nxp,fxls8962af" },
{ .compatible = "nxp,fxls8964af" },
+ { .compatible = "nxp,fxls8974cf" },
{}
};
MODULE_DEVICE_TABLE(of, fxls8962af_of_match);
diff --git a/drivers/iio/accel/fxls8962af.h b/drivers/iio/accel/fxls8962af.h
index 6eaa2803b26f0..733b69e01e1cc 100644
--- a/drivers/iio/accel/fxls8962af.h
+++ b/drivers/iio/accel/fxls8962af.h
@@ -11,6 +11,7 @@ struct device;
enum {
fxls8962af,
fxls8964af,
+ fxls8974cf,
};
int fxls8962af_core_probe(struct device *dev, struct regmap *regmap, int irq);
--
2.34.1
On Wed, Nov 13, 2024 at 12:54:41PM +0100, Frank Li wrote:
> From: Haibo Chen <haibo.chen@nxp.com>
>
> fxls8974cf is similar with fxls8962af, the only difference is the device id
> change to 0x86.
>
> Signed-off-by: Haibo Chen <haibo.chen@nxp.com>
> Reviewed-by: Clark Wang <xiaoning.wang@nxp.com>
> Signed-off-by: Frank Li <Frank.Li@nxp.com>
Reviewed-by: Sean Nyekjaer <sean@geanix.com>
> ---
> drivers/iio/accel/fxls8962af-core.c | 7 +++++++
> drivers/iio/accel/fxls8962af-i2c.c | 2 ++
> drivers/iio/accel/fxls8962af.h | 1 +
> 3 files changed, 10 insertions(+)
>
> diff --git a/drivers/iio/accel/fxls8962af-core.c b/drivers/iio/accel/fxls8962af-core.c
> index f07fba17048e7..b5607e753a7db 100644
> --- a/drivers/iio/accel/fxls8962af-core.c
> +++ b/drivers/iio/accel/fxls8962af-core.c
> @@ -129,6 +129,7 @@
>
> #define FXLS8962AF_DEVICE_ID 0x62
> #define FXLS8964AF_DEVICE_ID 0x84
> +#define FXLS8974CF_DEVICE_ID 0x86
>
> /* Raw temp channel offset */
> #define FXLS8962AF_TEMP_CENTER_VAL 25
> @@ -766,6 +767,12 @@ static const struct fxls8962af_chip_info fxls_chip_info_table[] = {
> .channels = fxls8962af_channels,
> .num_channels = ARRAY_SIZE(fxls8962af_channels),
> },
> + [fxls8974cf] = {
> + .chip_id = FXLS8974CF_DEVICE_ID,
> + .name = "fxls8974cf",
> + .channels = fxls8962af_channels,
> + .num_channels = ARRAY_SIZE(fxls8962af_channels),
> + },
> };
>
> static const struct iio_info fxls8962af_info = {
> diff --git a/drivers/iio/accel/fxls8962af-i2c.c b/drivers/iio/accel/fxls8962af-i2c.c
> index 1601246733083..ebdf6926db0a7 100644
> --- a/drivers/iio/accel/fxls8962af-i2c.c
> +++ b/drivers/iio/accel/fxls8962af-i2c.c
> @@ -30,6 +30,7 @@ static int fxls8962af_probe(struct i2c_client *client)
> static const struct i2c_device_id fxls8962af_id[] = {
> { "fxls8962af", fxls8962af },
> { "fxls8964af", fxls8964af },
> + { "fxls8974cf", fxls8974cf },
> {}
> };
> MODULE_DEVICE_TABLE(i2c, fxls8962af_id);
> @@ -37,6 +38,7 @@ MODULE_DEVICE_TABLE(i2c, fxls8962af_id);
> static const struct of_device_id fxls8962af_of_match[] = {
> { .compatible = "nxp,fxls8962af" },
> { .compatible = "nxp,fxls8964af" },
> + { .compatible = "nxp,fxls8974cf" },
> {}
> };
> MODULE_DEVICE_TABLE(of, fxls8962af_of_match);
> diff --git a/drivers/iio/accel/fxls8962af.h b/drivers/iio/accel/fxls8962af.h
> index 6eaa2803b26f0..733b69e01e1cc 100644
> --- a/drivers/iio/accel/fxls8962af.h
> +++ b/drivers/iio/accel/fxls8962af.h
> @@ -11,6 +11,7 @@ struct device;
> enum {
> fxls8962af,
> fxls8964af,
> + fxls8974cf,
> };
>
> int fxls8962af_core_probe(struct device *dev, struct regmap *regmap, int irq);
>
> --
> 2.34.1
>
© 2016 - 2026 Red Hat, Inc.