linux/drivers/mfd
Andre Przywara 68f860426d mfd: axp20x: AXP717: Fix missing IRQ status registers range
While we list the "IRQ status *and acknowledge*" registers as volatile
in the MFD description, they are missing from the writable range array,
so acknowledging any interrupts was met with an -EIO error.
This error propagates up, leading to the whole AXP717 driver failing to
probe, which is fatal to most systems using this PMIC, since most
peripherals refer one of the PMIC voltage rails.
This wasn't noticed on the initial submission, since the interrupt was
completely missing at this point, but the DTs now merged describe the
interrupt, creating the problem.

Add the five registers that hold those bits to the writable array.

This fixes the boot on the Anbernic systems using the AXP717 PMIC.

Fixes: b5bfc8ab24 ("mfd: axp20x: Add support for AXP717 PMIC")
Reported-by: Chris Morgan <macromorgan@hotmail.com>
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
Reviewed-by: John Watts <contact@jookia.org>
Link: https://lore.kernel.org/r/20240613233104.17529-1-andre.przywara@arm.com
Signed-off-by: Lee Jones <lee@kernel.org>
2024-06-14 08:43:39 +01:00
..
88pm80x.c
88pm800.c
88pm805.c
88pm860x-core.c
88pm860x-i2c.c
Kconfig mfd: Tidy Kconfig dependency's parentheses 2024-05-10 15:39:16 +01:00
Makefile
aat2870-core.c
ab8500-core.c
ab8500-sysctrl.c
abx500-core.c
ac100.c
acer-ec-a500.c
act8945a.c
adp5520.c
altera-a10sr.c
altera-sysmgr.c
arizona-core.c
arizona-i2c.c
arizona-irq.c
arizona-spi.c
arizona.h
as3711.c
as3722.c
at91-usart.c
atc260x-core.c
atc260x-i2c.c
atmel-flexcom.c
atmel-hlcdc.c
atmel-smc.c
axp20x-i2c.c
axp20x-rsb.c
axp20x.c mfd: axp20x: AXP717: Fix missing IRQ status registers range 2024-06-14 08:43:39 +01:00
bcm590xx.c
bcm2835-pm.c
bd9571mwv.c
cros_ec_dev.c
cs42l43-i2c.c
cs42l43-sdw.c
cs42l43.c mfd: cs42l43: Update patching revision check 2024-05-10 15:39:17 +01:00
cs42l43.h
cs47l15-tables.c
cs47l24-tables.c
cs47l35-tables.c
cs47l85-tables.c
cs47l90-tables.c
cs47l92-tables.c
cs5535-mfd.c
da903x.c
da9052-core.c
da9052-i2c.c
da9052-irq.c
da9052-spi.c
da9055-core.c
da9055-i2c.c
da9062-core.c
da9063-core.c
da9063-i2c.c
da9063-irq.c
da9150-core.c
db8500-prcmu-regs.h
db8500-prcmu.c
dln2.c
ene-kb3930.c
exynos-lpass.c
ezx-pcap.c
fsl-imx25-tsadc.c
gateworks-gsc.c
hi655x-pmic.c
hi6421-pmic-core.c
hi6421-spmi-pmic.c
intel-lpss-acpi.c
intel-lpss-pci.c mfd: intel-lpss: Switch over to MSI interrupts 2024-05-10 15:39:15 +01:00
intel-lpss.c
intel-lpss.h
intel-m10-bmc-core.c
intel-m10-bmc-pmci.c mfd: intel-m10-bmc: Change staging size to a variable 2024-05-10 15:39:16 +01:00
intel-m10-bmc-spi.c mfd: intel-m10-bmc: Change staging size to a variable 2024-05-10 15:39:16 +01:00
intel_pmc_bxt.c
intel_quark_i2c_gpio.c
intel_soc_pmic_bxtwc.c
intel_soc_pmic_chtdc_ti.c
intel_soc_pmic_chtwc.c
intel_soc_pmic_crc.c
intel_soc_pmic_mrfld.c
ioc3.c
ipaq-micro.c
iqs62x.c
janz-cmodio.c
kempld-core.c mfd: kempld: Remove custom DMI matching code 2024-05-10 15:39:17 +01:00
khadas-mcu.c
lm3533-core.c
lm3533-ctrlbank.c
lochnagar-i2c.c
lp873x.c
lp3943.c
lp8788-irq.c
lp8788.c
lp87565.c
lpc_ich.c
lpc_sch.c
madera-core.c
madera-i2c.c
madera-spi.c
madera.h
max8907.c
max8925-core.c
max8925-i2c.c
max8997-irq.c
max8997.c
max8998-irq.c
max8998.c
max14577.c
max77541.c
max77620.c
max77650.c
max77686.c
max77693.c
max77714.c
max77843.c
mc13xxx-core.c
mc13xxx-i2c.c
mc13xxx-spi.c
mc13xxx.h
mcp-core.c
mcp-sa11x0.c
menelaus.c
menf21bmc.c
mfd-core.c
motorola-cpcap.c
mp2629.c
mt6358-irq.c
mt6360-core.c
mt6370.c
mt6370.h
mt6397-core.c
mt6397-irq.c
mxs-lradc.c
ntxec.c
ocelot-core.c
ocelot-spi.c mfd: ocelot-spi: Use spi_sync_transfer() 2024-05-10 15:39:16 +01:00
ocelot.h
omap-usb-host.c
omap-usb-tll.c
omap-usb.h
palmas.c
pcf50633-adc.c
pcf50633-core.c
pcf50633-gpio.c
pcf50633-irq.c
qcom-pm8xxx.c
qcom-pm8008.c
qcom-spmi-pmic.c
qcom_rpm.c
rave-sp.c
rc5t583-irq.c
rc5t583.c
rdc321x-southbridge.c
retu-mfd.c
rk8xx-core.c mfd: rk8xx: Add RK816 support 2024-05-03 09:15:30 +01:00
rk8xx-i2c.c mfd: rk8xx: Add RK816 support 2024-05-03 09:15:30 +01:00
rk8xx-spi.c
rn5t618.c
rohm-bd718x7.c
rohm-bd9576.c
rohm-bd71828.c mfd: rohm-bd71828: Add power off functionality 2024-05-10 15:39:16 +01:00
rsmu.h
rsmu_core.c
rsmu_i2c.c mfd: rsmu: support I2C SMBus access 2024-05-10 15:39:18 +01:00
rsmu_spi.c mfd: rsmu: support I2C SMBus access 2024-05-10 15:39:18 +01:00
rt4831.c
rt5033.c
rt5120.c
rz-mtu3.c
rz-mtu3.h
sec-core.c
sec-irq.c
si476x-cmd.c
si476x-i2c.c
si476x-prop.c
simple-mfd-i2c.c
simple-mfd-i2c.h
sky81452.c
sm501.c
smpro-core.c
sprd-sc27xx-spi.c
ssbi.c mfd: ssbi: Remove unused field 'slave' from 'struct ssbi' 2024-05-10 15:39:17 +01:00
sta2x11-mfd.c
stm32-lptimer.c
stm32-timers.c
stmfx.c
stmpe-i2c.c
stmpe-spi.c
stmpe.c
stmpe.h
stpmic1.c
stw481x.c
sun4i-gpadc.c
sun6i-prcm.c
syscon.c
tc3589x.c
ti-lmu.c
ti_am335x_tscadc.c
timberdale.c mfd: timberdale: Remove redundant assignment to variable err 2024-05-10 15:39:17 +01:00
timberdale.h
tps6105x.c
tps6507x.c
tps6586x.c
tps6594-core.c mfd: tps6594-core: Add TI TPS65224 PMIC core 2024-05-03 10:07:06 +01:00
tps6594-i2c.c mfd: tps6594-i2c: Add TI TPS65224 PMIC I2C 2024-05-03 10:07:02 +01:00
tps6594-spi.c mfd: tps6594-spi: Add TI TPS65224 PMIC SPI 2024-05-03 10:07:04 +01:00
tps65010.c
tps65086.c
tps65090.c
tps65217.c
tps65218.c
tps65219.c
tps65910.c
tps65911-comparator.c
tps65912-core.c
tps65912-i2c.c
tps65912-spi.c
tqmx86.c
twl-core.c
twl-core.h
twl4030-audio.c
twl4030-irq.c
twl4030-power.c
twl6030-irq.c
twl6040.c
ucb1x00-assabet.c
ucb1x00-core.c
ucb1x00-ts.c
vexpress-sysreg.c
viperboard.c
vx855.c
wcd934x.c
wl1273-core.c
wm97xx-core.c
wm831x-auxadc.c
wm831x-core.c
wm831x-i2c.c
wm831x-irq.c
wm831x-otp.c
wm831x-spi.c
wm5102-tables.c
wm5110-tables.c
wm8350-core.c
wm8350-gpio.c
wm8350-i2c.c
wm8350-irq.c
wm8350-regmap.c
wm8400-core.c
wm8994-core.c
wm8994-irq.c
wm8994-regmap.c
wm8994.h
wm8997-tables.c
wm8998-tables.c