Module Name: src
Committed By: pgoyette
Date: Sun Jul 29 02:58:28 UTC 2012
Modified Files:
src/sys/dev/acpi: acpi_tz.c
Log Message:
Replace local handling of entropy gathering with the new common code
recently introduced into sysmon_envsys(4).
Thanks to jruoho@ for testing.
To generate a diff of this commit:
cvs rdiff -u -r1.86 -r1.87 src/sys/dev/acpi/acpi_tz.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/acpi/acpi_tz.c
diff -u src/sys/dev/acpi/acpi_tz.c:1.86 src/sys/dev/acpi/acpi_tz.c:1.87
--- src/sys/dev/acpi/acpi_tz.c:1.86 Thu Jul 19 18:03:32 2012
+++ src/sys/dev/acpi/acpi_tz.c Sun Jul 29 02:58:27 2012
@@ -1,4 +1,4 @@
-/* $NetBSD: acpi_tz.c,v 1.86 2012/07/19 18:03:32 christos Exp $ */
+/* $NetBSD: acpi_tz.c,v 1.87 2012/07/29 02:58:27 pgoyette Exp $ */
/*
* Copyright (c) 2003 Jared D. McNeill <[email protected]>
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: acpi_tz.c,v 1.86 2012/07/19 18:03:32 christos Exp $");
+__KERNEL_RCSID(0, "$NetBSD: acpi_tz.c,v 1.87 2012/07/29 02:58:27 pgoyette Exp $");
#include <sys/param.h>
#include <sys/device.h>
@@ -39,7 +39,6 @@ __KERNEL_RCSID(0, "$NetBSD: acpi_tz.c,v
#include <sys/module.h>
#include <sys/systm.h>
#include <sys/kmem.h>
-#include <sys/rnd.h>
#include <dev/acpi/acpireg.h>
#include <dev/acpi/acpivar.h>
@@ -96,7 +95,6 @@ struct acpitz_zone {
uint32_t fanmin;
uint32_t fanmax;
uint32_t fancurrent;
- uint32_t fanprev;
};
struct acpitz_softc {
@@ -113,8 +111,6 @@ struct acpitz_softc {
bool sc_have_fan;
struct cpu_info **sc_psl;
size_t sc_psl_size;
- krndsource_t sc_tmp_rs;
- krndsource_t sc_fan_rs;
};
static int acpitz_match(device_t, cfdata_t, void *);
@@ -167,8 +163,6 @@ acpitz_attach(device_t parent, device_t
{
struct acpitz_softc *sc = device_private(self);
struct acpi_attach_args *aa = aux;
- char tmpname[sizeof(sc->sc_tmp_rs.name)];
- char fanname[sizeof(sc->sc_fan_rs.name)];
ACPI_INTEGER val;
ACPI_STATUS rv;
@@ -217,20 +211,6 @@ acpitz_attach(device_t parent, device_t
acpitz_init_envsys(self);
- if (sc->sc_have_fan) {
- snprintf(fanname, sizeof(fanname), "%s-fan",
- device_xname(self));
- snprintf(tmpname, sizeof(tmpname), "%s-tmp",
- device_xname(self));
- rnd_attach_source(&sc->sc_fan_rs,
- fanname, RND_TYPE_ENV, 0);
- rnd_attach_source(&sc->sc_tmp_rs,
- tmpname, RND_TYPE_ENV, 0);
- } else {
- rnd_attach_source(&sc->sc_tmp_rs,
- device_xname(self), RND_TYPE_ENV, 0);
- }
-
callout_schedule(&sc->sc_callout, sc->sc_zone.tzp * hz / 10);
}
@@ -246,11 +226,6 @@ acpitz_detach(device_t self, int flags)
callout_halt(&sc->sc_callout, NULL);
callout_destroy(&sc->sc_callout);
- rnd_detach_source(&sc->sc_tmp_rs);
- if (sc->sc_have_fan) {
- rnd_detach_source(&sc->sc_fan_rs);
- }
-
pmf_device_deregister(self);
acpi_deregister_notify(sc->sc_node);
@@ -320,19 +295,10 @@ acpitz_get_status(void *opaque)
if (sc->sc_first != false)
sc->sc_zone.prevtmp = tmp; /* XXX: Sanity check? */
- if (sc->sc_zone.prevtmp != sc->sc_zone.tmp) {
- rnd_add_uint32(&sc->sc_tmp_rs, sc->sc_zone.tmp);
- }
-
if (acpitz_get_fanspeed(dv, &fmin, &fmax, &fcurrent) == 0) {
- if (fcurrent != ATZ_TMP_INVALID) {
- sc->sc_zone.fanprev = sc->sc_zone.fancurrent;
+
+ if (fcurrent != ATZ_TMP_INVALID)
sc->sc_zone.fancurrent = fcurrent;
- if (sc->sc_zone.fanprev != sc->sc_zone.fancurrent) {
- rnd_add_uint32(&sc->sc_fan_rs,
- sc->sc_zone.fancurrent);
- }
- }
}
sc->sc_temp_sensor.state = ENVSYS_SVALID;
@@ -807,7 +773,8 @@ acpitz_tick(void *opaque)
static void
acpitz_init_envsys(device_t dv)
{
- const int flags = ENVSYS_FMONLIMITS | ENVSYS_FMONNOTSUPP;
+ const int flags = ENVSYS_FMONLIMITS | ENVSYS_FMONNOTSUPP |
+ ENVSYS_FHAS_ENTROPY;
struct acpitz_softc *sc = device_private(dv);
unsigned int i;