54. RNP Poll Mode driver
The RNP ethdev PMD (librte_net_rnp) provides poll mode ethdev driver support for the inbuilt network device found in the Mucse RNP
More information can be found at Mucse, Official Website.
54.1. Supported Chipsets and NICs
MUCSE Ethernet Controller N10 Series for 10GbE or 40GbE (Dual-port)
54.1.1. Support of Ethernet Network Controllers
54.1.1.1. PCIe NICs
N10G-X2-DC .... Dual-port 10 Gigabit SFP Ethernet Adapter
N10G-X4-QC .... Quad-port 10 Gigabit SFP Ethernet Adapter
N10G-X8-OC .... Octa-port 10 Gigabit SFP Ethernet Adapter
54.2. Chip Basic Overview
N10 has two functions, each function support multiple ports (1 to 8), which is different of normal PCIe network card (one PF for each port).
Fig. 54.1 rnp Mucse NIC port.
54.3. Features
Multiple queues for Tx and Rx
Receiver Side Steering (RSS) Receiver Side Steering (RSS) on IPv4, IPv6, IPv4-TCP/UDP/SCTP, IPv6-TCP/UDP/SCTP Inner RSS is only supported for VXLAN/NVGRE
Promiscuous mode
Link state information
MTU update
MAC/VLAN filtering
Jumbo frames
Scatter-Gather IO support
Port hardware statistics
Packet type parsing
Checksum offload
TSO offload
VLAN stripping and VLAN/QINQ insertion
54.4. Prerequisites and Pre-conditions
Prepare the system as recommended by DPDK suite.
Bind the intended N10 device to
igb_uio
orvfio-pci
module.
Now DPDK system is ready to detect N10 ports.
54.5. Limitations or Known issues
X86-32, BSD, Armv7, RISC-V, Windows, are not supported yet.
54.6. Supported APIs
54.6.1. rte_eth APIs
Listed below are the rte_eth functions supported:
rte_eth_dev_close
rte_eth_dev_stop
rte_eth_dev_infos_get
rte_eth_dev_rx_queue_start
rte_eth_dev_rx_queue_stop
rte_eth_dev_tx_queue_start
rte_eth_dev_tx_queue_stop
rte_eth_dev_start
rte_eth_dev_stop
rte_eth_dev_rss_hash_conf_get
rte_eth_dev_rss_hash_update
rte_eth_dev_rss_reta_query
rte_eth_dev_rss_reta_update
rte_eth_dev_set_link_down
rte_eth_dev_set_link_up
rte_eth_dev_get_mtu
rte_eth_dev_set_mtu
rte_eth_dev_default_mac_addr_set
rte_eth_dev_mac_addr_add
rte_eth_dev_mac_addr_remove
rte_eth_dev_set_mc_addr_list
rte_eth_dev_get_supported_ptypes
rte_eth_dev_get_vlan_offload
rte_eth_dev_set_vlan_offload
rte_eth_dev_set_vlan_strip_on_queue
rte_eth_dev_vlan_filter
rte_eth_promiscuous_disable
rte_eth_promiscuous_enable
rte_eth_allmulticast_enable
rte_eth_allmulticast_disable
rte_eth_promiscuous_get
rte_eth_allmulticast_get
rte_eth_rx_queue_setup
rte_eth_rx_queue_info_get
rte_eth_rx_burst_mode_get
rte_eth_tx_queue_setup
rte_eth_tx_queue_info_get
rte_eth_tx_burst_mode_get
rte_eth_link_get
rte_eth_link_get_nowait
rte_eth_stats_get
rte_eth_stats_reset
rte_eth_xstats_get
rte_eth_xstats_reset
rte_eth_xstats_get_names
rte_eth_macaddr_get
rte_eth_macaddrs_get