[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20220514164001.0ee0f49e@jic23-huawei>
Date: Sat, 14 May 2022 16:40:01 +0100
From: Jonathan Cameron <jic23@...nel.org>
To: LI Qingwu <Qing-wu.Li@...ca-geosystems.com.cn>
Cc: lars@...afoo.de, mchehab+huawei@...nel.org, ardeleanalex@...il.com,
linux-iio@...r.kernel.org, linux-kernel@...r.kernel.org,
robh+dt@...nel.org, mike.looijmans@...ic.nl,
devicetree@...r.kernel.org
Subject: Re: [PATCH V2 3/6] iio: accel: bmi088: modified the device name
On Tue, 10 May 2022 14:17:50 +0000
LI Qingwu <Qing-wu.Li@...ca-geosystems.com.cn> wrote:
> It is possible to have multiple sensors connected on the same platform,
> To support multiple sensors, the commit makes it possible to obtain the
> device name by reading the chip ID instead of the device-tree name.
> To be compatible with previous versions, renam bmi088a to bmi088-accel.
rename
This is technically a userspace ABI change. However, the value changed was a fallback
anyway, so number of cases where you would actually get it are very few.
Hence I'm not that worried about the change. I would add that it is an ABI change
and ideally figure out under what circumstances it matters (I 'think' it might be
when using fallback compatibles - but you should check).
>
> Signed-off-by: LI Qingwu <Qing-wu.Li@...ca-geosystems.com.cn>
> ---
> drivers/iio/accel/bmi088-accel-core.c | 6 +++---
> drivers/iio/accel/bmi088-accel-spi.c | 4 +---
> drivers/iio/accel/bmi088-accel.h | 2 +-
> 3 files changed, 5 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/iio/accel/bmi088-accel-core.c b/drivers/iio/accel/bmi088-accel-core.c
> index 8fee1d02e773..de2385e4dad5 100644
> --- a/drivers/iio/accel/bmi088-accel-core.c
> +++ b/drivers/iio/accel/bmi088-accel-core.c
> @@ -459,7 +459,7 @@ static const struct iio_chan_spec bmi088_accel_channels[] = {
>
> static const struct bmi088_accel_chip_info bmi088_accel_chip_info_tbl[] = {
> [0] = {
> - .name = "bmi088a",
> + .name = "bmi088-accel",
> .chip_id = 0x1E,
> .channels = bmi088_accel_channels,
> .num_channels = ARRAY_SIZE(bmi088_accel_channels),
> @@ -524,7 +524,7 @@ static int bmi088_accel_chip_init(struct bmi088_accel_data *data)
> }
>
> int bmi088_accel_core_probe(struct device *dev, struct regmap *regmap,
> - int irq, const char *name, bool block_supported)
> + int irq, bool block_supported)
> {
> struct bmi088_accel_data *data;
> struct iio_dev *indio_dev;
> @@ -545,7 +545,7 @@ int bmi088_accel_core_probe(struct device *dev, struct regmap *regmap,
>
> indio_dev->channels = data->chip_info->channels;
> indio_dev->num_channels = data->chip_info->num_channels;
> - indio_dev->name = name ? name : data->chip_info->name;
> + indio_dev->name = data->chip_info->name;
> indio_dev->available_scan_masks = bmi088_accel_scan_masks;
> indio_dev->modes = INDIO_DIRECT_MODE;
> indio_dev->info = &bmi088_accel_info;
> diff --git a/drivers/iio/accel/bmi088-accel-spi.c b/drivers/iio/accel/bmi088-accel-spi.c
> index dd1e3f6cf211..0fed0081e1fd 100644
> --- a/drivers/iio/accel/bmi088-accel-spi.c
> +++ b/drivers/iio/accel/bmi088-accel-spi.c
> @@ -42,7 +42,6 @@ static struct regmap_bus bmi088_regmap_bus = {
> static int bmi088_accel_probe(struct spi_device *spi)
> {
> struct regmap *regmap;
> - const struct spi_device_id *id = spi_get_device_id(spi);
>
> regmap = devm_regmap_init(&spi->dev, &bmi088_regmap_bus,
> spi, &bmi088_regmap_conf);
> @@ -52,8 +51,7 @@ static int bmi088_accel_probe(struct spi_device *spi)
> return PTR_ERR(regmap);
> }
>
> - return bmi088_accel_core_probe(&spi->dev, regmap, spi->irq, id->name,
> - true);
> + return bmi088_accel_core_probe(&spi->dev, regmap, spi->irq, true);
> }
>
> static int bmi088_accel_remove(struct spi_device *spi)
> diff --git a/drivers/iio/accel/bmi088-accel.h b/drivers/iio/accel/bmi088-accel.h
> index 5c25f16b672c..c32afe9606a8 100644
> --- a/drivers/iio/accel/bmi088-accel.h
> +++ b/drivers/iio/accel/bmi088-accel.h
> @@ -12,7 +12,7 @@ extern const struct regmap_config bmi088_regmap_conf;
> extern const struct dev_pm_ops bmi088_accel_pm_ops;
>
> int bmi088_accel_core_probe(struct device *dev, struct regmap *regmap, int irq,
> - const char *name, bool block_supported);
> + bool block_supported);
> int bmi088_accel_core_remove(struct device *dev);
>
> #endif /* BMI088_ACCEL_H */
Powered by blists - more mailing lists