diff options
author | Hariprasad Kelam <hkelam@marvell.com> | 2023-06-30 11:58:45 +0530 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2023-07-02 15:47:19 +0100 |
commit | 2e3e94c2f5dc98a8a0e93850407064bc5389c306 (patch) | |
tree | 9b9007c788b42fe6ae1bfeb52da321845af1665a /drivers/net/ethernet/marvell/octeontx2/af/cgx.h | |
parent | 79ebb53772c95d3a6ae51b3c65f9985fdd430df6 (diff) | |
download | linux-2e3e94c2f5dc98a8a0e93850407064bc5389c306.tar.gz linux-2e3e94c2f5dc98a8a0e93850407064bc5389c306.tar.bz2 linux-2e3e94c2f5dc98a8a0e93850407064bc5389c306.zip |
octeontx2-af: Reset MAC features in FLR
AF driver configures MAC features like internal loopback and PFC upon
receiving the request from PF and its VF netdev. But these
features are not getting reset in FLR. This patch fixes the issue by
resetting the same.
Fixes: 23999b30ae67 ("octeontx2-af: Enable or disable CGX internal loopback")
Fixes: 1121f6b02e7a ("octeontx2-af: Priority flow control configuration support")
Signed-off-by: Hariprasad Kelam <hkelam@marvell.com>
Signed-off-by: Sunil Goutham <sgoutham@marvell.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/marvell/octeontx2/af/cgx.h')
-rw-r--r-- | drivers/net/ethernet/marvell/octeontx2/af/cgx.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/marvell/octeontx2/af/cgx.h b/drivers/net/ethernet/marvell/octeontx2/af/cgx.h index 5a20d93004c7..574114179688 100644 --- a/drivers/net/ethernet/marvell/octeontx2/af/cgx.h +++ b/drivers/net/ethernet/marvell/octeontx2/af/cgx.h @@ -35,6 +35,7 @@ #define CGXX_CMRX_INT_ENA_W1S 0x058 #define CGXX_CMRX_RX_ID_MAP 0x060 #define CGXX_CMRX_RX_STAT0 0x070 +#define CGXX_CMRX_RX_LOGL_XON 0x100 #define CGXX_CMRX_RX_LMACS 0x128 #define CGXX_CMRX_RX_DMAC_CTL0 (0x1F8 + mac_ops->csr_offset) #define CGX_DMAC_CTL0_CAM_ENABLE BIT_ULL(3) @@ -181,4 +182,5 @@ int cgx_lmac_get_pfc_frm_cfg(void *cgxd, int lmac_id, u8 *tx_pause, u8 *rx_pause); int verify_lmac_fc_cfg(void *cgxd, int lmac_id, u8 tx_pause, u8 rx_pause, int pfvf_idx); +int cgx_lmac_reset(void *cgxd, int lmac_id, u8 pf_req_flr); #endif /* CGX_H */ |