Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 14 Mar 2014 06:38:22 +0000 (UTC)
From:      Kevin Lo <kevlo@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r263154 - head/sys/dev/usb/wlan
Message-ID:  <201403140638.s2E6cM6D024952@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: kevlo
Date: Fri Mar 14 06:38:22 2014
New Revision: 263154
URL: http://svnweb.freebsd.org/changeset/base/263154

Log:
  Reset the bit of the R92C_MCUFWDL associated with checksum report
  before loading firmware page.  It may fix this problem:
  "urtwn0: timeout waiting for checksum report"

Modified:
  head/sys/dev/usb/wlan/if_urtwn.c

Modified: head/sys/dev/usb/wlan/if_urtwn.c
==============================================================================
--- head/sys/dev/usb/wlan/if_urtwn.c	Fri Mar 14 06:37:08 2014	(r263153)
+++ head/sys/dev/usb/wlan/if_urtwn.c	Fri Mar 14 06:38:22 2014	(r263154)
@@ -2098,6 +2098,10 @@ urtwn_load_firmware(struct urtwn_softc *
 	urtwn_write_1(sc, R92C_MCUFWDL + 2,
 	    urtwn_read_1(sc, R92C_MCUFWDL + 2) & ~0x08);
 
+	/* Reset the FWDL checksum. */
+	urtwn_write_1(sc, R92C_MCUFWDL,
+	    urtwn_read_1(sc, R92C_MCUFWDL) | R92C_MCUFWDL_CHKSUM_RPT);
+
 	for (page = 0; len > 0; page++) {
 		mlen = min(len, R92C_FW_PAGE_SIZE);
 		error = urtwn_fw_loadpage(sc, page, ptr, mlen);



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