linux/drivers/mfd
Baolin Wang c5ea311b16 mfd: sprd: Add wakeup capability for PMIC IRQ
commit a75bfc824a upstream.

When changing to use suspend-to-idle to save power, the PMIC irq can not
wakeup the system due to lack of wakeup capability, which will cause
the sub-irqs (such as power key) of the PMIC can not wake up the system.
Thus we can add the wakeup capability for PMIC irq to solve this issue,
as well as removing the IRQF_NO_SUSPEND flag to allow PMIC irq to be
a wakeup source.

Reported-by: Chunyan Zhang <zhang.lyra@gmail.com>
Signed-off-by: Baolin Wang <baolin.wang7@gmail.com>
Tested-by: Chunyan Zhang <chunyan.zhang@unisoc.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-11-18 19:18:46 +01:00
..
88pm80x.c
88pm800.c
88pm805.c
88pm860x-core.c
88pm860x-i2c.c mfd: 88pm860x-i2c: switch to i2c_lock_bus(..., I2C_LOCK_SEGMENT) 2018-07-13 00:09:36 +02:00
aat2870-core.c
ab3100-core.c
ab3100-otp.c
ab8500-core.c mfd: ab8500-core: Return zero in get_register_interruptible() 2019-02-27 10:08:51 +01:00
ab8500-debugfs.c treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
ab8500-gpadc.c
ab8500-sysctrl.c
abx500-core.c mfd: abx500-core: Adjust 14 checks for null pointers 2018-05-16 09:21:48 +01:00
ac100.c
act8945a.c
adp5520.c
altera-a10sr.c
arizona-core.c mfd: arizona: Ensure 32k clock is put on driver unbind and error 2020-08-21 11:05:34 +02:00
arizona-i2c.c
arizona-irq.c kernel/irq: Extend lockdep class for request mutex 2017-12-28 12:26:35 +01:00
arizona-spi.c
arizona.h
as3711.c
as3722.c mfd: as3722: Disable auto-power-on when AC OK 2018-07-27 08:16:01 +01:00
asic3.c mfd: asic3: Fix broken MMC card detection 2018-06-04 08:44:17 +01:00
atmel-flexcom.c atmel_flexcom: Support resuming after a chip reset 2018-01-08 11:03:35 +00:00
atmel-hlcdc.c headers: separate linux/mod_devicetable.h from linux/platform_device.h 2018-07-07 17:52:26 +02:00
atmel-smc.c mfd: syscon: atmel-smc: Include string.h 2018-05-29 09:09:29 +01:00
axp20x-i2c.c mfd: axp20x: Support AXP806 in I2C mode 2018-07-27 08:13:26 +01:00
axp20x-rsb.c
axp20x.c mfd: axp20x: Mark AXP20X_VBUS_IPSOUT_MGMT as volatile 2020-02-11 04:34:01 -08:00
bcm590xx.c
bd9571mwv.c mfd: bd9571mwv: Add volatile register to make DVFS work 2019-02-27 10:08:51 +01:00
cros_ec_dev.c mfd: cros_ec_dev: Add missing mfd_remove_devices() call in remove 2019-02-27 10:08:52 +01:00
cros_ec_dev.h cros_ec: Move cros_ec_dev module to drivers/mfd 2017-12-15 10:46:06 +00:00
cros_ec.c - New Device Support 2018-06-11 07:20:17 -07:00
cs47l24-tables.c
cs47l35-tables.c mfd: madera: Register map tables for Cirrus Logic CS47L35 2018-06-05 11:15:01 +01:00
cs47l85-tables.c mfd: madera: Register map tables for Cirrus Logic CS47L85 2018-06-05 11:15:08 +01:00
cs47l90-tables.c mfd: madera: Register map tables for Cirrus Logic CS47L90/91 2018-06-05 11:15:12 +01:00
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 mfd: da9062: Fix watchdog compatible string 2020-02-11 04:34:14 -08:00
da9063-core.c mfd: da9063: Register RTC only on DA9063L 2018-07-04 07:17:02 +01:00
da9063-i2c.c mfd: da9063: Add DA9063L support 2018-07-04 07:17:13 +01:00
da9063-irq.c mfd: da9063: Add custom IRQ map for DA9063L 2018-07-04 07:16:57 +01:00
da9150-core.c
davinci_voicecodec.c
db8500-prcmu.c mfd: db8500-prcmu: Fix some section annotations 2019-02-27 10:08:51 +01:00
dbx500-prcmu-regs.h
dln2.c mfd: dln2: Run event handler loop under spinlock 2020-08-21 11:05:38 +02:00
dm355evm_msp.c
exynos-lpass.c
ezx-pcap.c
fsl-imx25-tsadc.c mfd: fsl-imx25: Clean up irq settings during removal 2017-10-24 09:12:14 +01:00
hi655x-pmic.c mfd: hi655x-pmic: Fix missing return value check for devm_regmap_init_mmio_clk 2019-07-31 07:27:03 +02:00
hi6421-pmic-core.c
htc-i2cpld.c treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
htc-pasic3.c
intel_msic.c
intel_quark_i2c_gpio.c gpio: dwapb: Add support for 1 interrupt per port A GPIO 2018-05-16 14:35:24 +02:00
intel_soc_pmic_bxtwc.c mfd: intel_soc_pmic_bxtwc: Chain power button IRQs as well 2019-12-01 09:16:57 +01:00
intel_soc_pmic_chtdc_ti.c mfd: Add support for Cherry Trail Dollar Cove TI PMIC 2017-10-13 10:42:58 +01:00
intel_soc_pmic_chtwc.c
intel_soc_pmic_core.c mfd: Remove duplicate includes 2018-01-08 11:03:35 +00:00
intel_soc_pmic_core.h mfd: intel_soc_pmic: Export separate mfd-cell configs for BYT and CHT 2017-09-05 08:46:02 +01:00
intel_soc_pmic_crc.c mfd: intel_soc_pmic: Export separate mfd-cell configs for BYT and CHT 2017-09-05 08:46:02 +01:00
intel-lpss-acpi.c
intel-lpss-pci.c mfd: intel-lpss: Add Intel Emmitsburg PCH PCI IDs 2020-09-03 11:24:18 +02:00
intel-lpss.c mfd: intel-lpss: Use devm_ioremap_uc for MMIO 2020-05-10 10:30:11 +02:00
intel-lpss.h PM / mfd: intel-lpss: Push system sleep callbacks to late/early stages 2017-10-05 12:59:54 +02:00
ipaq-micro.c
janz-cmodio.c mfd: janz-cmodio: Delete error message for a failed memory allocation 2018-05-16 09:21:48 +01:00
jz4740-adc.c mfd: jz4740-adc: Delete error message for a failed memory allocation 2018-05-16 09:21:48 +01:00
Kconfig mfd: Kconfig: Fix I2C_DESIGNWARE_PLATFORM dependencies 2019-09-16 08:22:04 +02:00
kempld-core.c mfd: kempld-core: Constify variables that point to const structure 2018-07-27 08:13:24 +01:00
lm3533-core.c
lm3533-ctrlbank.c
lp873x.c
lp3943.c
lp8788-irq.c
lp8788.c
lp87565.c
lpc_ich.c mfd: lpc_ich: Do not touch SPI-NOR write protection bit on Apollo Lake 2018-01-08 11:03:35 +00:00
lpc_sch.c
madera-core.c mfd: madera: Add missing of table registration 2019-07-31 07:27:03 +02:00
madera-i2c.c mfd: madera: Add common support for Cirrus Logic Madera codecs 2018-06-05 11:14:56 +01:00
madera-spi.c mfd: madera: Add common support for Cirrus Logic Madera codecs 2018-06-05 11:14:56 +01:00
madera.h mfd: madera: Add common support for Cirrus Logic Madera codecs 2018-06-05 11:14:56 +01:00
Makefile mfd: bd71837: Core driver for ROHM BD71837 PMIC 2018-08-16 10:13:37 +01:00
max8907.c
max8925-core.c
max8925-i2c.c
max8997-irq.c
max8997.c mfd: max8997: Enale irq-wakeup unconditionally 2019-12-01 09:16:57 +01:00
max8998-irq.c
max8998.c
max14577.c
max77620.c
max77686.c
max77693.c mfd: max77693: Add muic of_compatible in mfd_cell 2017-10-13 10:42:58 +01:00
max77843.c mfd: Remove duplicate includes 2018-01-08 11:03:35 +00:00
mc13xxx-core.c mfd: mc13xxx-core: Fix PMIC shutdown when reading ADC values 2019-12-01 09:16:56 +01:00
mc13xxx-i2c.c
mc13xxx-spi.c
mc13xxx.h
mcp-core.c
mcp-sa11x0.c
menelaus.c mfd: menelaus: Fix possible race condition and leak 2018-11-13 11:08:38 -08:00
menf21bmc.c
mfd-core.c mfd: mfd-core: Protect against NULL call-back function pointer 2020-10-01 13:14:26 +02:00
motorola-cpcap.c treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
mt6397-core.c mfd: mt6397: Do not call irq_domain_remove if PMIC unsupported 2019-02-27 10:08:51 +01:00
mxs-lradc.c mfd: mxs-lradc: Fix error handling in mxs_lradc_probe() 2017-10-24 09:12:14 +01:00
omap-usb-host.c mfd: omap-usb-host: Fix dts probe of children 2018-09-11 16:47:33 +01:00
omap-usb-tll.c mfd: omap-usb-tll: Allocate driver data at once 2018-05-16 09:21:48 +01:00
omap-usb.h
palmas.c mfd: palmas: Assign the right powerhold mask for tps65917 2018-01-08 11:03:34 +00:00
pcf50633-adc.c
pcf50633-core.c mfd: pcf50633: Fix some memory leaks in the error handling path of 'pcf50633_probe()' 2018-05-16 09:21:48 +01:00
pcf50633-gpio.c
pcf50633-irq.c
qcom_rpm.c mfd: qcom_rpm: write fw_version to CTRL_REG 2019-02-27 10:08:51 +01:00
qcom-pm8xxx.c treewide: Use struct_size() for devm_kmalloc() and friends 2018-06-06 11:15:43 -07:00
qcom-spmi-pmic.c mfd: qcom-spmi-pmic: Add support for pm8005, pm8998 and pmi8998 2018-06-04 06:47:52 +01:00
rave-sp.c mfd: rave-sp: Emulate CMD_GET_STATUS on device that don't support it 2018-07-27 08:13:25 +01:00
rc5t583-irq.c
rc5t583.c mfd: rc5t583: Improve a size determination 2018-05-16 09:21:48 +01:00
rdc321x-southbridge.c
retu-mfd.c
rk808.c
rn5t618.c mfd: rn5t618: Mark ADC control register volatile 2020-02-11 04:34:14 -08:00
rohm-bd718x7.c mfd: bd71837: Core driver for ROHM BD71837 PMIC 2018-08-16 10:13:37 +01:00
rt5033.c
sec-core.c mfd: sec-core: Export OF module alias table 2018-07-27 09:27:15 +01:00
sec-irq.c
si476x-cmd.c
si476x-i2c.c mfd: si476x-i2c: Delete an error message for a failed memory allocation in si476x_core_probe() 2018-05-16 09:21:48 +01:00
si476x-prop.c
sky81452.c
sm501.c mfd: sm501: Fix leaks in probe() 2020-10-29 09:55:13 +01:00
smsc-ece1099.c mfd: smsc-ece1099: Improve a size determination in smsc_i2c_probe() 2018-05-16 09:21:48 +01:00
sprd-sc27xx-spi.c mfd: sprd: Add wakeup capability for PMIC IRQ 2020-11-18 19:18:46 +01:00
ssbi.c mfd: ssbi: Use devm_of_platform_populate() 2017-11-01 09:32:23 +00:00
sta2x11-mfd.c
stm32-lptimer.c mfd: stm32: Adopt SPDX identifier 2018-01-08 11:03:35 +00:00
stm32-timers.c mfd: stm32-timers: Add support for DMAs 2018-05-16 09:10:38 +01:00
stmpe-i2c.c
stmpe-spi.c
stmpe.c
stmpe.h
stw481x.c mfd: stw481x: Make three arrays static const, reduces object code size 2017-10-13 10:42:58 +01:00
sun4i-gpadc.c
sun6i-prcm.c
syscon.c mfd: syscon: Set name of regmap_config 2018-05-16 09:21:48 +01:00
t7l66xb.c
tc3589x.c
tc6387xb.c
tc6393xb.c
ti_am335x_tscadc.c mfd: ti_am335x_tscadc: Keep ADC interface on if child is wakeup capable 2019-11-24 08:20:46 +01:00
ti-lmu.c
timberdale.c Merge branch 'i2c/for-4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux 2018-06-14 16:21:46 +09:00
timberdale.h
tmio_core.c mfd: tmio: Move register macros to tmio_core.c 2018-01-08 11:03:34 +00:00
tps6105x.c
tps6507x.c
tps6586x.c mfd: tps6586x: Handle interrupts on suspend 2019-01-22 21:40:33 +01:00
tps65010.c
tps65086.c
tps65090.c mfd: tps65090: Delete an error message for a failed memory allocation in tps65090_i2c_probe() 2018-05-16 09:21:48 +01:00
tps65217.c mfd: tps65217: Introduce dependency on CONFIG_OF 2017-10-13 10:42:58 +01:00
tps65218.c mfd: tps65218: Use devm_regmap_add_irq_chip and clean up error path in probe() 2019-02-27 10:08:52 +01:00
tps65910.c mfd: tps65910: Move an assignment in tps65910_sleepinit() 2018-05-16 09:21:48 +01:00
tps65911-comparator.c mfd: tps65911-comparator: Fix an off by one bug 2018-05-16 09:21:48 +01:00
tps65912-core.c
tps65912-i2c.c
tps65912-spi.c mfd: tps65912-spi: Add missing of table registration 2019-06-15 11:54:02 +02:00
tps68470.c mfd: Update to SPDX license identifier 2018-05-16 09:21:48 +01:00
tps80031.c mfd: tps80031: Delete an error message for a failed memory allocation in tps80031_probe() 2018-05-16 09:21:48 +01:00
twl-core.c mfd: twl-core: Disable IRQ while suspended 2019-05-08 07:21:48 +02:00
twl-core.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
twl4030-audio.c mfd: twl4030-audio: Fix sibling-node lookup 2017-11-29 16:28:45 +00:00
twl4030-irq.c
twl4030-power.c
twl6030-irq.c mfd: twl6030-irq: Delete an error message for a failed memory allocation in twl6030_init_irq() 2018-05-16 09:21:48 +01:00
twl6040.c mfd: twl6040: Fix device init errors for ACCCTL register 2019-06-15 11:54:03 +02:00
ucb1x00-assabet.c
ucb1x00-core.c
ucb1x00-ts.c
ucb1400_core.c
vexpress-sysreg.c
viperboard.c mfd: viperboard: Delete an error message for a failed memory allocation in vprbrd_probe() 2018-05-16 09:21:48 +01:00
vx855.c
wl1273-core.c
wm97xx-core.c mfd: wm97xx-core: Platform data can be NULL 2018-06-11 09:11:03 +01:00
wm831x-auxadc.c
wm831x-core.c
wm831x-i2c.c
wm831x-irq.c
wm831x-otp.c
wm831x-spi.c
wm5102-tables.c
wm5110-tables.c mfd: wm5110: Add missing ASRC rate register 2019-02-27 10:08:51 +01:00
wm8350-core.c
wm8350-gpio.c
wm8350-i2c.c
wm8350-irq.c
wm8350-regmap.c
wm8400-core.c
wm8994-core.c mfd: wm8994: Fix driver operation if loaded as modules 2020-06-25 15:32:50 +02:00
wm8994-irq.c
wm8994-regmap.c
wm8994.h
wm8997-tables.c
wm8998-tables.c