Re: [PATCH 5.15.y] iio: imu: inv_icm42600: fix spi burst write not supported

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jan 13, 2025 at 01:19:18PM +0000, inv.git-commit@xxxxxxx wrote:
> From: Jean-Baptiste Maneyrol <jean-baptiste.maneyrol@xxxxxxx>
> 
> Burst write with SPI is not working for all icm42600 chips. It was
> only used for setting user offsets with regmap_bulk_write.
> 
> Add specific SPI regmap config for using only single write with SPI.
> 
> Fixes: 9f9ff91b775b ("iio: imu: inv_icm42600: add SPI driver for inv_icm42600 driver")
> Cc: stable@xxxxxxxxxxxxxxx
> Signed-off-by: Jean-Baptiste Maneyrol <jean-baptiste.maneyrol@xxxxxxx>
> Link: https://patch.msgid.link/20241112-inv-icm42600-fix-spi-burst-write-not-supported-v2-1-97690dc03607@xxxxxxx
> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
> (cherry picked from commit c0f866de4ce447bca3191b9cefac60c4b36a7922)
> ---
>  drivers/iio/imu/inv_icm42600/inv_icm42600.h      |  1 +
>  drivers/iio/imu/inv_icm42600/inv_icm42600_core.c | 12 ++++++++++++
>  drivers/iio/imu/inv_icm42600/inv_icm42600_spi.c  |  3 ++-
>  3 files changed, 15 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/iio/imu/inv_icm42600/inv_icm42600.h b/drivers/iio/imu/inv_icm42600/inv_icm42600.h
> index 995a9dc06521..f5df2e13b063 100644
> --- a/drivers/iio/imu/inv_icm42600/inv_icm42600.h
> +++ b/drivers/iio/imu/inv_icm42600/inv_icm42600.h
> @@ -360,6 +360,7 @@ struct inv_icm42600_state {
>  typedef int (*inv_icm42600_bus_setup)(struct inv_icm42600_state *);
>  
>  extern const struct regmap_config inv_icm42600_regmap_config;
> +extern const struct regmap_config inv_icm42600_spi_regmap_config;
>  extern const struct dev_pm_ops inv_icm42600_pm_ops;
>  
>  const struct iio_mount_matrix *
> diff --git a/drivers/iio/imu/inv_icm42600/inv_icm42600_core.c b/drivers/iio/imu/inv_icm42600/inv_icm42600_core.c
> index ca85fccc9839..a562d7476955 100644
> --- a/drivers/iio/imu/inv_icm42600/inv_icm42600_core.c
> +++ b/drivers/iio/imu/inv_icm42600/inv_icm42600_core.c
> @@ -43,6 +43,18 @@ const struct regmap_config inv_icm42600_regmap_config = {
>  };
>  EXPORT_SYMBOL_GPL(inv_icm42600_regmap_config);
>  
> +/* define specific regmap for SPI not supporting burst write */
> +const struct regmap_config inv_icm42600_spi_regmap_config = {
> +	.name = "inv_icm42600",

Why does just this one have the .name field set?

I've taken the backports you did for the other branches here, if you
really need .name set please let me know.

thanks,

greg k-h




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux