Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 11 Sep 2017 02:56:46 +0000 (UTC)
From:      Ian Lepore <ian@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   svn commit: r323421 - in stable/11/sys/dev: bwi iicbus iwi
Message-ID:  <201709110256.v8B2ukFS080983@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ian
Date: Mon Sep 11 02:56:45 2017
New Revision: 323421
URL: https://svnweb.freebsd.org/changeset/base/323421

Log:
  MFC r320743:
  
  Fix drivers that assume ticks starts at zero. These drivers all have logic
  similar to "if (ticks > localvar+interval) {localvar=ticks; ...}" where
  localvar is initialized to zero.  Ticks is initialized to a negative value
  since r278230, and that leads to these if statements never being true.

Modified:
  stable/11/sys/dev/bwi/if_bwi.c
  stable/11/sys/dev/iicbus/ad7418.c
  stable/11/sys/dev/iwi/if_iwi.c
Directory Properties:
  stable/11/   (props changed)

Modified: stable/11/sys/dev/bwi/if_bwi.c
==============================================================================
--- stable/11/sys/dev/bwi/if_bwi.c	Mon Sep 11 02:52:41 2017	(r323420)
+++ stable/11/sys/dev/bwi/if_bwi.c	Mon Sep 11 02:56:45 2017	(r323421)
@@ -381,6 +381,7 @@ bwi_attach(struct bwi_softc *sc)
 	 */
 	sc->sc_fw_version = BWI_FW_VERSION3;
 	sc->sc_led_idle = (2350 * hz) / 1000;
+	sc->sc_led_ticks = ticks - sc->sc_led_idle;
 	sc->sc_led_blink = 1;
 	sc->sc_txpwr_calib = 1;
 #ifdef BWI_DEBUG

Modified: stable/11/sys/dev/iicbus/ad7418.c
==============================================================================
--- stable/11/sys/dev/iicbus/ad7418.c	Mon Sep 11 02:52:41 2017	(r323420)
+++ stable/11/sys/dev/iicbus/ad7418.c	Mon Sep 11 02:56:45 2017	(r323421)
@@ -120,6 +120,8 @@ ad7418_attach(device_t dev)
 	int conf;
 
 	sc->sc_dev = dev;
+	sc->sc_lastupdate = ticks - hz;
+
 	sx_init(&sc->sc_lock, "ad7418");
 
 	SYSCTL_ADD_PROC(ctx, SYSCTL_CHILDREN(tree), OID_AUTO,

Modified: stable/11/sys/dev/iwi/if_iwi.c
==============================================================================
--- stable/11/sys/dev/iwi/if_iwi.c	Mon Sep 11 02:52:41 2017	(r323420)
+++ stable/11/sys/dev/iwi/if_iwi.c	Mon Sep 11 02:56:45 2017	(r323421)
@@ -286,6 +286,7 @@ iwi_attach(device_t dev)
 	int i, error;
 
 	sc->sc_dev = dev;
+	sc->sc_ledevent = ticks;
 
 	IWI_LOCK_INIT(sc);
 	mbufq_init(&sc->sc_snd, ifqmaxlen);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201709110256.v8B2ukFS080983>