On Thu, Aug 21, 2014 at 09:58:15AM -0500, Kent R. Spillner wrote: > acpidock(4) updates its sensor's value when docking and undocking, but it > never sets its sensor's status. As a result, it's difficult to hook into > docking/undocking changes with sensorsd(8) (to change the value of > machdep.lidsuspend, for example). > > This diff sets the status to SENSOR_S_OK when docked and SENSOR_S_UNKNOWN > when undocked. > > Ok? > > Index: sys/dev/acpi/acpidock.c > =================================================================== > RCS file: /work/cvsroot/src/sys/dev/acpi/acpidock.c,v > retrieving revision 1.42 > diff -p -u -r1.42 acpidock.c > --- sys/dev/acpi/acpidock.c 27 Jul 2010 01:21:19 -0000 1.42 > +++ sys/dev/acpi/acpidock.c 20 Aug 2014 22:56:25 -0000 > @@ -103,6 +103,7 @@ acpidock_attach(struct device *parent, s > > sc->sc_sens.type = SENSOR_INDICATOR; > sc->sc_sens.value = sc->sc_docked == ACPIDOCK_STATUS_DOCKED; > + sc->sc_sens.status = sc->sc_docked ? SENSOR_S_OK : SENSOR_S_UNKNOWN; > sensor_attach(&sc->sc_sensdev, &sc->sc_sens); > sensordev_install(&sc->sc_sensdev); > > @@ -241,6 +242,7 @@ acpidock_notify(struct aml_node *node, i > > acpidock_status(sc); > sc->sc_sens.value = sc->sc_docked == ACPIDOCK_STATUS_DOCKED; > + sc->sc_sens.status = sc->sc_docked ? SENSOR_S_OK : SENSOR_S_UNKNOWN; > if (sc->sc_docked) > strlcpy(sc->sc_sens.desc, "docked", > sizeof(sc->sc_sens.desc)); >
looks ok to me, so ok mlarkin@
