]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
pmdomain: ti_sci: add wakeup constraint to parent devices of wakeup source
authorKendall Willis <k-willis@ti.com>
Thu, 7 May 2026 03:16:45 +0000 (22:16 -0500)
committerUlf Hansson <ulfh@kernel.org>
Wed, 3 Jun 2026 09:47:20 +0000 (11:47 +0200)
Set wakeup constraint for any device in a wakeup path. All parent devices
of a wakeup device should not be turned off during suspend. This ensures
the wakeup device is kept on while the system is suspended.

Cc: stable@vger.kernel.org
Fixes: 9d8aa0dd3be4 ("pmdomain: ti_sci: add wakeup constraint management")
Reported-by: Vitor Soares <vitor.soares@toradex.com>
Closes: https://lore.kernel.org/linux-pm/c0fe43a2339c802e9ce5900092cd530a2ba17a6b.camel@gmail.com/
Signed-off-by: Kendall Willis <k-willis@ti.com>
Reviewed-by: Sebin Francis <sebin.francis@ti.com>
Signed-off-by: Ulf Hansson <ulfh@kernel.org>
drivers/pmdomain/ti/ti_sci_pm_domains.c

index 18d33bc35dee1b3bf6107af1e414db377d515199..949e4115f930b93b18216fde46131b5c8931c9aa 100644 (file)
@@ -86,7 +86,7 @@ static inline void ti_sci_pd_set_wkup_constraint(struct device *dev)
        const struct ti_sci_handle *ti_sci = pd->parent->ti_sci;
        int ret;
 
-       if (device_may_wakeup(dev)) {
+       if (device_may_wakeup(dev) || device_wakeup_path(dev)) {
                /*
                 * If device can wakeup using IO daisy chain wakeups,
                 * we do not want to set a constraint.