kern/164499: commit references a PR
dfilter service
dfilter at FreeBSD.ORG
Mon Jul 29 05:40:01 UTC 2013
The following reply was made to PR kern/164499; it has been noted by GNATS.
From: dfilter at FreeBSD.ORG (dfilter service)
To: bug-followup at FreeBSD.org
Cc:
Subject: Re: kern/164499: commit references a PR
Date: Mon, 29 Jul 2013 05:39:28 +0000 (UTC)
Author: jhibbits
Date: Mon Jul 29 05:39:20 2013
New Revision: 253756
URL: http://svnweb.freebsd.org/changeset/base/253756
Log:
Use the streaming functions for reading/writing the BAP fields on wi(4). This
fixes wi(4) device access on big endian architectures.
PR: kern/164499
Reviewed by: adrian
Obtained from: NetBSD
Modified:
head/sys/dev/wi/if_wi.c
Modified: head/sys/dev/wi/if_wi.c
==============================================================================
--- head/sys/dev/wi/if_wi.c Sun Jul 28 20:11:31 2013 (r253755)
+++ head/sys/dev/wi/if_wi.c Mon Jul 29 05:39:20 2013 (r253756)
@@ -1905,8 +1905,7 @@ wi_seek_bap(struct wi_softc *sc, int id,
static int
wi_read_bap(struct wi_softc *sc, int id, int off, void *buf, int buflen)
{
- u_int16_t *ptr;
- int i, error, cnt;
+ int error, cnt;
if (buflen == 0)
return 0;
@@ -1915,9 +1914,7 @@ wi_read_bap(struct wi_softc *sc, int id,
return error;
}
cnt = (buflen + 1) / 2;
- ptr = (u_int16_t *)buf;
- for (i = 0; i < cnt; i++)
- *ptr++ = CSR_READ_2(sc, WI_DATA0);
+ CSR_READ_MULTI_STREAM_2(sc, WI_DATA0, (u_int16_t *)buf, cnt);
sc->sc_bap_off += cnt * 2;
return 0;
}
@@ -1925,8 +1922,7 @@ wi_read_bap(struct wi_softc *sc, int id,
static int
wi_write_bap(struct wi_softc *sc, int id, int off, void *buf, int buflen)
{
- u_int16_t *ptr;
- int i, error, cnt;
+ int error, cnt;
if (buflen == 0)
return 0;
@@ -1936,9 +1932,7 @@ wi_write_bap(struct wi_softc *sc, int id
return error;
}
cnt = (buflen + 1) / 2;
- ptr = (u_int16_t *)buf;
- for (i = 0; i < cnt; i++)
- CSR_WRITE_2(sc, WI_DATA0, ptr[i]);
+ CSR_WRITE_MULTI_STREAM_2(sc, WI_DATA0, (u_int16_t *)buf, cnt);
sc->sc_bap_off += cnt * 2;
return 0;
_______________________________________________
svn-src-all at freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscribe at freebsd.org"
More information about the freebsd-wireless
mailing list