Re: [v7, net-next 09/10] bng_en: Register default VNIC
flat view
From: Bhargava Chenna Marreddy <hidden>
Date: 2025-09-19 06:29:08
Also in:
lkml
On Thu, Sep 18, 2025 at 1:48 AM ALOK TIWARI [off-list ref] wrote:
On 9/12/2025 1:05 AM, Bhargava Marreddy wrote:quoted
+int bnge_hwrm_vnic_cfg(struct bnge_net *bn, struct bnge_vnic_info *vnic) +{ + struct bnge_rx_ring_info *rxr = &bn->rx_ring[0]; + struct hwrm_vnic_cfg_input *req; + struct bnge_dev *bd = bn->bd; + int rc; + + rc = bnge_hwrm_req_init(bd, req, HWRM_VNIC_CFG); + if (rc) + return rc; + + req->default_rx_ring_id = + cpu_to_le16(rxr->rx_ring_struct.fw_ring_id); + req->default_cmpl_ring_id = + cpu_to_le16(bnge_cp_ring_for_rx(rxr)); + req->enables = + cpu_to_le32(VNIC_CFG_REQ_ENABLES_DEFAULT_RX_RING_ID | + VNIC_CFG_REQ_ENABLES_DEFAULT_CMPL_RING_ID); + vnic->mru = bd->netdev->mtu + ETH_HLEN + VLAN_HLEN;nit: does "struct bnge_dev" hold a netdev ? if not should be bn->netdev->mtu.
Thanks, Alok. Struct bnge_dev also holds netdev. But, bn->netdev->mtu looks cleaner, so I’ll fix it in the next patch.
quoted
+ req->mru = cpu_to_le16(vnic->mru); + + req->vnic_id = cpu_to_le16(vnic->fw_vnic_id); + + if (bd->flags & BNGE_EN_STRIP_VLAN) + req->flags |= cpu_to_le32(VNIC_CFG_REQ_FLAGS_VLAN_STRIP_MODE); + if (vnic->vnic_id == BNGE_VNIC_DEFAULT && bnge_aux_registered(bd)) + req->flags |= cpu_to_le32(BNGE_VNIC_CFG_ROCE_DUAL_MODE); + + return bnge_hwrm_req_send(bd, req); +}Thanks, Alok