Add missing bit in r221015.

Sponsored by:	Sandvine Incorporated
Reviewed by:	des
MFC after:	1 week
X-MFC:		r221015
This commit is contained in:
Attilio Rao 2011-04-25 14:12:58 +00:00
parent bb83df766c
commit f451d23cfc

View File

@ -216,6 +216,15 @@ ichwd_smi_enable(struct ichwd_softc *sc)
ichwd_write_smi_4(sc, SMI_EN, ichwd_read_smi_4(sc, SMI_EN) | SMI_TCO_EN);
}
/*
* Check if the watchdog SMI triggering is enabled.
*/
static __inline int
ichwd_smi_is_enabled(struct ichwd_softc *sc)
{
return ((ichwd_read_smi_4(sc, SMI_EN) & SMI_TCO_EN) != 0);
}
/*
* Reset the watchdog status bits.
*/
@ -534,6 +543,7 @@ ichwd_attach(device_t dev)
sc->ev_tag = EVENTHANDLER_REGISTER(watchdog_list, ichwd_event, sc, 0);
/* disable the SMI handler */
sc->smi_enabled = ichwd_smi_is_enabled(sc);
ichwd_smi_disable(sc);
return (0);
@ -565,7 +575,8 @@ ichwd_detach(device_t dev)
ichwd_tmr_disable(sc);
/* enable the SMI handler */
ichwd_smi_enable(sc);
if (sc->smi_enabled != 0)
ichwd_smi_enable(sc);
/* deregister event handler */
if (sc->ev_tag != NULL)