linux/drivers
Hans de Goede 2087ae77c7 iio: accel: mxc4005: Interrupt handling fixes
commit 57a1592784 upstream.

There are 2 issues with interrupt handling in the mxc4005 driver:

1. mxc4005_set_trigger_state() writes MXC4005_REG_INT_MASK1_BIT_DRDYE
(0x01) to INT_MASK1 to enable the interrupt, but to disable the interrupt
it writes ~MXC4005_REG_INT_MASK1_BIT_DRDYE which is 0xfe, so it enables
all other interrupt sources in the INT_SRC1 register. On the MXC4005 this
is not an issue because only bit 0 of the register is used. On the MXC6655
OTOH this is a problem since bit7 is used as TC (Temperature Compensation)
disable bit and writing 1 to this disables Temperature Compensation which
should only be done when running self-tests on the chip.

Write 0 instead of ~MXC4005_REG_INT_MASK1_BIT_DRDYE to disable
the interrupts to fix this.

2. The datasheets for the MXC4005 / MXC6655 do not state what the reset
value for the INT_MASK0 and INT_MASK1 registers is and since these are
write only we also cannot learn this from the hw. Presumably the reset
value for both is all 0, which means all interrupts disabled.

Explicitly set both registers to 0 from mxc4005_chip_init() to ensure
both masks are actually set to 0.

Fixes: 79846e33aa ("iio: accel: mxc4005: add support for mxc6655")
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Link: https://lore.kernel.org/r/20240326113700.56725-2-hdegoede@redhat.com
Cc: <Stable@vger.kernel.org>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-05-17 12:15:02 +02:00
..
accel accel/ivpu: Fix missed error message after VPU rename 2024-05-17 12:14:44 +02:00
accessibility speakup: Avoid crash on very long word 2024-04-27 17:13:01 +02:00
acpi ACPI: CPPC: Fix access width used for PCC registers 2024-05-02 16:35:30 +02:00
amba
android binder: check offset alignment in binder_get_object() 2024-04-27 17:12:58 +02:00
ata ata: sata_gemini: Check clk_enable() result 2024-05-17 12:14:41 +02:00
atm atm: idt77252: fix a memleak in open_card_ubr0 2024-02-03 12:46:13 +00:00
auxdisplay drm-next for 6.8: 2024-01-12 11:32:19 -08:00
base regmap: Add regmap_read_bypassed() 2024-05-17 12:14:26 +02:00
bcma
block aoe: fix the potential use-after-free problem in aoecmd_cfg_pkts 2024-03-26 18:16:29 -04:00
bluetooth Bluetooth: qca: fix NULL-deref on non-serdev setup 2024-05-02 16:35:26 +02:00
bus bus: mhi: host: Add MHI_PM_SYS_ERR_FAIL state 2024-04-13 13:10:08 +02:00
cache cache: ax45mp_cache: Align end size to cache boundary in ax45mp_dma_cache_wback() 2024-02-21 16:24:10 +00:00
cdrom
cdx cdx: Unlock on error path in rescan_store() 2024-01-04 17:01:14 +01:00
char random: handle creditable entropy from atomic process context 2024-04-27 17:12:48 +02:00
clk clk: Don't hold prepare_lock when calling kref_put() 2024-05-17 12:14:49 +02:00
clocksource clocksource/drivers/arm_global_timer: Fix maximum prescaler value 2024-04-03 15:32:32 +02:00
comedi comedi: vmk80xx: fix incomplete endpoint checking 2024-04-27 17:12:58 +02:00
connector connector/cn_proc: revert "connector: Fix proc_event_num_listeners count not cleared" 2024-02-13 11:15:44 +01:00
counter counter: fix privdata alignment 2024-02-16 18:51:00 -05:00
cpufreq cpufreq: Don't unregister cpufreq cooling on CPU hotplug 2024-04-13 13:10:01 +02:00
cpuidle cpuidle: Avoid potential overflow in integer multiplication 2024-04-13 13:09:58 +02:00
crypto crypto: iaa - Fix async_disable descriptor leak 2024-04-13 13:10:07 +02:00
cxl cxl/core: Fix potential payload size confusion in cxl_mem_get_poison() 2024-05-02 16:35:16 +02:00
dax New code for 6.8: 2024-01-10 08:45:22 -08:00
dca
devfreq
dio
dma dmaengine: idxd: Fix oops during rmmod on single-CPU platforms 2024-05-02 16:35:33 +02:00
dma-buf dma-buf: Fix NULL pointer dereference in sanitycheck() 2024-04-10 16:37:54 +02:00
dpll dpll: fix dpll_pin_on_pin_register() for multiple parent pins 2024-05-02 16:35:22 +02:00
edac EDAC/versal: Do not log total error counts 2024-05-17 12:14:35 +02:00
eisa
extcon
firewire firewire: ohci: fulfill timestamp for some local asynchronous transaction 2024-05-17 12:15:00 +02:00
firmware firmware: microchip: don't unconditionally print validation success 2024-05-17 12:14:36 +02:00
fpga Char/Misc and other Driver changes for 6.8-rc1 2024-01-17 16:47:17 -08:00
fsi
gnss TTY/Serial changes for 6.8-rc1 2024-01-18 11:37:24 -08:00
gpio gpiolib: cdev: fix uninitialised kfifo 2024-05-17 12:14:57 +02:00
gpu Reapply "drm/qxl: simplify qxl_fence_wait" 2024-05-17 12:14:58 +02:00
greybus TTY/Serial changes for 6.8-rc1 2024-01-18 11:37:24 -08:00
hid HID: i2c-hid: Revert to await reset ACK before reading report descriptor 2024-05-02 16:35:27 +02:00
hsi
hte
hv Drivers: hv: vmbus: Don't free ring buffers that couldn't be re-encrypted 2024-05-17 12:14:47 +02:00
hwmon hwmon: (corsair-cpro) Protect ccp->wait_input_report with a spinlock 2024-05-17 12:14:53 +02:00
hwspinlock
hwtracing hwtracing: hisi_ptt: Move type check to the beginning of hisi_ptt_pmu_event_init() 2024-03-26 18:17:30 -04:00
i2c i2c: smbus: fix NULL function pointer dereference 2024-05-02 16:35:34 +02:00
i3c i3c: dw: Disable IBI IRQ depends on hot-join and SIR enabling 2024-03-26 18:17:24 -04:00
idle Power management updates for 6.8-rc1 2024-01-09 16:32:11 -08:00
iio iio: accel: mxc4005: Interrupt handling fixes 2024-05-17 12:15:02 +02:00
infiniband qibfs: fix dentry leak 2024-05-17 12:14:50 +02:00
input Input: xpad - add support for Snakebyte GAMEPADs 2024-04-13 13:10:08 +02:00
interconnect interconnect: Don't access req_list while it's being manipulated 2024-04-27 17:12:56 +02:00
iommu iommu: mtk: fix module autoloading 2024-05-17 12:14:48 +02:00
ipack TTY/Serial changes for 6.8-rc1 2024-01-18 11:37:24 -08:00
irqchip irqchip/gic-v3-its: Prevent double free on error 2024-05-02 16:35:30 +02:00
isdn
leds leds: trigger: netdev: Fix kernel panic on interface rename trig notify 2024-04-03 15:32:15 +02:00
macintosh
mailbox mediatek: add CMDQ support for mt8188 2024-01-17 15:39:32 -08:00
mcb
md raid1: fix use-after-free for original bio in raid1_write_request() 2024-04-17 11:23:24 +02:00
media media: cec: core: remove length check of Timer Status 2024-04-17 11:23:25 +02:00
memory memory: tegra: Correct DLA client names 2024-03-26 18:16:46 -04:00
memstick
message
mfd mfd: intel-lpss: Introduce QUIRK_CLOCK_DIVIDER_UNITY for XPS 9530 2024-04-03 15:32:35 +02:00
misc eeprom: at24: fix memory corruption race condition 2024-05-02 16:35:28 +02:00
mmc mmc: sdhci-of-dwcmshc: th1520: Increase tuning loop count to 128 2024-05-02 16:35:26 +02:00
most
mtd mtd: diskonchip: work around ubsan link failure 2024-05-02 16:35:31 +02:00
mux mux: mmio: use reg property when parent device is not a syscon 2024-01-04 17:01:14 +01:00
net net: dsa: mv88e6xxx: add phylink_get_caps for the mv88e6320/21 family 2024-05-17 12:14:56 +02:00
nfc NFC: trf7970a: disable all regulators on removal 2024-05-02 16:35:16 +02:00
ntb NTB: fix possible name leak in ntb_register_device() 2024-03-26 18:17:06 -04:00
nubus nubus: Make nubus_bus_type static and constant 2024-01-03 13:33:59 +01:00
nvdimm virtio: features, fixes 2024-01-18 16:44:03 -08:00
nvme nvme: fix warn output about shared namespaces without CONFIG_NVME_MULTIPATH 2024-05-17 12:14:26 +02:00
nvmem nvmem: meson-efuse: fix function pointer type mismatch 2024-04-03 15:32:16 +02:00
of of: module: prevent NULL pointer dereference in vsnprintf() 2024-04-10 16:38:19 +02:00
opp OPP: debugfs: Fix warning around icc_get_name() 2024-03-26 18:16:56 -04:00
parisc parisc/power: Fix power soft-off button emulation on qemu 2024-01-07 22:59:16 +01:00
parport
pci PCI: hv: Fix ring buffer size calculation 2024-04-03 15:32:18 +02:00
pcmcia
peci
perf drivers/perf: hisi: Enable HiSilicon Erratum 162700402 quirk for HIP09 2024-04-13 13:10:07 +02:00
phy phy: qcom: qmp-combo: fix VCO div offset on v5_5nm and v6 2024-05-02 16:35:34 +02:00
pinctrl pinctrl: devicetree: fix refcount leak in pinctrl_dt_to_map() 2024-05-17 12:14:24 +02:00
platform platform/x86: ISST: Add Granite Rapids-D to HPM CPU list 2024-05-17 12:14:50 +02:00
pmdomain pmdomain: imx8mp-blk-ctrl: imx8mp_blk: Add fdcc clock to hdmimix domain 2024-04-13 13:09:59 +02:00
pnp More ACPI updates for 6.8-rc1 2024-01-17 14:37:40 -08:00
power power: supply: mt6360_charger: Fix of_match for usb-otg-vbus regulator 2024-05-17 12:14:24 +02:00
powercap powercap: intel_rapl_tpmi: Fix System Domain probing 2024-04-03 15:32:04 +02:00
pps
ps3
ptp Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2024-01-04 18:06:46 -08:00
pwm pwm: img: fix pwm clock lookup 2024-04-03 15:32:35 +02:00
rapidio
ras
regulator regulator: tps65132: Add of_match table 2024-05-17 12:14:40 +02:00
remoteproc remoteproc: virtio: Fix wdg cannot recovery remote processor 2024-04-03 15:32:01 +02:00
reset SoC: driver updates for 6.8 2024-01-11 11:31:46 -08:00
rpmsg
rtc rtc: max31335: fix interrupt status reg 2024-03-26 18:17:30 -04:00
s390 s390/qeth: Fix kernel panic after setting hsuid 2024-05-17 12:14:33 +02:00
sbus
scsi scsi: hisi_sas: Handle the NCQ error returned by D2H frame 2024-05-17 12:14:44 +02:00
sh maple: make maple_bus_type static and const 2024-01-04 14:37:17 +01:00
siox
slimbus slimbus: core: Remove usage of the deprecated ida_simple_xx() API 2024-04-03 15:32:16 +02:00
soc soc: mediatek: mtk-svs: Append "-thermal" to thermal zone names 2024-05-02 16:35:16 +02:00
soundwire soundwire: amd: fix for wake interrupt handling for clockstop mode 2024-05-02 16:35:32 +02:00
spi spi: fix null pointer dereference within spi_sync 2024-05-17 12:14:32 +02:00
spmi
ssb
staging staging: vc04_services: fix information leak in create_component() 2024-04-03 15:32:45 +02:00
target scsi: target: Fix SELinux error when systemd-modules loads the target module 2024-05-17 12:14:43 +02:00
tc
tee tee: optee: Fix kernel panic caused by incorrect error handling 2024-03-04 09:49:03 +01:00
thermal thermal/debugfs: Prevent use-after-free from occurring after cdev removal 2024-05-17 12:14:29 +02:00
thunderbolt thunderbolt: Reset only non-USB4 host routers in resume 2024-04-27 17:13:04 +02:00
tty serial: core: Fix missing shutdown and startup for serial base port 2024-04-27 17:12:59 +02:00
ufs scsi: ufs: core: Fix MCQ mode dev command timeout 2024-05-17 12:14:40 +02:00
uio uio_hv_generic: Don't free decrypted memory 2024-05-17 12:14:47 +02:00
usb usb: typec: tcpm: Check for port partner validity before consuming it 2024-05-17 12:15:00 +02:00
vdpa vdpa/mlx5: Allow CVQ size changes 2024-03-26 18:17:35 -04:00
vfio vfio/pds: Make sure migration file isn't accessed after reset 2024-04-03 15:32:44 +02:00
vhost vhost: Add smp_rmb() in vhost_enable_notify() 2024-04-17 11:23:39 +02:00
video fbdev: fix incorrect address computation in deferred IO 2024-05-02 16:35:31 +02:00
virt Revert "vmgenid: emit uevent when VMGENID updates" 2024-04-27 17:12:48 +02:00
virtio virtio: reenable config if freezing device failed 2024-04-03 15:32:25 +02:00
w1
watchdog watchdog: stm32_iwdg: initialize default timeout 2024-03-26 18:17:25 -04:00
xen x86/xen: attempt to inflate the memory balloon on PVH 2024-04-13 13:10:10 +02:00
zorro
Kconfig
Makefile fbdev/intelfb: Remove driver 2024-01-12 12:38:37 +01:00