aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/sfxge/common/efx_check.h
diff options
context:
space:
mode:
authorAndrew Rybchenko <arybchik@FreeBSD.org>2018-11-29 06:45:38 +0000
committerAndrew Rybchenko <arybchik@FreeBSD.org>2018-11-29 06:45:38 +0000
commit04381b5e2960a8f757138ed68fbcf2c6f8fac650 (patch)
tree2d9edd6c9a30d01ef5a68656e9ca825a756751d7 /sys/dev/sfxge/common/efx_check.h
parentceeff9b1a17a917b6ea78b24a8a624f0d19b77ab (diff)
downloadsrc-04381b5e2960a8f757138ed68fbcf2c6f8fac650.tar.gz
src-04381b5e2960a8f757138ed68fbcf2c6f8fac650.zip
sfxge(4): support equal stride super-buffer Rx mode
Equal stride super-buffer Rx mode is supported by DPDK firmware variant. One Rx descriptor provides many Rx buffers to firmware. Rx buffers follow each other with specified stride. Also it supports head of line blocking with timeout to address drops when no Rx descriptors are available. So it gives extra time to the driver to provide Rx descriptors before drop. Sponsored by: Solarflare Communications, Inc. Differential Revision: https://reviews.freebsd.org/D18236
Notes
Notes: svn path=/head/; revision=341205
Diffstat (limited to 'sys/dev/sfxge/common/efx_check.h')
-rw-r--r--sys/dev/sfxge/common/efx_check.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/sys/dev/sfxge/common/efx_check.h b/sys/dev/sfxge/common/efx_check.h
index 2b4c72097533..8ba63ca42193 100644
--- a/sys/dev/sfxge/common/efx_check.h
+++ b/sys/dev/sfxge/common/efx_check.h
@@ -370,6 +370,13 @@
# endif
#endif
+#if EFSYS_OPT_RX_ES_SUPER_BUFFER
+/* Support equal stride super-buffer mode */
+# if !(EFSYS_OPT_MEDFORD2)
+# error "ES_SUPER_BUFFER requires MEDFORD2"
+# endif
+#endif
+
/* Support hardware assistance for tunnels */
#if EFSYS_OPT_TUNNEL
# if !(EFSYS_OPT_MEDFORD || EFSYS_OPT_MEDFORD2)