# patches/driver/gpio/rockchip/ Rockchip GPIO controller (`drivers/gpio/gpio-rockchip.c`) patches. ## Patches ### `0010a-gpio-rockchip-propagate-irq_set_wake-to-parent-GIC.patch` **WIP — sleep fixes not yet upstream-ready.** Do not include in fleet manifests until Markus closes the suspend/resume thread. The Rockchip GPIO irqchip uses `irq_gc_set_wake()` which only tracks the wake state locally in `gc->wake_active`. It never calls `irq_set_irq_wake()` on the parent GIC interrupt for the GPIO bank. During suspend, `suspend_device_irqs()` disables all non-wakeup IRQs at the GIC level, so GPIO-based wakeup sources (RTC alarm, PMIC power key) can never reach the CPU — the GPIO controller detects the interrupt but the GIC blocks it. This patch replaces `irq_gc_set_wake` with `rockchip_irq_set_wake` that propagates the wake setting to the parent `bank->irq` via `irq_set_irq_wake()`. Source: split from `github.com/marfrit/misc_patches/genbook/kernel/0010` (the monolithic "gpio/drm/mfd/input/dts: fix suspend/resume and wakeup on RK3588" patch). Split commits live on `decompose-0010` branch in `marfrit/linux-rk3588-marfrit`. Sister patches (also from 0010): - `patches/driver/gpu/drm/bridge/analogix/0010b-…` (analogix-dp IRQ) - `patches/driver/mfd/rk8xx/0010c-…` (rk8xx-spi PM ops) - `patches/driver/input/misc/0010d-…` (rk805-pwrkey wake-irq) - `patches/board/coolpi-cm5-genbook/0010e-…` (DTS: NPU PD + touchpad wakeup-source)