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

Sasha Levin
2025-01-13T23:09:03Z

[ Sasha's backport helper bot ]

Hi,

Found matching upstream commit: c0f866de4ce447bca3191b9cefac60c4b36a7922

WARNING: Author mismatch between patch and found commit:
Backport author: inv.git-commit@tdk.com
Commit author: Jean-Baptiste Maneyrol<jean-baptiste.maneyrol@tdk.com>

Status in newer kernel trees:
6.12.y | Not found
6.6.y | Not found

Note: The patch differs from the upstream commit:
---
1: c0f866de4ce4 ! 1: ab66552ae37a iio: imu: inv_icm42600: fix spi burst write not supported
@@ Commit message
Signed-off-by: Jean-Baptiste Maneyrol <jean-baptiste.maneyrol@tdk.com>
Link: https://patch.msgid.link/20241112-inv-icm42600-fix-spi-burst-write-not-supported-v2-1-97690dc03607@tdk.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
+ (cherry picked from commit c0f866de4ce447bca3191b9cefac60c4b36a7922)

## drivers/iio/imu/inv_icm42600/inv_icm42600.h ##
-@@ drivers/iio/imu/inv_icm42600/inv_icm42600.h: struct inv_icm42600_sensor_state {
+@@ drivers/iio/imu/inv_icm42600/inv_icm42600.h: struct inv_icm42600_state {
typedef int (*inv_icm42600_bus_setup)(struct inv_icm42600_state *);

extern const struct regmap_config inv_icm42600_regmap_config;
@@ drivers/iio/imu/inv_icm42600/inv_icm42600.h: struct inv_icm42600_sensor_state {
## drivers/iio/imu/inv_icm42600/inv_icm42600_core.c ##
@@ drivers/iio/imu/inv_icm42600/inv_icm42600_core.c: const struct regmap_config inv_icm42600_regmap_config = {
};
- EXPORT_SYMBOL_NS_GPL(inv_icm42600_regmap_config, "IIO_ICM42600");
+ EXPORT_SYMBOL_NS_GPL(inv_icm42600_regmap_config, IIO_ICM42600);

+/* define specific regmap for SPI not supporting burst write */
+const struct regmap_config inv_icm42600_spi_regmap_config = {
---

Results of testing on various branches:

| Branch | Patch Apply | Build Test |
|---------------------------|-------------|------------|
| stable/linux-6.6.y | Success | Failed |

Build Errors:
Build error for stable/linux-6.6.y:
lib/test_dhry.o: warning: objtool: dhry() falls through to next function dhry_run_set.cold()
drivers/iio/imu/inv_icm42600/inv_icm42600_core.c:54:27: error: 'inv_icm42600_regmap_volatile_accesses' undeclared here (not in a function)
54 | .volatile_table = inv_icm42600_regmap_volatile_accesses,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/iio/imu/inv_icm42600/inv_icm42600_core.c:55:27: error: 'inv_icm42600_regmap_rd_noinc_accesses' undeclared here (not in a function); did you mean 'inv_icm42600_regmap_ranges'?
55 | .rd_noinc_table = inv_icm42600_regmap_rd_noinc_accesses,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| inv_icm42600_regmap_ranges
make[6]: *** [scripts/Makefile.build:243: drivers/iio/imu/inv_icm42600/inv_icm42600_core.o] Error 1
make[6]: Target 'drivers/iio/imu/inv_icm42600/' not remade because of errors.
make[5]: *** [scripts/Makefile.build:480: drivers/iio/imu/inv_icm42600] Error 2
make[5]: Target 'drivers/iio/imu/' not remade because of errors.
make[4]: *** [scripts/Makefile.build:480: drivers/iio/imu] Error 2
make[4]: Target 'drivers/iio/' not remade because of errors.
make[3]: *** [scripts/Makefile.build:480: drivers/iio] Error 2
make[3]: Target 'drivers/' not remade because of errors.
make[2]: *** [scripts/Makefile.build:480: drivers] Error 2
make[2]: Target './' not remade because of errors.
make[1]: *** [/home/sasha/build/linus-next/Makefile:1921: .] Error 2
make[1]: Target '__all' not remade because of errors.
make: *** [Makefile:234: __sub-make] Error 2
make: Target '__all' not remade because of errors.