Thread (27 messages) 27 messages, 4 authors, 2025-09-19

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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help