e1124c4f8a
Adds the framework to support flower representors. The number of VF representors are parsed from the command line. For physical port representors the current logic aims to create a representor for each physical port present on the hardware. An eth_dev is created for each physical port and VF, and flower firmware requires a MAC repr cmsg to be transmitted to firmware with info about the number of physical ports configured. Reify messages are sent to hardware for each physical port representor. An rte_ring is also created per representor so that traffic can be pushed and pulled to this interface. To up and down the real device represented by a flower representor port a port mod message is used to convey that info to the firmware. This message will be used in the dev_ops callbacks of flower representors. Each cmsg generated by the driver is prepended with a cmsg header. This commit also adds the logic to fill in the header of cmsgs. Also add the Rx and Tx path for flower representors. For Rx packets are dequeued from the representor ring and passed to the eth_dev. For Tx the first queue of the PF vNIC is used. Metadata about the representor is added before the packet is sent down to firmware. Signed-off-by: Chaoyong He <chaoyong.he@corigine.com> Reviewed-by: Niklas Söderlund <niklas.soderlund@corigine.com> |
||
---|---|---|
.. | ||
flower | ||
nfpcore | ||
meson.build | ||
nfp_common.c | ||
nfp_common.h | ||
nfp_cpp_bridge.c | ||
nfp_cpp_bridge.h | ||
nfp_ctrl.h | ||
nfp_ethdev_vf.c | ||
nfp_ethdev.c | ||
nfp_logs.h | ||
nfp_rxtx.c | ||
nfp_rxtx.h | ||
version.map |