lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
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