From: Greg Kroah-Hartman Date: Wed, 27 Mar 2024 16:50:56 +0000 (+0100) Subject: drop iio patch from 6.6 and 6.7 X-Git-Tag: v6.7.12~188 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=dee846b78a0191b0b9b4877f27527b8ff2897e53;p=thirdparty%2Fkernel%2Fstable-queue.git drop iio patch from 6.6 and 6.7 --- diff --git a/queue-6.6/iio-pressure-fixes-bmp38x-and-bmp390-spi-support.patch b/queue-6.6/iio-pressure-fixes-bmp38x-and-bmp390-spi-support.patch deleted file mode 100644 index f5ccf0151e0..00000000000 --- a/queue-6.6/iio-pressure-fixes-bmp38x-and-bmp390-spi-support.patch +++ /dev/null @@ -1,111 +0,0 @@ -From a9dd9ba323114f366eb07f1d9630822f8df6cbb2 Mon Sep 17 00:00:00 2001 -From: Vasileios Amoiridis -Date: Mon, 19 Feb 2024 20:13:59 +0100 -Subject: iio: pressure: Fixes BMP38x and BMP390 SPI support - -From: Vasileios Amoiridis - -commit a9dd9ba323114f366eb07f1d9630822f8df6cbb2 upstream. - -According to the datasheet of BMP38x and BMP390 devices, for an SPI -read operation the first byte that is returned needs to be dropped, -and the rest of the bytes are the actual data returned from the -sensor. - -Reviewed-by: Andy Shevchenko -Fixes: 8d329309184d ("iio: pressure: bmp280: Add support for BMP380 sensor family") -Signed-off-by: Vasileios Amoiridis -Acked-by: Angel Iglesias -Link: https://lore.kernel.org/r/20240219191359.18367-1-vassilisamir@gmail.com -Cc: -Signed-off-by: Jonathan Cameron -Signed-off-by: Greg Kroah-Hartman ---- - drivers/iio/pressure/bmp280-spi.c | 50 +++++++++++++++++++++++++++++++++++++- - 1 file changed, 49 insertions(+), 1 deletion(-) - ---- a/drivers/iio/pressure/bmp280-spi.c -+++ b/drivers/iio/pressure/bmp280-spi.c -@@ -4,6 +4,7 @@ - * - * Inspired by the older BMP085 driver drivers/misc/bmp085-spi.c - */ -+#include - #include - #include - #include -@@ -37,6 +38,34 @@ static int bmp280_regmap_spi_read(void * - return spi_write_then_read(spi, reg, reg_size, val, val_size); - } - -+static int bmp380_regmap_spi_read(void *context, const void *reg, -+ size_t reg_size, void *val, size_t val_size) -+{ -+ struct spi_device *spi = to_spi_device(context); -+ u8 rx_buf[4]; -+ ssize_t status; -+ -+ /* -+ * Maximum number of consecutive bytes read for a temperature or -+ * pressure measurement is 3. -+ */ -+ if (val_size > 3) -+ return -EINVAL; -+ -+ /* -+ * According to the BMP3xx datasheets, for a basic SPI read opertion, -+ * the first byte needs to be dropped and the rest are the requested -+ * data. -+ */ -+ status = spi_write_then_read(spi, reg, 1, rx_buf, val_size + 1); -+ if (status) -+ return status; -+ -+ memcpy(val, rx_buf + 1, val_size); -+ -+ return 0; -+} -+ - static struct regmap_bus bmp280_regmap_bus = { - .write = bmp280_regmap_spi_write, - .read = bmp280_regmap_spi_read, -@@ -44,10 +73,19 @@ static struct regmap_bus bmp280_regmap_b - .val_format_endian_default = REGMAP_ENDIAN_BIG, - }; - -+static struct regmap_bus bmp380_regmap_bus = { -+ .write = bmp280_regmap_spi_write, -+ .read = bmp380_regmap_spi_read, -+ .read_flag_mask = BIT(7), -+ .reg_format_endian_default = REGMAP_ENDIAN_BIG, -+ .val_format_endian_default = REGMAP_ENDIAN_BIG, -+}; -+ - static int bmp280_spi_probe(struct spi_device *spi) - { - const struct spi_device_id *id = spi_get_device_id(spi); - const struct bmp280_chip_info *chip_info; -+ struct regmap_bus *bmp_regmap_bus; - struct regmap *regmap; - int ret; - -@@ -62,8 +100,18 @@ static int bmp280_spi_probe(struct spi_d - if (!chip_info) - chip_info = (const struct bmp280_chip_info *) id->driver_data; - -+ switch (chip_info->chip_id[0]) { -+ case BMP380_CHIP_ID: -+ case BMP390_CHIP_ID: -+ bmp_regmap_bus = &bmp380_regmap_bus; -+ break; -+ default: -+ bmp_regmap_bus = &bmp280_regmap_bus; -+ break; -+ } -+ - regmap = devm_regmap_init(&spi->dev, -- &bmp280_regmap_bus, -+ bmp_regmap_bus, - &spi->dev, - chip_info->regmap_config); - if (IS_ERR(regmap)) { diff --git a/queue-6.6/series b/queue-6.6/series index 75c6b1f1a29..fe2f89407c7 100644 --- a/queue-6.6/series +++ b/queue-6.6/series @@ -239,7 +239,6 @@ tee-optee-fix-kernel-panic-caused-by-incorrect-error-handling.patch arm-imx_v6_v7_defconfig-restore-config_backlight_class_device.patch mm-vmscan-prevent-infinite-loop-for-costly-gfp_noio-__gfp_retry_mayfail-allocations.patch arm64-dts-qcom-sc8280xp-x13s-limit-pcie4-link-speed.patch -iio-pressure-fixes-bmp38x-and-bmp390-spi-support.patch iio-accel-adxl367-fix-devid-read-after-reset.patch iio-accel-adxl367-fix-i2c-fifo-data-register.patch i2c-i801-avoid-potential-double-call-to-gpiod_remove_lookup_table.patch diff --git a/queue-6.7/iio-pressure-fixes-bmp38x-and-bmp390-spi-support.patch b/queue-6.7/iio-pressure-fixes-bmp38x-and-bmp390-spi-support.patch deleted file mode 100644 index f5ccf0151e0..00000000000 --- a/queue-6.7/iio-pressure-fixes-bmp38x-and-bmp390-spi-support.patch +++ /dev/null @@ -1,111 +0,0 @@ -From a9dd9ba323114f366eb07f1d9630822f8df6cbb2 Mon Sep 17 00:00:00 2001 -From: Vasileios Amoiridis -Date: Mon, 19 Feb 2024 20:13:59 +0100 -Subject: iio: pressure: Fixes BMP38x and BMP390 SPI support - -From: Vasileios Amoiridis - -commit a9dd9ba323114f366eb07f1d9630822f8df6cbb2 upstream. - -According to the datasheet of BMP38x and BMP390 devices, for an SPI -read operation the first byte that is returned needs to be dropped, -and the rest of the bytes are the actual data returned from the -sensor. - -Reviewed-by: Andy Shevchenko -Fixes: 8d329309184d ("iio: pressure: bmp280: Add support for BMP380 sensor family") -Signed-off-by: Vasileios Amoiridis -Acked-by: Angel Iglesias -Link: https://lore.kernel.org/r/20240219191359.18367-1-vassilisamir@gmail.com -Cc: -Signed-off-by: Jonathan Cameron -Signed-off-by: Greg Kroah-Hartman ---- - drivers/iio/pressure/bmp280-spi.c | 50 +++++++++++++++++++++++++++++++++++++- - 1 file changed, 49 insertions(+), 1 deletion(-) - ---- a/drivers/iio/pressure/bmp280-spi.c -+++ b/drivers/iio/pressure/bmp280-spi.c -@@ -4,6 +4,7 @@ - * - * Inspired by the older BMP085 driver drivers/misc/bmp085-spi.c - */ -+#include - #include - #include - #include -@@ -37,6 +38,34 @@ static int bmp280_regmap_spi_read(void * - return spi_write_then_read(spi, reg, reg_size, val, val_size); - } - -+static int bmp380_regmap_spi_read(void *context, const void *reg, -+ size_t reg_size, void *val, size_t val_size) -+{ -+ struct spi_device *spi = to_spi_device(context); -+ u8 rx_buf[4]; -+ ssize_t status; -+ -+ /* -+ * Maximum number of consecutive bytes read for a temperature or -+ * pressure measurement is 3. -+ */ -+ if (val_size > 3) -+ return -EINVAL; -+ -+ /* -+ * According to the BMP3xx datasheets, for a basic SPI read opertion, -+ * the first byte needs to be dropped and the rest are the requested -+ * data. -+ */ -+ status = spi_write_then_read(spi, reg, 1, rx_buf, val_size + 1); -+ if (status) -+ return status; -+ -+ memcpy(val, rx_buf + 1, val_size); -+ -+ return 0; -+} -+ - static struct regmap_bus bmp280_regmap_bus = { - .write = bmp280_regmap_spi_write, - .read = bmp280_regmap_spi_read, -@@ -44,10 +73,19 @@ static struct regmap_bus bmp280_regmap_b - .val_format_endian_default = REGMAP_ENDIAN_BIG, - }; - -+static struct regmap_bus bmp380_regmap_bus = { -+ .write = bmp280_regmap_spi_write, -+ .read = bmp380_regmap_spi_read, -+ .read_flag_mask = BIT(7), -+ .reg_format_endian_default = REGMAP_ENDIAN_BIG, -+ .val_format_endian_default = REGMAP_ENDIAN_BIG, -+}; -+ - static int bmp280_spi_probe(struct spi_device *spi) - { - const struct spi_device_id *id = spi_get_device_id(spi); - const struct bmp280_chip_info *chip_info; -+ struct regmap_bus *bmp_regmap_bus; - struct regmap *regmap; - int ret; - -@@ -62,8 +100,18 @@ static int bmp280_spi_probe(struct spi_d - if (!chip_info) - chip_info = (const struct bmp280_chip_info *) id->driver_data; - -+ switch (chip_info->chip_id[0]) { -+ case BMP380_CHIP_ID: -+ case BMP390_CHIP_ID: -+ bmp_regmap_bus = &bmp380_regmap_bus; -+ break; -+ default: -+ bmp_regmap_bus = &bmp280_regmap_bus; -+ break; -+ } -+ - regmap = devm_regmap_init(&spi->dev, -- &bmp280_regmap_bus, -+ bmp_regmap_bus, - &spi->dev, - chip_info->regmap_config); - if (IS_ERR(regmap)) { diff --git a/queue-6.7/series b/queue-6.7/series index 3e5b9032502..5437436c7f3 100644 --- a/queue-6.7/series +++ b/queue-6.7/series @@ -279,7 +279,6 @@ tee-optee-fix-kernel-panic-caused-by-incorrect-error-handling.patch arm-imx_v6_v7_defconfig-restore-config_backlight_class_device.patch mm-vmscan-prevent-infinite-loop-for-costly-gfp_noio-__gfp_retry_mayfail-allocations.patch arm64-dts-qcom-sc8280xp-x13s-limit-pcie4-link-speed.patch -iio-pressure-fixes-bmp38x-and-bmp390-spi-support.patch iio-accel-adxl367-fix-devid-read-after-reset.patch iio-accel-adxl367-fix-i2c-fifo-data-register.patch i2c-i801-fix-using-mux_pdev-before-it-s-set.patch