diff options
author | Theo de Raadt <deraadt@cvs.openbsd.org> | 2024-08-18 15:09:50 +0000 |
---|---|---|
committer | Theo de Raadt <deraadt@cvs.openbsd.org> | 2024-08-18 15:09:50 +0000 |
commit | b87f03a8ae640b7111b6c58795b5703967b5b599 (patch) | |
tree | 06c503de82bfc050f50db8e6bb4c3d9ebe737a9a | |
parent | 06c8cef0ac3b599a3f7fd71280b6bf7c01f43eac (diff) |
Driver was not calling the child activate functions in the correct way.
There is a child -- wsmouse, which has an activate function, so this
is another oversight...
-rw-r--r-- | sys/dev/pckbc/pms.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/sys/dev/pckbc/pms.c b/sys/dev/pckbc/pms.c index 108d0f75dd9..7756c70e727 100644 --- a/sys/dev/pckbc/pms.c +++ b/sys/dev/pckbc/pms.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pms.c,v 1.98 2023/08/16 20:53:47 bru Exp $ */ +/* $OpenBSD: pms.c,v 1.99 2024/08/18 15:09:49 deraadt Exp $ */ /* $NetBSD: psm.c,v 1.11 2000/06/05 22:20:57 sommerfeld Exp $ */ /*- @@ -778,9 +778,11 @@ int pmsactivate(struct device *self, int act) { struct pms_softc *sc = (struct pms_softc *)self; + int rv; switch (act) { case DVACT_SUSPEND: + rv = config_activate_children(self, act); if (sc->sc_state == PMS_STATE_ENABLED) pms_change_state(sc, PMS_STATE_SUSPENDED, PMS_DEV_IGNORE); @@ -789,9 +791,13 @@ pmsactivate(struct device *self, int act) if (sc->sc_state == PMS_STATE_SUSPENDED) pms_change_state(sc, PMS_STATE_ENABLED, PMS_DEV_IGNORE); + rv = config_activate_children(self, act); + break; + default: + rv = config_activate_children(self, act); break; } - return (0); + return (rv); } int |