mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-03-09 08:43:44 +07:00
![]() In current driver, SET_LATE_SYSTEM_SLEEP_PM_OPS is used to install the callbacks for suspend/resume. GPIO pin may be used as the interrupt pin by some device. However, using SET_LATE_SYSTEM_SLEEP_PM_OPS() to install the callbacks, the resume callback is called after resume_device_irqs(). Unintended interrupts may arrive due to resuming device irqs first, but the GPIO controller is not properly restored. Normally, for a SMP system, there are multiple cores, so even when there are unintended interrupts, BSP gets the chance to initialize the GPIO chip soon. But when there is only 1 core is active (other cores are offlined or single core) during resume, it is more easily to observe the unintended interrupts. This patch renames the suspend/resume function by adding suffix "_noirq", and installs the callbacks using SET_NOIRQ_SYSTEM_SLEEP_PM_OPS(). Signed-off-by: Binbin Wu <binbin.wu@intel.com> Acked-by: Mika Westerberg <mika.westerberg@linux.intel.com> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
||
---|---|---|
.. | ||
actions | ||
aspeed | ||
bcm | ||
berlin | ||
cirrus | ||
freescale | ||
intel | ||
mediatek | ||
meson | ||
mvebu | ||
nomadik | ||
nuvoton | ||
pxa | ||
qcom | ||
samsung | ||
sh-pfc | ||
sirf | ||
spear | ||
sprd | ||
stm32 | ||
sunxi | ||
tegra | ||
ti | ||
uniphier | ||
vt8500 | ||
zte | ||
core.c | ||
core.h | ||
devicetree.c | ||
devicetree.h | ||
Kconfig | ||
Makefile | ||
pinconf-generic.c | ||
pinconf.c | ||
pinconf.h | ||
pinctrl-amd.c | ||
pinctrl-amd.h | ||
pinctrl-artpec6.c | ||
pinctrl-as3722.c | ||
pinctrl-at91-pio4.c | ||
pinctrl-at91.c | ||
pinctrl-at91.h | ||
pinctrl-axp209.c | ||
pinctrl-coh901.c | ||
pinctrl-coh901.h | ||
pinctrl-da850-pupd.c | ||
pinctrl-digicolor.c | ||
pinctrl-falcon.c | ||
pinctrl-gemini.c | ||
pinctrl-ingenic.c | ||
pinctrl-lantiq.c | ||
pinctrl-lantiq.h | ||
pinctrl-lpc18xx.c | ||
pinctrl-max77620.c | ||
pinctrl-mcp23s08.c | ||
pinctrl-ocelot.c | ||
pinctrl-oxnas.c | ||
pinctrl-palmas.c | ||
pinctrl-pic32.c | ||
pinctrl-pic32.h | ||
pinctrl-pistachio.c | ||
pinctrl-rk805.c | ||
pinctrl-rockchip.c | ||
pinctrl-rza1.c | ||
pinctrl-rza2.c | ||
pinctrl-rzn1.c | ||
pinctrl-single.c | ||
pinctrl-st.c | ||
pinctrl-sx150x.c | ||
pinctrl-tb10x.c | ||
pinctrl-u300.c | ||
pinctrl-utils.c | ||
pinctrl-utils.h | ||
pinctrl-xway.c | ||
pinctrl-zynq.c | ||
pinmux.c | ||
pinmux.h |