Module Name: src
Committed By: christos
Date: Sun Dec 11 16:25:54 UTC 2016
Modified Files:
src/sys/arch/sparc/dev: tctrl.c
Log Message:
catch up with sd changes.
To generate a diff of this commit:
cvs rdiff -u -r1.59 -r1.60 src/sys/arch/sparc/dev/tctrl.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/arch/sparc/dev/tctrl.c
diff -u src/sys/arch/sparc/dev/tctrl.c:1.59 src/sys/arch/sparc/dev/tctrl.c:1.60
--- src/sys/arch/sparc/dev/tctrl.c:1.59 Fri Jul 25 04:10:34 2014
+++ src/sys/arch/sparc/dev/tctrl.c Sun Dec 11 11:25:54 2016
@@ -1,4 +1,4 @@
-/* $NetBSD: tctrl.c,v 1.59 2014/07/25 08:10:34 dholland Exp $ */
+/* $NetBSD: tctrl.c,v 1.60 2016/12/11 16:25:54 christos Exp $ */
/*-
* Copyright (c) 1998, 2005, 2006 The NetBSD Foundation, Inc.
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: tctrl.c,v 1.59 2014/07/25 08:10:34 dholland Exp $");
+__KERNEL_RCSID(0, "$NetBSD: tctrl.c,v 1.60 2016/12/11 16:25:54 christos Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -1447,42 +1447,43 @@ tctrl_event_thread(void *v)
{
struct tctrl_softc *sc = v;
device_t dv;
- struct sd_softc *sd = NULL;
- struct lance_softc *le = NULL;
- int ticks = hz/2;
- int rcount, wcount;
- int s;
+ struct sd_softc *sd;
- while (sd == NULL) {
+ for (sd = NULL; sd == NULL;) {
dv = device_find_by_xname("sd0");
if (dv != NULL)
sd = device_private(dv);
else
tsleep(&sc->sc_events, PWAIT, "probe_disk", hz);
}
+
dv = device_find_by_xname("le0");
- if (dv != NULL)
- le = device_private(dv);
- printf("found %s\n", device_xname(sd->sc_dev));
- rcount = sd->sc_dk.dk_stats->io_rxfer;
- wcount = sd->sc_dk.dk_stats->io_wxfer;
+
+ struct lance_softc *le = dv != NULL ? device_private(dv) : NULL;
+ struct dk_softc *dk = &sd->sc_dksc;
+ printf("found %s\n", device_xname(dk->sc_dev));
+
+ struct io_stats *io = dk->sc_dkdev.dk_stats;
+ int rcount = io->io_rxfer;
+ int wcount = io->io_wxfer;
tctrl_read_event_status(sc);
- while (1) {
+ int ticks = hz / 2;
+ for (;;) {
tsleep(&sc->sc_events, PWAIT, "tctrl_event", ticks);
- s = splhigh();
- if ((rcount != sd->sc_dk.dk_stats->io_rxfer) ||
- (wcount != sd->sc_dk.dk_stats->io_wxfer)) {
- rcount = sd->sc_dk.dk_stats->io_rxfer;
- wcount = sd->sc_dk.dk_stats->io_wxfer;
+ int s = splhigh();
+ if ((rcount != io->io_rxfer) || (wcount != io->io_wxfer)) {
+ rcount = io->io_rxfer;
+ wcount = io->io_wxfer;
sc->sc_lcdwanted |= TS102_LCD_DISK_ACTIVE;
} else
sc->sc_lcdwanted &= ~TS102_LCD_DISK_ACTIVE;
+
if (le != NULL) {
- if (le->sc_havecarrier != 0) {
+ if (le->sc_havecarrier != 0)
sc->sc_lcdwanted |= TS102_LCD_LAN_ACTIVE;
- } else
+ else
sc->sc_lcdwanted &= ~TS102_LCD_LAN_ACTIVE;
}
splx(s);