opnsense-src/sys/conf
Shailend Chand c7aea09126 gve: Add DQO RDA support
DQO is the descriptor format for our next generation virtual NIC.
It is necessary to make full use of the hardware bandwidth on many
newer GCP VM shapes.

One major change with DQO from its predecessor GQI is that it uses
dual descriptor rings for both TX and RX queues.

The TX path uses a descriptor ring to send descriptors to HW, and
receives packet completion events on a TX completion ring.

The RX path posts buffers to HW using an RX descriptor ring and
receives incoming packets on an RX completion ring.

In GQI-QPL, the hardware could not access arbitrary regions of
guest memory, which is why there was a pre-negotitated bounce buffer
(QPL: Queue Page List). DQO-RDA has no such limitation.

"RDA" is in contrast to QPL and stands for "Raw DMA Addressing" which
just means that HW does not need a fixed bounce buffer and can DMA
arbitrary regions of guest memory.

A subsequent patch will introduce the DQO-QPL datapath that uses the
same descriptor format as in this patch, but will have a fixed
bounce buffer.

Signed-off-by: Shailend Chand <shailend@google.com>
Reviewed-by: markj
MFC-after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D46690

(cherry picked from commit d438b4ef0cfc6986b93d0754f49ebf3ead50f269)
2024-11-20 21:41:08 +00:00
..
config.mk sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
dtb.build.mk sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
dtb.mk sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
files gve: Add DQO RDA support 2024-11-20 21:41:08 +00:00
files.amd64 ice_ddp: Update to 1.3.41.0 2024-10-30 13:51:47 -07:00
files.arm dtrace: Avoid including dtrace_isa.c directly into dtrace.c 2024-08-08 15:53:50 +00:00
files.arm64 ice_ddp: Update to 1.3.41.0 2024-10-30 13:51:47 -07:00
files.i386 files.x86: Pull in some more duplicate lines from files.{amd64,i386} 2024-07-18 13:20:41 -04:00
files.powerpc ice_ddp: Update to 1.3.41.0 2024-10-30 13:51:47 -07:00
files.riscv riscv: Convert local interrupt controller to a newbus PIC 2024-09-07 01:00:28 +01:00
files.x86 AMD IOMMU driver 2024-11-09 21:04:18 +02:00
kern.mk arm64: Disable outling atomics 2024-07-15 12:30:02 +00:00
kern.opts.mk Enable kernel reproducible builds on stable branch 2024-05-03 15:22:16 -07:00
kern.post.mk Add the BBR and RACK stacks to the LINT kernel. 2024-01-16 10:32:07 -08:00
kern.pre.mk LinuxKPI: always include linux/kconfig.h 2024-10-16 21:49:45 +00:00
kmod.mk LinuxKPI: always include linux/kconfig.h 2024-10-16 21:49:45 +00:00
kmod.opts.mk sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
kmod_syms.awk sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
kmod_syms_prefix.awk sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
ldscript.amd64 kernel: Fix defining of .init_array and .fini_array sections 2024-09-22 22:45:36 +08:00
ldscript.arm kernel: Add defination of .init_array and .fini_array for all other platforms 2024-09-22 22:45:36 +08:00
ldscript.arm64 kernel: Add defination of .init_array and .fini_array for all other platforms 2024-09-22 22:45:36 +08:00
ldscript.i386 kernel: Fix defining of .init_array and .fini_array sections 2024-09-22 22:45:36 +08:00
ldscript.kmod.amd64 sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ldscript.kmod.i386 sys: Remove $FreeBSD$: two-line .h pattern 2023-08-16 11:54:11 -06:00
ldscript.powerpc kernel: Add defination of .init_array and .fini_array for all other platforms 2024-09-22 22:45:36 +08:00
ldscript.powerpc64 kernel: Add defination of .init_array and .fini_array for all other platforms 2024-09-22 22:45:36 +08:00
ldscript.powerpc64le kernel: Add defination of .init_array and .fini_array for all other platforms 2024-09-22 22:45:36 +08:00
ldscript.powerpcspe kernel: Add defination of .init_array and .fini_array for all other platforms 2024-09-22 22:45:36 +08:00
ldscript.riscv kernel: Add defination of .init_array and .fini_array for all other platforms 2024-09-22 22:45:36 +08:00
Makefile.amd64 sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
Makefile.arm Fix incorrect -I option in sys/conf/Makefile.arm 2024-08-04 12:21:10 +02:00
Makefile.arm64 sys: Build arm64 per-thread SSP with GCC 2024-07-15 12:27:54 +00:00
Makefile.i386 sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
Makefile.powerpc sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
Makefile.riscv sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
newvers.sh Post-14.2-branch updates 2024-10-31 17:03:16 -07:00
NOTES filemon: Document how to build into the kernel. 2024-08-01 18:15:58 +02:00
options filemon: Document how to build into the kernel. 2024-08-01 18:15:58 +02:00
options.amd64 sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
options.arm sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
options.arm64 sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
options.i386 i386: Use DEV_HYPERV to enable HyperV APIC vector 2024-07-18 13:31:50 -04:00
options.powerpc sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
options.riscv sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
std.debug sys: add conf/std.debug, generic debugging options 2024-10-09 10:44:35 +02:00
std.nodebug std.nodebug: remove DIAGNOSTIC from debug configs 2023-08-18 16:39:22 +03:00
sysent.mk sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
systags.sh sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
vdso_amd64.ldscript spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
vdso_amd64_ia32.ldscript spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD 2023-05-12 10:44:03 -06:00
WITHOUT_SOURCELESS sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
WITHOUT_SOURCELESS_HOST sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00
WITHOUT_SOURCELESS_UCODE sys: Remove $FreeBSD$: one-line sh pattern 2023-08-16 11:54:58 -06:00