svn commit: r289732 - head/sys/dev/ioat
Conrad E. Meyer
cem at FreeBSD.org
Thu Oct 22 04:33:07 UTC 2015
Author: cem
Date: Thu Oct 22 04:33:05 2015
New Revision: 289732
URL: https://svnweb.freebsd.org/changeset/base/289732
Log:
ioat: Define IOAT_XFERCAP_VALID_MASK and use in ioat_read_xfercap
Instead of ANDing a magic constant later.
Sponsored by: EMC / Isilon Storage Division
Modified:
head/sys/dev/ioat/ioat.c
head/sys/dev/ioat/ioat_hw.h
head/sys/dev/ioat/ioat_internal.h
Modified: head/sys/dev/ioat/ioat.c
==============================================================================
--- head/sys/dev/ioat/ioat.c Thu Oct 22 04:28:22 2015 (r289731)
+++ head/sys/dev/ioat/ioat.c Thu Oct 22 04:33:05 2015 (r289732)
@@ -341,9 +341,6 @@ ioat3_attach(device_t device)
capabilities = ioat_read_dmacapability(ioat);
xfercap = ioat_read_xfercap(ioat);
-
- /* Only bits [4:0] are valid. */
- xfercap &= 0x1f;
ioat->max_xfer_size = 1 << xfercap;
/* TODO: need to check DCA here if we ever do XOR/PQ */
Modified: head/sys/dev/ioat/ioat_hw.h
==============================================================================
--- head/sys/dev/ioat/ioat_hw.h Thu Oct 22 04:28:22 2015 (r289731)
+++ head/sys/dev/ioat/ioat_hw.h Thu Oct 22 04:33:05 2015 (r289732)
@@ -34,6 +34,8 @@ __FBSDID("$FreeBSD$");
#define IOAT_CHANCNT_OFFSET 0x00
#define IOAT_XFERCAP_OFFSET 0x01
+/* Only bits [4:0] are valid. */
+#define IOAT_XFERCAP_VALID_MASK 0x1f
#define IOAT_GENCTRL_OFFSET 0x02
Modified: head/sys/dev/ioat/ioat_internal.h
==============================================================================
--- head/sys/dev/ioat/ioat_internal.h Thu Oct 22 04:28:22 2015 (r289731)
+++ head/sys/dev/ioat/ioat_internal.h Thu Oct 22 04:33:05 2015 (r289732)
@@ -35,7 +35,7 @@ __FBSDID("$FreeBSD$");
ioat_read_1((ioat), IOAT_CHANCNT_OFFSET)
#define ioat_read_xfercap(ioat) \
- ioat_read_1((ioat), IOAT_XFERCAP_OFFSET)
+ (ioat_read_1((ioat), IOAT_XFERCAP_OFFSET) & IOAT_XFERCAP_VALID_MASK)
#define ioat_write_intrctrl(ioat, value) \
ioat_write_1((ioat), IOAT_INTRCTRL_OFFSET, (value))
More information about the svn-src-all
mailing list