aboutsummaryrefslogtreecommitdiff
path: root/sys/net/iflib.h
diff options
context:
space:
mode:
authorMarcin Wojtas <mw@FreeBSD.org>2021-05-19 09:09:16 +0000
committerMarcin Wojtas <mw@FreeBSD.org>2021-06-24 11:00:56 +0000
commit58632fa7a386f6338996b945fb38e807fc44db72 (patch)
tree0691315eb68954554a3b5d11d8ad9fe6768e08a1 /sys/net/iflib.h
parent3eae4e106ac7222364fc9dc8c3d35d4ad8c5293a (diff)
downloadsrc-58632fa7a386f6338996b945fb38e807fc44db72.tar.gz
src-58632fa7a386f6338996b945fb38e807fc44db72.zip
iflib: Add a new quirk
ENETC NIC found in LS1028A has a bug where clearing TX pidx/cidx causes the ring to hang after being re-enabled. Add a new flag, if set iflib will preserve the indices during restart. Submitted by: Kornel Duleba <mindal@semihalf.com> Reviewed by: gallatin, erj Obtained from: Semihalf Sponsored by: Alstom Group Differential Revision: https://reviews.freebsd.org/D30728
Diffstat (limited to 'sys/net/iflib.h')
-rw-r--r--sys/net/iflib.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/net/iflib.h b/sys/net/iflib.h
index f88294b3d01a..b6dcf6311d2b 100644
--- a/sys/net/iflib.h
+++ b/sys/net/iflib.h
@@ -402,6 +402,10 @@ typedef enum {
* Interface has an admin completion queue
*/
#define IFLIB_HAS_ADMINCQ 0x100000
+/*
+ * Interface needs to preserve TX ring indices across restarts.
+ */
+#define IFLIB_PRESERVE_TX_INDICES 0x200000
/*
* These enum values are used in iflib_needs_restart to indicate to iflib