<div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-family:arial,sans-serif;font-size:small">I ran this driver through the evaluation copy of PVS studio and it reported many warnings you should address.<br>Not all of them are valid, the tool seems to have a lot of false positives.</div><div class="gmail_default" style="font-family:arial,sans-serif;font-size:small"><br></div><div class="gmail_default" style="font-family:arial,sans-serif;font-size:small"><table style="color:rgb(0,0,0);font-variant-numeric:normal;font-variant-east-asian:normal;font-variant-alternates:normal;font-size-adjust:none;font-kerning:auto;font-feature-settings:normal;font-stretch:normal;font-size:12pt;line-height:normal;font-family:"normal Century Gothic";width:2265px"><caption style="font-weight:bold;background-image:initial;background-position:initial;background-size:initial;background-repeat:initial;background-origin:initial;background-clip:initial;border:none">MESSAGES</caption><tbody><tr style="background:black;color:white"><th style="width:675.094px">Location</th><th style="width:110.844px">Code</th><th style="width:1465.06px">Message</th></tr><tr style="background:lightcyan"><td colspan="5" style="padding:0px;text-align:center;vertical-align:top;color:red;font-size:1.2em">Fails/Info</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/base/rnp_mac.c">rnp_mac.c (258)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v610/">V610</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Undefined behavior. Check the shift operator '>>'. The right operand ('....' = [0x0..0xFFFFFFFFFFFFFFFF]) is greater than or equal to the length in bits of the promoted left operand.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/base/rnp_mac.c">rnp_mac.c (81)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v1037/">V1037</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Two or more case-branches perform the same actions. Check lines: 81, 84</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/base/rnp_mac.c">rnp_mac.c (205)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v525/">V525</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">The code contains the collection of similar blocks. Check items 'flt_reg', 'vlan_reg', 'vlan_reg' in lines 205, 206, 207.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/base/rnp_mac.c">rnp_mac.c (209)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v525/">V525</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">The code contains the collection of similar blocks. Check items 'flt_reg', 'vlan_reg', 'vlan_reg' in lines 209, 210, 211.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/base/rnp_mbx.c">rnp_mbx.c (398)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v547/">V547</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Expression '!ret_val' is always true.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/base/rnp_mbx_fw.c">rnp_mbx_fw.c (259)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v530/">V530</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">The return value of function 'rte_fls_u32' is required to be utilized.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/base/rnp_mbx_fw.c">rnp_mbx_fw.c (256)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v519/">V519</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">The 'is_sgmii_bits' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 255, 256.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/base/rnp_mbx_fw.c">rnp_mbx_fw.c (177)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v1086/">V1086</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">A call of the 'memcpy' function will lead to underflow of the buffer 'cookie->priv'.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/base/rnp_mbx_fw.c">rnp_mbx_fw.c (332)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v1086/">V1086</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">A call of the 'memcpy' function will lead to underflow of the buffer 'mac->addrs[nr_lane].mac'.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/base/rnp_mbx_fw.c">rnp_mbx_fw.c (271)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v576/">V576</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Incorrect format. Consider checking the 15th actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/base/rnp_mbx_fw.c">rnp_mbx_fw.c (389)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v1048/">V1048</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">The 'phy_meta->link_autoneg' variable was assigned the same value.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/base/rnp_osdep.h">rnp_osdep.h (126)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v576/">V576</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Incorrect format. Consider checking the fourth actual argument of the 'snprintf' function. The memsize type argument is expected.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/base/rnp_osdep.h">rnp_osdep.h (32)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v677/">V677</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Custom declaration of a standard 'dma_addr_t' type. The declaration from system header files should be used instead.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (750)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v530/">V530</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">The return value of function 'rte_fls_u32' is required to be utilized.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (1386)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v519/">V519</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">The 'reg' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 1381, 1386.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (1003)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v547/">V547</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Expression 'frame_size < 64' is always false.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (1003)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v649/">V649</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">There are two 'if' statements with identical conditional expressions. The first 'if' statement contains function return. This means that the second 'if' statement is senseless. Check lines: 988, 1003.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (583)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v684/">V684</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">A value of the variable 'cvlan_ctrl' is not modified. Consider inspecting the expression. It is possible that '1' should be present instead of '0'.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (598)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v684/">V684</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">A value of the variable 'svlan_ctrl' is not modified. Consider inspecting the expression. It is possible that '1' should be present instead of '0'.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (618)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v684/">V684</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">A value of the variable 'ctrl' is not modified. Consider inspecting the expression. It is possible that '1' should be present instead of '0'.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (106)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v1032/">V1032</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">The pointer 'msgbuf' is cast to a more strictly aligned pointer type.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (254)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v1051/">V1051</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Consider checking for misprints. It's possible that the 'dma_ctrl' should be checked here.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (1348)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v525/">V525</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">The code contains the collection of similar blocks. Check items 'mac_stats', 'mac_stats', 'eth_stats' in lines 1348, 1354, 1360.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (1444)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v576/">V576</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (1458)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v576/">V576</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Incorrect format. Consider checking the fifth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (110)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v641/">V641</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">The size of the 'msgbuf' buffer is not a multiple of the element size of the type 'struct rnp_mbx_fw_cmd_reply'.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (113)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v641/">V641</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">The size of the 'msgbuf' buffer is not a multiple of the element size of the type 'struct rnp_mbx_fw_cmd_req'.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (718)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v1027/">V1027</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Pointer to an object of the 'rte_device' class is cast to unrelated 'rte_pci_device' class.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (1637)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v1027/">V1027</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Pointer to an object of the 'rte_device' class is cast to unrelated 'rte_pci_device' class.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_ethdev.c">rnp_ethdev.c (1766)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v1027/">V1027</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Pointer to an object of the 'rte_device' class is cast to unrelated 'rte_pci_device' class.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_link.c">rnp_link.c (192)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v519/">V519</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">The 'link.link_autoneg' variable is assigned values twice successively. Perhaps this is a mistake. Check lines: 186, 192.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_link.c">rnp_link.c (359)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v547/">V547</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Expression '!port->attr.link_ready' is always true.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_link.c">rnp_link.c (113)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v1048/">V1048</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">The 'lane' variable was assigned the same value.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_rss.c">rnp_rss.c (218)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v547/">V547</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Expression 'rss_hash_level == (2UL << 50)' is always false.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_rxtx.c">rnp_rxtx.c (1409)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v684/">V684</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">A value of the variable 'txbd->d.cmd' is not modified. Consider inspecting the expression. It is possible that '1' should be present instead of '0'.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_rxtx.c">rnp_rxtx.c (253)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v576/">V576</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Incorrect format. Consider checking the tenth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_rxtx.c">rnp_rxtx.c (461)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v576/">V576</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Incorrect format. Consider checking the tenth actual argument of the 'rte_log' function. The SIGNED integer type argument is expected.</td></tr><tr><td style="padding:0px;vertical-align:top;width:677.094px"><div title="DPDK/rnp/drivers/net/rnp/rnp_rxtx.c">rnp_rxtx.c (1224)</div></td><td style="padding:0px;vertical-align:top;width:112.844px"><a target="_blank" href="https://pvs-studio.com/en/docs/warnings/v1027/">V1027</a></td><td style="padding:0px;vertical-align:top;width:1467.06px">Pointer to an object of the 'rte_ether_hdr' class is cast to unrelated 'rte_vlan_hdr' class.</td></tr></tbody></table></div></div></div><br><div class="gmail_quote gmail_quote_container"><div dir="ltr" class="gmail_attr">On Wed, Feb 12, 2025 at 7:34 AM Wenbo Cao <<a href="mailto:caowenbo@mucse.com">caowenbo@mucse.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">For This patchset just to support the basic chip init work<br>
and user can just found the eth_dev, but can't control more.<br>
For Now just support 2*10g nic,the chip can support<br>
2*10g,4*10g,4*1g,8*1g,8*10g.<br>
The Feature rx side can support rx-cksum-offload,rss,vlan-filter<br>
flow_clow,uncast_filter,mcast_filter,1588,Jumbo-frame<br>
The Feature tx side can support tx-cksum-offload,tso,vxlan-tso <br>
flow director base on ntuple pattern of tcp/udp/ip/ eth_hdr->type<br>
for sriov is also support.<br>
<br>
Because of the chip design defect, for multiple-port mode<br>
one pci-bdf will have multiple-port (max can have four ports)<br>
so this code must be care of one bdf init multiple-port.<br>
v12:<br>
  * fixed __rte_packed __deprecated__ compile issue.<br>
<br>
v11:<br>
  * fixed array-bounds issue when used rte_memcpy src addr is<br>
  * not enough to hold align dst.<br>
  * improve efficient_code advised by Stephen<br>
<br>
v10:<br>
  * fixed mingw windows meson issue<br>
  * rnp not support windows for now.<br>
<br>
v9:<br>
  * fixed commit log format check by devtools.<br>
  * fixed code compile issue.<br>
<br>
v8:<br>
  * fixed codespell issue.<br>
  * fixed MAINTAINERS file<br>
<br>
v7:<br>
  * add support nic basic feature such as rss vlan strip/filter,<br>
  * mtu-change recv/send scater-recv/mutltiple-send.<br>
  * fixed code rationality, advised by Ferruh Yigit.<br>
v6:<br>
  * fixed the doc(rst) format problem advise by Thomas Monjalon<br>
<br>
v5:<br>
  * fixed the symbol name require by the style documentation<br>
<br>
v4:<br>
  * one patch has been forgot to upload :(<br>
<br>
v3:<br>
  * fixed <a href="http://dpdk.org/patch/129830" rel="noreferrer" target="_blank">http://dpdk.org/patch/129830</a> FreeBSD 13 compile Issue<br>
  * change iobar type to void suggest by Stephen Hemminger<br>
  * add KMOD_DEP support for vfio-pci<br>
  * change run-cmd argument parse check for invalid extra_args<br>
<br>
v2:<br>
  * fixed MAINTAIN maillist fullname format<br>
  * fixed driver/net/meson the order issue of new driver to driver list<br>
  * improve virtual point function usage suggest by Stephen Hemminger<br>
<br>
Wenbo Cao (28):<br>
  net/rnp: add skeleton<br>
  net/rnp: add ethdev probe and remove<br>
  net/rnp: add log<br>
  net/rnp: support mailbox basic operate<br>
  net/rnp: add device init and uninit<br>
  net/rnp: add get device information operation<br>
  net/rnp: add support MAC promisc mode<br>
  net/rnp: add queue setup and release operations<br>
  net/rnp: add queue stop and start operations<br>
  net/rnp: add support device start stop operations<br>
  net/rnp: add RSS support operations<br>
  net/rnp: add support link update operations<br>
  net/rnp: add support link setup operations<br>
  net/rnp: add Rx burst simple support<br>
  net/rnp: add Tx burst simple support<br>
  net/rnp: add MTU set operation<br>
  net/rnp: add Rx scatter segment version<br>
  net/rnp: add Tx multiple segment version<br>
  net/rnp: add support basic stats operation<br>
  net/rnp: add support xstats operation<br>
  net/rnp: add unicast MAC filter operation<br>
  net/rnp: add supported packet types<br>
  net/rnp: add support Rx checksum offload<br>
  net/rnp: add support Tx TSO offload<br>
  net/rnp: support VLAN offloads<br>
  net/rnp: add support VLAN filters operations<br>
  net/rnp: add queue info operation<br>
  net/rnp: support Rx/Tx burst mode info<br>
<br>
 .mailmap                            |    1 +<br>
 MAINTAINERS                         |    6 +<br>
 doc/guides/nics/features/rnp.ini    |   33 +<br>
 doc/guides/nics/index.rst           |    1 +<br>
 doc/guides/nics/rnp.rst             |  101 ++<br>
 drivers/net/meson.build             |    1 +<br>
 drivers/net/rnp/base/meson.build    |   17 +<br>
 drivers/net/rnp/base/rnp_bdq_if.c   |  398 ++++++<br>
 drivers/net/rnp/base/rnp_bdq_if.h   |  154 +++<br>
 drivers/net/rnp/base/rnp_bitrev.h   |   64 +<br>
 drivers/net/rnp/base/rnp_common.c   |  103 ++<br>
 drivers/net/rnp/base/rnp_common.h   |   17 +<br>
 drivers/net/rnp/base/rnp_crc32.c    |   37 +<br>
 drivers/net/rnp/base/rnp_crc32.h    |   10 +<br>
 drivers/net/rnp/base/rnp_dma_regs.h |   68 +<br>
 drivers/net/rnp/base/rnp_eth_regs.h |   90 ++<br>
 drivers/net/rnp/base/rnp_fw_cmd.c   |  162 +++<br>
 drivers/net/rnp/base/rnp_fw_cmd.h   |  357 ++++++<br>
 drivers/net/rnp/base/rnp_hw.h       |  136 ++<br>
 drivers/net/rnp/base/rnp_mac.c      |  366 ++++++<br>
 drivers/net/rnp/base/rnp_mac.h      |   34 +<br>
 drivers/net/rnp/base/rnp_mac_regs.h |  207 +++<br>
 drivers/net/rnp/base/rnp_mbx.c      |  512 ++++++++<br>
 drivers/net/rnp/base/rnp_mbx.h      |   58 +<br>
 drivers/net/rnp/base/rnp_mbx_fw.c   |  499 ++++++++<br>
 drivers/net/rnp/base/rnp_mbx_fw.h   |   24 +<br>
 drivers/net/rnp/base/rnp_osdep.h    |  169 +++<br>
 drivers/net/rnp/meson.build         |   27 +<br>
 drivers/net/rnp/rnp.h               |  258 ++++<br>
 drivers/net/rnp/rnp_ethdev.c        | 1841 +++++++++++++++++++++++++++<br>
 drivers/net/rnp/rnp_link.c          |  439 +++++++<br>
 drivers/net/rnp/rnp_link.h          |   38 +<br>
 drivers/net/rnp/rnp_logs.h          |   36 +<br>
 drivers/net/rnp/rnp_rss.c           |  367 ++++++<br>
 drivers/net/rnp/rnp_rss.h           |   43 +<br>
 drivers/net/rnp/rnp_rxtx.c          | 1815 ++++++++++++++++++++++++++<br>
 drivers/net/rnp/rnp_rxtx.h          |  162 +++<br>
 37 files changed, 8651 insertions(+)<br>
 create mode 100644 doc/guides/nics/features/rnp.ini<br>
 create mode 100644 doc/guides/nics/rnp.rst<br>
 create mode 100644 drivers/net/rnp/base/meson.build<br>
 create mode 100644 drivers/net/rnp/base/rnp_bdq_if.c<br>
 create mode 100644 drivers/net/rnp/base/rnp_bdq_if.h<br>
 create mode 100644 drivers/net/rnp/base/rnp_bitrev.h<br>
 create mode 100644 drivers/net/rnp/base/rnp_common.c<br>
 create mode 100644 drivers/net/rnp/base/rnp_common.h<br>
 create mode 100644 drivers/net/rnp/base/rnp_crc32.c<br>
 create mode 100644 drivers/net/rnp/base/rnp_crc32.h<br>
 create mode 100644 drivers/net/rnp/base/rnp_dma_regs.h<br>
 create mode 100644 drivers/net/rnp/base/rnp_eth_regs.h<br>
 create mode 100644 drivers/net/rnp/base/rnp_fw_cmd.c<br>
 create mode 100644 drivers/net/rnp/base/rnp_fw_cmd.h<br>
 create mode 100644 drivers/net/rnp/base/rnp_hw.h<br>
 create mode 100644 drivers/net/rnp/base/rnp_mac.c<br>
 create mode 100644 drivers/net/rnp/base/rnp_mac.h<br>
 create mode 100644 drivers/net/rnp/base/rnp_mac_regs.h<br>
 create mode 100644 drivers/net/rnp/base/rnp_mbx.c<br>
 create mode 100644 drivers/net/rnp/base/rnp_mbx.h<br>
 create mode 100644 drivers/net/rnp/base/rnp_mbx_fw.c<br>
 create mode 100644 drivers/net/rnp/base/rnp_mbx_fw.h<br>
 create mode 100644 drivers/net/rnp/base/rnp_osdep.h<br>
 create mode 100644 drivers/net/rnp/meson.build<br>
 create mode 100644 drivers/net/rnp/rnp.h<br>
 create mode 100644 drivers/net/rnp/rnp_ethdev.c<br>
 create mode 100644 drivers/net/rnp/rnp_link.c<br>
 create mode 100644 drivers/net/rnp/rnp_link.h<br>
 create mode 100644 drivers/net/rnp/rnp_logs.h<br>
 create mode 100644 drivers/net/rnp/rnp_rss.c<br>
 create mode 100644 drivers/net/rnp/rnp_rss.h<br>
 create mode 100644 drivers/net/rnp/rnp_rxtx.c<br>
 create mode 100644 drivers/net/rnp/rnp_rxtx.h<br>
<br>
-- <br>
2.48.1<br>
<br>
</blockquote></div>