Skip to content

Commit 3f67782

Browse files
committed
Merge branch 'bnxt_en-bug-fixes-for-net'
Michael Chan says: ==================== bnxt_en: Bug fixes for net The first firmware interface update is needed by the second patch to limit the number of TSO segments on the 5760X chips. The third patch fixes the TX error path for PTP packets. ==================== Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Jakub Kicinski <[email protected]>
2 parents 8851346 + 1e79621 commit 3f67782

File tree

3 files changed

+184
-136
lines changed

3 files changed

+184
-136
lines changed

drivers/net/ethernet/broadcom/bnxt/bnxt.c

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -732,9 +732,6 @@ static netdev_tx_t bnxt_start_xmit(struct sk_buff *skb, struct net_device *dev)
732732
return NETDEV_TX_OK;
733733

734734
tx_dma_error:
735-
if (BNXT_TX_PTP_IS_SET(lflags))
736-
atomic_inc(&bp->ptp_cfg->tx_avail);
737-
738735
last_frag = i;
739736

740737
/* start back at beginning and unmap skb */
@@ -756,6 +753,8 @@ static netdev_tx_t bnxt_start_xmit(struct sk_buff *skb, struct net_device *dev)
756753
tx_free:
757754
dev_kfree_skb_any(skb);
758755
tx_kick_pending:
756+
if (BNXT_TX_PTP_IS_SET(lflags))
757+
atomic_inc(&bp->ptp_cfg->tx_avail);
759758
if (txr->kick_pending)
760759
bnxt_txr_db_kick(bp, txr, txr->tx_prod);
761760
txr->tx_buf_ring[txr->tx_prod].skb = NULL;
@@ -8996,6 +8995,7 @@ static int __bnxt_hwrm_func_qcaps(struct bnxt *bp)
89968995
memcpy(vf->mac_addr, resp->mac_address, ETH_ALEN);
89978996
#endif
89988997
}
8998+
bp->tso_max_segs = le16_to_cpu(resp->max_tso_segs);
89998999

90009000
hwrm_func_qcaps_exit:
90019001
hwrm_req_drop(bp, req);
@@ -15363,6 +15363,8 @@ static int bnxt_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
1536315363
dev->priv_flags |= IFF_UNICAST_FLT;
1536415364

1536515365
netif_set_tso_max_size(dev, GSO_MAX_SIZE);
15366+
if (bp->tso_max_segs)
15367+
netif_set_tso_max_segs(dev, bp->tso_max_segs);
1536615368

1536715369
dev->xdp_features = NETDEV_XDP_ACT_BASIC | NETDEV_XDP_ACT_REDIRECT |
1536815370
NETDEV_XDP_ACT_RX_SG;

drivers/net/ethernet/broadcom/bnxt/bnxt.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2318,6 +2318,7 @@ struct bnxt {
23182318
u8 rss_hash_key_updated:1;
23192319

23202320
u16 max_mtu;
2321+
u16 tso_max_segs;
23212322
u8 max_tc;
23222323
u8 max_lltc; /* lossless TCs */
23232324
struct bnxt_queue_info q_info[BNXT_MAX_QUEUE];

0 commit comments

Comments
 (0)