| 12345678910111213141516171819202122232425262728293031323334353637 | 
							- From: Felix Fietkau <[email protected]>
 
- Date: Thu, 3 Nov 2022 17:46:25 +0100
 
- Subject: [PATCH] net: ethernet: mtk_eth_soc: drop packets to WDMA if the
 
-  ring is full
 
- Improves handling of DMA ring overflow.
 
- Clarify other WDMA drop related comment.
 
- Signed-off-by: Felix Fietkau <[email protected]>
 
- ---
 
- --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 
- +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 
- @@ -3529,9 +3529,12 @@ static int mtk_hw_init(struct mtk_eth *e
 
-  	mtk_w32(eth, 0x21021000, MTK_FE_INT_GRP);
 
-  
 
-  	if (MTK_HAS_CAPS(eth->soc->caps, MTK_NETSYS_V2)) {
 
- -		/* PSE should not drop port8 and port9 packets */
 
- +		/* PSE should not drop port8 and port9 packets from WDMA Tx */
 
-  		mtk_w32(eth, 0x00000300, PSE_DROP_CFG);
 
-  
 
- +		/* PSE should drop packets to port 8/9 on WDMA Rx ring full */
 
- +		mtk_w32(eth, 0x00000300, PSE_PPE0_DROP);
 
- +
 
-  		/* PSE Free Queue Flow Control  */
 
-  		mtk_w32(eth, 0x01fa01f4, PSE_FQFC_CFG2);
 
-  
 
- --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.h
 
- +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.h
 
- @@ -127,6 +127,7 @@
 
-  #define PSE_FQFC_CFG1		0x100
 
-  #define PSE_FQFC_CFG2		0x104
 
-  #define PSE_DROP_CFG		0x108
 
- +#define PSE_PPE0_DROP		0x110
 
-  
 
-  /* PSE Input Queue Reservation Register*/
 
-  #define PSE_IQ_REV(x)		(0x140 + (((x) - 1) << 2))
 
 
  |