+++ /dev/null
-From c34e2e2d67b3bb8d5a6d09b0d6dac845cdd13fb3 Mon Sep 17 00:00:00 2001
-From: Francesco Lavra <flavra@baylibre.com>
-Date: Mon, 1 Dec 2025 11:00:10 +0100
-Subject: iio: imu: st_lsm6dsx: fix iio_chan_spec for sensors without event detection
-
-From: Francesco Lavra <flavra@baylibre.com>
-
-commit c34e2e2d67b3bb8d5a6d09b0d6dac845cdd13fb3 upstream.
-
-The st_lsm6dsx_acc_channels array of struct iio_chan_spec has a non-NULL
-event_spec field, indicating support for IIO events. However, event
-detection is not supported for all sensors, and if userspace tries to
-configure accelerometer wakeup events on a sensor device that does not
-support them (e.g. LSM6DS0), st_lsm6dsx_write_event() dereferences a NULL
-pointer when trying to write to the wakeup register.
-Define an additional struct iio_chan_spec array whose members have a NULL
-event_spec field, and use this array instead of st_lsm6dsx_acc_channels for
-sensors without event detection capability.
-
-Fixes: b5969abfa8b8 ("iio: imu: st_lsm6dsx: add motion events")
-Signed-off-by: Francesco Lavra <flavra@baylibre.com>
-Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
-Acked-by: Lorenzo Bianconi <lorenzo@kernel.org>
-Cc: stable@vger.kernel.org
-Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c | 15 +++++++++++----
- 1 file changed, 11 insertions(+), 4 deletions(-)
-
---- a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c
-+++ b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c
-@@ -74,6 +74,13 @@ static const struct iio_chan_spec st_lsm
- IIO_CHAN_SOFT_TIMESTAMP(3),
- };
-
-+static const struct iio_chan_spec st_lsm6ds0_acc_channels[] = {
-+ ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x28, IIO_MOD_X, 0),
-+ ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x2a, IIO_MOD_Y, 1),
-+ ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x2c, IIO_MOD_Z, 2),
-+ IIO_CHAN_SOFT_TIMESTAMP(3),
-+};
-+
- static const struct iio_chan_spec st_lsm6dsx_gyro_channels[] = {
- ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x22, IIO_MOD_X, 0),
- ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x24, IIO_MOD_Y, 1),
-@@ -115,8 +122,8 @@ static const struct st_lsm6dsx_settings
- },
- .channels = {
- [ST_LSM6DSX_ID_ACC] = {
-- .chan = st_lsm6dsx_acc_channels,
-- .len = ARRAY_SIZE(st_lsm6dsx_acc_channels),
-+ .chan = st_lsm6ds0_acc_channels,
-+ .len = ARRAY_SIZE(st_lsm6ds0_acc_channels),
- },
- [ST_LSM6DSX_ID_GYRO] = {
- .chan = st_lsm6ds0_gyro_channels,
-@@ -1170,8 +1177,8 @@ static const struct st_lsm6dsx_settings
- },
- .channels = {
- [ST_LSM6DSX_ID_ACC] = {
-- .chan = st_lsm6dsx_acc_channels,
-- .len = ARRAY_SIZE(st_lsm6dsx_acc_channels),
-+ .chan = st_lsm6ds0_acc_channels,
-+ .len = ARRAY_SIZE(st_lsm6ds0_acc_channels),
- },
- [ST_LSM6DSX_ID_GYRO] = {
- .chan = st_lsm6dsx_gyro_channels,
+++ /dev/null
-From 4b2f16eb5ce1d71357997119313c5585b9fc193a Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Tue, 24 Aug 2021 18:00:56 +0800
-Subject: scsi: hisi_sas: Use managed PCI functions
-
-From: Xiang Chen <chenxiang66@hisilicon.com>
-
-[ Upstream commit 4f6094f1663e2ed26a940f1842cdaa15c1dd649a ]
-
-Use managed PCI functions such as pcim_enable_device() and
-pcim_iomap_regions() to simplify exception handling code.
-
-Link: https://lore.kernel.org/r/1629799260-120116-2-git-send-email-john.garry@huawei.com
-Signed-off-by: Xiang Chen <chenxiang66@hisilicon.com>
-Signed-off-by: John Garry <john.garry@huawei.com>
-Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
-Stable-dep-of: d5077426e1a7 ("drm/amd/pm: Don't clear SI SMC table when setting power limit")
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- drivers/scsi/hisi_sas/hisi_sas_v3_hw.c | 20 ++++++++------------
- 1 file changed, 8 insertions(+), 12 deletions(-)
-
-diff --git a/drivers/scsi/hisi_sas/hisi_sas_v3_hw.c b/drivers/scsi/hisi_sas/hisi_sas_v3_hw.c
-index fdd765d41f190..4da5f84d46358 100644
---- a/drivers/scsi/hisi_sas/hisi_sas_v3_hw.c
-+++ b/drivers/scsi/hisi_sas/hisi_sas_v3_hw.c
-@@ -510,6 +510,8 @@ struct hisi_sas_err_record_v3 {
- #define CHNL_INT_STS_INT2_MSK BIT(3)
- #define CHNL_WIDTH 4
-
-+#define BAR_NO_V3_HW 5
-+
- enum {
- DSM_FUNC_ERR_HANDLE_MSI = 0,
- };
-@@ -3259,15 +3261,15 @@ hisi_sas_v3_probe(struct pci_dev *pdev, const struct pci_device_id *id)
- struct sas_ha_struct *sha;
- int rc, phy_nr, port_nr, i;
-
-- rc = pci_enable_device(pdev);
-+ rc = pcim_enable_device(pdev);
- if (rc)
- goto err_out;
-
- pci_set_master(pdev);
-
-- rc = pci_request_regions(pdev, DRV_NAME);
-+ rc = pcim_iomap_regions(pdev, 1 << BAR_NO_V3_HW, DRV_NAME);
- if (rc)
-- goto err_out_disable_device;
-+ goto err_out;
-
- rc = dma_set_mask_and_coherent(&pdev->dev, DMA_BIT_MASK(64));
- if (rc)
-@@ -3275,20 +3277,20 @@ hisi_sas_v3_probe(struct pci_dev *pdev, const struct pci_device_id *id)
- if (rc) {
- dev_err(dev, "No usable DMA addressing method\n");
- rc = -ENODEV;
-- goto err_out_regions;
-+ goto err_out;
- }
-
- shost = hisi_sas_shost_alloc_pci(pdev);
- if (!shost) {
- rc = -ENOMEM;
-- goto err_out_regions;
-+ goto err_out;
- }
-
- sha = SHOST_TO_SAS_HA(shost);
- hisi_hba = shost_priv(shost);
- dev_set_drvdata(dev, sha);
-
-- hisi_hba->regs = pcim_iomap(pdev, 5, 0);
-+ hisi_hba->regs = pcim_iomap_table(pdev)[BAR_NO_V3_HW];
- if (!hisi_hba->regs) {
- dev_err(dev, "cannot map register\n");
- rc = -ENOMEM;
-@@ -3378,10 +3380,6 @@ hisi_sas_v3_probe(struct pci_dev *pdev, const struct pci_device_id *id)
- err_out_ha:
- hisi_sas_free(hisi_hba);
- scsi_host_put(shost);
--err_out_regions:
-- pci_release_regions(pdev);
--err_out_disable_device:
-- pci_disable_device(pdev);
- err_out:
- return rc;
- }
-@@ -3417,8 +3415,6 @@ static void hisi_sas_v3_remove(struct pci_dev *pdev)
- sas_remove_host(sha->core.shost);
-
- hisi_sas_v3_destroy_irqs(pdev, hisi_hba);
-- pci_release_regions(pdev);
-- pci_disable_device(pdev);
- hisi_sas_free(hisi_hba);
- hisi_sas_debugfs_exit(hisi_hba);
- scsi_host_put(shost);
---
-2.51.0
-
input-i8042-add-quirks-for-mechrevo-wujie-15x-pro.patch
input-i8042-add-quirk-for-asus-zenbook-ux425qa_um425qa.patch
scsi-storvsc-process-unsupported-mode_sense_10.patch
-iio-imu-st_lsm6dsx-fix-iio_chan_spec-for-sensors-without-event-detection.patch
staging-iio-adc-ad7280a-register-define-cleanup.patch
iio-adc-ad7280a-handle-spi_setup-errors-in-probe.patch
regmap-fix-race-condition-in-hwspinlock-irqsave-rout.patch
net-hns3-fix-the-hclge_fd_ad_nxt_key-error-setting-i.patch
misdn-annotate-data-race-around-dev-work.patch
usbnet-limit-max_mtu-based-on-device-s-hard_mtu.patch
-scsi-hisi_sas-use-managed-pci-functions.patch
drm-amd-pm-don-t-clear-si-smc-table-when-setting-pow.patch
drm-amd-pm-workaround-si-powertune-issue-on-radeon-4.patch
be2net-fix-null-pointer-dereference-in-be_cmd_get_ma.patch
+++ /dev/null
-From c34e2e2d67b3bb8d5a6d09b0d6dac845cdd13fb3 Mon Sep 17 00:00:00 2001
-From: Francesco Lavra <flavra@baylibre.com>
-Date: Mon, 1 Dec 2025 11:00:10 +0100
-Subject: iio: imu: st_lsm6dsx: fix iio_chan_spec for sensors without event detection
-
-From: Francesco Lavra <flavra@baylibre.com>
-
-commit c34e2e2d67b3bb8d5a6d09b0d6dac845cdd13fb3 upstream.
-
-The st_lsm6dsx_acc_channels array of struct iio_chan_spec has a non-NULL
-event_spec field, indicating support for IIO events. However, event
-detection is not supported for all sensors, and if userspace tries to
-configure accelerometer wakeup events on a sensor device that does not
-support them (e.g. LSM6DS0), st_lsm6dsx_write_event() dereferences a NULL
-pointer when trying to write to the wakeup register.
-Define an additional struct iio_chan_spec array whose members have a NULL
-event_spec field, and use this array instead of st_lsm6dsx_acc_channels for
-sensors without event detection capability.
-
-Fixes: b5969abfa8b8 ("iio: imu: st_lsm6dsx: add motion events")
-Signed-off-by: Francesco Lavra <flavra@baylibre.com>
-Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
-Acked-by: Lorenzo Bianconi <lorenzo@kernel.org>
-Cc: stable@vger.kernel.org
-Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c | 15 +++++++++++----
- 1 file changed, 11 insertions(+), 4 deletions(-)
-
---- a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c
-+++ b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c
-@@ -74,6 +74,13 @@ static const struct iio_chan_spec st_lsm
- IIO_CHAN_SOFT_TIMESTAMP(3),
- };
-
-+static const struct iio_chan_spec st_lsm6ds0_acc_channels[] = {
-+ ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x28, IIO_MOD_X, 0),
-+ ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x2a, IIO_MOD_Y, 1),
-+ ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x2c, IIO_MOD_Z, 2),
-+ IIO_CHAN_SOFT_TIMESTAMP(3),
-+};
-+
- static const struct iio_chan_spec st_lsm6dsx_gyro_channels[] = {
- ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x22, IIO_MOD_X, 0),
- ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x24, IIO_MOD_Y, 1),
-@@ -116,8 +123,8 @@ static const struct st_lsm6dsx_settings
- },
- .channels = {
- [ST_LSM6DSX_ID_ACC] = {
-- .chan = st_lsm6dsx_acc_channels,
-- .len = ARRAY_SIZE(st_lsm6dsx_acc_channels),
-+ .chan = st_lsm6ds0_acc_channels,
-+ .len = ARRAY_SIZE(st_lsm6ds0_acc_channels),
- },
- [ST_LSM6DSX_ID_GYRO] = {
- .chan = st_lsm6ds0_gyro_channels,
-@@ -1016,8 +1023,8 @@ static const struct st_lsm6dsx_settings
- },
- .channels = {
- [ST_LSM6DSX_ID_ACC] = {
-- .chan = st_lsm6dsx_acc_channels,
-- .len = ARRAY_SIZE(st_lsm6dsx_acc_channels),
-+ .chan = st_lsm6ds0_acc_channels,
-+ .len = ARRAY_SIZE(st_lsm6ds0_acc_channels),
- },
- [ST_LSM6DSX_ID_GYRO] = {
- .chan = st_lsm6dsx_gyro_channels,
input-i8042-add-quirk-for-asus-zenbook-ux425qa_um425qa.patch
scsi-storvsc-process-unsupported-mode_sense_10.patch
x86-kfence-avoid-writing-l1tf-vulnerable-ptes.patch
-iio-imu-st_lsm6dsx-fix-iio_chan_spec-for-sensors-without-event-detection.patch
staging-iio-adc-ad7280a-register-define-cleanup.patch
iio-adc-ad7280a-handle-spi_setup-errors-in-probe.patch
regmap-fix-race-condition-in-hwspinlock-irqsave-rout.patch
+++ /dev/null
-From c34e2e2d67b3bb8d5a6d09b0d6dac845cdd13fb3 Mon Sep 17 00:00:00 2001
-From: Francesco Lavra <flavra@baylibre.com>
-Date: Mon, 1 Dec 2025 11:00:10 +0100
-Subject: iio: imu: st_lsm6dsx: fix iio_chan_spec for sensors without event detection
-
-From: Francesco Lavra <flavra@baylibre.com>
-
-commit c34e2e2d67b3bb8d5a6d09b0d6dac845cdd13fb3 upstream.
-
-The st_lsm6dsx_acc_channels array of struct iio_chan_spec has a non-NULL
-event_spec field, indicating support for IIO events. However, event
-detection is not supported for all sensors, and if userspace tries to
-configure accelerometer wakeup events on a sensor device that does not
-support them (e.g. LSM6DS0), st_lsm6dsx_write_event() dereferences a NULL
-pointer when trying to write to the wakeup register.
-Define an additional struct iio_chan_spec array whose members have a NULL
-event_spec field, and use this array instead of st_lsm6dsx_acc_channels for
-sensors without event detection capability.
-
-Fixes: b5969abfa8b8 ("iio: imu: st_lsm6dsx: add motion events")
-Signed-off-by: Francesco Lavra <flavra@baylibre.com>
-Reviewed-by: Andy Shevchenko <andriy.shevchenko@intel.com>
-Acked-by: Lorenzo Bianconi <lorenzo@kernel.org>
-Cc: stable@vger.kernel.org
-Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c | 15 +++++++++++----
- 1 file changed, 11 insertions(+), 4 deletions(-)
-
---- a/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c
-+++ b/drivers/iio/imu/st_lsm6dsx/st_lsm6dsx_core.c
-@@ -76,6 +76,13 @@ static const struct iio_chan_spec st_lsm
- IIO_CHAN_SOFT_TIMESTAMP(3),
- };
-
-+static const struct iio_chan_spec st_lsm6ds0_acc_channels[] = {
-+ ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x28, IIO_MOD_X, 0),
-+ ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x2a, IIO_MOD_Y, 1),
-+ ST_LSM6DSX_CHANNEL(IIO_ACCEL, 0x2c, IIO_MOD_Z, 2),
-+ IIO_CHAN_SOFT_TIMESTAMP(3),
-+};
-+
- static const struct iio_chan_spec st_lsm6dsx_gyro_channels[] = {
- ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x22, IIO_MOD_X, 0),
- ST_LSM6DSX_CHANNEL(IIO_ANGL_VEL, 0x24, IIO_MOD_Y, 1),
-@@ -117,8 +124,8 @@ static const struct st_lsm6dsx_settings
- },
- .channels = {
- [ST_LSM6DSX_ID_ACC] = {
-- .chan = st_lsm6dsx_acc_channels,
-- .len = ARRAY_SIZE(st_lsm6dsx_acc_channels),
-+ .chan = st_lsm6ds0_acc_channels,
-+ .len = ARRAY_SIZE(st_lsm6ds0_acc_channels),
- },
- [ST_LSM6DSX_ID_GYRO] = {
- .chan = st_lsm6ds0_gyro_channels,
-@@ -1009,8 +1016,8 @@ static const struct st_lsm6dsx_settings
- },
- .channels = {
- [ST_LSM6DSX_ID_ACC] = {
-- .chan = st_lsm6dsx_acc_channels,
-- .len = ARRAY_SIZE(st_lsm6dsx_acc_channels),
-+ .chan = st_lsm6ds0_acc_channels,
-+ .len = ARRAY_SIZE(st_lsm6ds0_acc_channels),
- },
- [ST_LSM6DSX_ID_GYRO] = {
- .chan = st_lsm6dsx_gyro_channels,
arm64-dts-rockchip-remove-dangerous-max-link-speed-from-helios64.patch
x86-kfence-avoid-writing-l1tf-vulnerable-ptes.patch
comedi-fix-getting-range-information-for-subdevices-16-to-255.patch
-iio-imu-st_lsm6dsx-fix-iio_chan_spec-for-sensors-without-event-detection.patch
iio-adc-ad7280a-handle-spi_setup-errors-in-probe.patch
spi-sprd-adi-convert-to-platform-remove-callback-ret.patch
spi-sprd-adi-use-devm_platform_get_and_ioremap_resou.patch