mirror of
https://github.com/torvalds/linux.git
synced 2026-07-29 18:51:21 +02:00
octeontx2-pf: Reuse PF max mtu value
Reuse the maximum support HW MTU value that is fetch during probe. Instead of fetching through mbox each time mtu is changed as the value is fixed for interface. Signed-off-by: Geetha sowjanya <gakula@marvell.com> Reviewed-by: Simon Horman <horms@kernel.org> Link: https://patch.msgid.link/20241023161843.15543-4-gakula@marvell.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
03d80a1ba5
commit
dec6f5ebd7
|
|
@ -227,7 +227,7 @@ int otx2_hw_set_mtu(struct otx2_nic *pfvf, int mtu)
|
|||
u16 maxlen;
|
||||
int err;
|
||||
|
||||
maxlen = otx2_get_max_mtu(pfvf) + OTX2_ETH_HLEN + OTX2_HW_TIMESTAMP_LEN;
|
||||
maxlen = pfvf->hw.max_mtu + OTX2_ETH_HLEN + OTX2_HW_TIMESTAMP_LEN;
|
||||
|
||||
mutex_lock(&pfvf->mbox.lock);
|
||||
req = otx2_mbox_alloc_msg_nix_set_hw_frs(&pfvf->mbox);
|
||||
|
|
@ -236,7 +236,7 @@ int otx2_hw_set_mtu(struct otx2_nic *pfvf, int mtu)
|
|||
return -ENOMEM;
|
||||
}
|
||||
|
||||
req->maxlen = pfvf->netdev->mtu + OTX2_ETH_HLEN + OTX2_HW_TIMESTAMP_LEN;
|
||||
req->maxlen = mtu + OTX2_ETH_HLEN + OTX2_HW_TIMESTAMP_LEN;
|
||||
|
||||
/* Use max receive length supported by hardware for loopback devices */
|
||||
if (is_otx2_lbkvf(pfvf->pdev))
|
||||
|
|
|
|||
|
|
@ -228,6 +228,7 @@ struct otx2_hw {
|
|||
u16 txschq_list[NIX_TXSCH_LVL_CNT][MAX_TXSCHQ_PER_FUNC];
|
||||
u16 matchall_ipolicer;
|
||||
u32 dwrr_mtu;
|
||||
u32 max_mtu;
|
||||
u8 smq_link_type;
|
||||
|
||||
/* HW settings, coalescing etc */
|
||||
|
|
|
|||
|
|
@ -3101,6 +3101,7 @@ static int otx2_probe(struct pci_dev *pdev, const struct pci_device_id *id)
|
|||
|
||||
netdev->min_mtu = OTX2_MIN_MTU;
|
||||
netdev->max_mtu = otx2_get_max_mtu(pf);
|
||||
hw->max_mtu = netdev->max_mtu;
|
||||
|
||||
/* reset CGX/RPM MAC stats */
|
||||
otx2_reset_mac_stats(pf);
|
||||
|
|
|
|||
|
|
@ -671,6 +671,7 @@ static int otx2vf_probe(struct pci_dev *pdev, const struct pci_device_id *id)
|
|||
|
||||
netdev->min_mtu = OTX2_MIN_MTU;
|
||||
netdev->max_mtu = otx2_get_max_mtu(vf);
|
||||
hw->max_mtu = netdev->max_mtu;
|
||||
|
||||
/* To distinguish, for LBK VFs set netdev name explicitly */
|
||||
if (is_otx2_lbkvf(vf->pdev)) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user