sys: Remove $FreeBSD$: one-line sh patternRemove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
sys/modules: normalize .CURDIR-relative paths to SRCTOPThis simplifies make output/logicTested with: `cd sys/modules; make ALL_MODULES=` on amd64MFC after: 1 monthSponsored by: Dell EMC Isilon
Chelsio T4/T5 VF driver.The cxgbev/cxlv driver supports Virtual Function devices for ChelsioT4 and T4 adapters. The VF devices share most of their code with theexisting PF4 driver (cxgbe/cxl) an
Chelsio T4/T5 VF driver.The cxgbev/cxlv driver supports Virtual Function devices for ChelsioT4 and T4 adapters. The VF devices share most of their code with theexisting PF4 driver (cxgbe/cxl) and as such the VF device drivercurrently depends on the PF4 driver.Similar to the cxgbe/cxl drivers, the VF driver includes a t4vf/t5vfPCI device driver that attaches to the VF device. It then createschild cxgbev/cxlv devices representing ports assigned to the VF.By default, the PF driver assigns a single port to each VF.t4vf_hw.c contains VF-specific routines from the shared code used tofetch VF-specific parameters from the firmware.t4_vf.c contains the VF-specific PCI device driver and includes itsown attach routine.VF devices are required to use a different firmware request whentransmitting packets (which in turn requires a different CPL messageto encapsulate messages). This alternate firmware request does notpermit chaining multiple packets in a single message, so each packetresults in a firmware request. In addition, the different CPL messagerequires more detailed information when enabling hardware checksums,so parse_pkt() on VF devices must examine L2 and L3 headers for allpackets (not just TSO packets) for VF devices. Finally, L2 checksumson non-UDP/non-TCP packets do not work reliably (the firmware trashesthe IPv4 fragment field), so IPv4 checksums for such packets arecalculated in software.Most of the other changes in the non-VF-specific code are to exposevarious variables and functions private to the PF driver so that theycan be used by the VF driver.Note that a limited subset of cxgbetool functions are supported on VFdevices including register dumps, scheduler classes, and clearing ofstatistics. In addition, TOE is not supported on VF devices, only forthe PF interfaces.Reviewed by: npMFC after: 2 monthsSponsored by: Chelsio CommunicationsDifferential Revision: https://reviews.freebsd.org/D7599
show more ...