kernel: bump 5.15 to 5.15.49
[openwrt/staging/jow.git] / target / linux / generic / backport-5.15 / 702-v5.19-21-net-ethernet-mtk_eth_soc-rely-on-txd_size-in-mtk_des.patch
index 70362a0412a9333b5dbea016dfaae8a82410e97e..1d23a178b4be0ab4b074e848944cbec7f116b1c9 100644 (file)
@@ -12,7 +12,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
 
 --- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
 +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
-@@ -879,10 +879,11 @@ static inline void *mtk_qdma_phys_to_vir
+@@ -890,10 +890,11 @@ static inline void *mtk_qdma_phys_to_vir
        return ret + (desc - ring->phys);
  }
  
@@ -27,7 +27,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
  
        return &ring->buf[idx];
  }
-@@ -1004,6 +1005,7 @@ static int mtk_tx_map(struct sk_buff *sk
+@@ -1015,6 +1016,7 @@ static int mtk_tx_map(struct sk_buff *sk
        };
        struct mtk_mac *mac = netdev_priv(dev);
        struct mtk_eth *eth = mac->hw;
@@ -35,7 +35,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        struct mtk_tx_dma *itxd, *txd;
        struct mtk_tx_dma *itxd_pdma, *txd_pdma;
        struct mtk_tx_buf *itx_buf, *tx_buf;
-@@ -1015,7 +1017,7 @@ static int mtk_tx_map(struct sk_buff *sk
+@@ -1026,7 +1028,7 @@ static int mtk_tx_map(struct sk_buff *sk
        if (itxd == ring->last_free)
                return -ENOMEM;
  
@@ -44,7 +44,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
        memset(itx_buf, 0, sizeof(*itx_buf));
  
        txd_info.addr = dma_map_single(eth->dma_dev, skb->data, txd_info.size,
-@@ -1043,7 +1045,7 @@ static int mtk_tx_map(struct sk_buff *sk
+@@ -1054,7 +1056,7 @@ static int mtk_tx_map(struct sk_buff *sk
                while (frag_size) {
                        bool new_desc = true;
  
@@ -53,7 +53,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                            (i & 0x1)) {
                                txd = mtk_qdma_phys_to_virt(ring, txd->txd2);
                                txd_pdma = qdma_to_pdma(ring, txd);
-@@ -1067,7 +1069,8 @@ static int mtk_tx_map(struct sk_buff *sk
+@@ -1078,7 +1080,8 @@ static int mtk_tx_map(struct sk_buff *sk
  
                        mtk_tx_set_dma_desc(dev, txd, &txd_info);
  
@@ -63,7 +63,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                        if (new_desc)
                                memset(tx_buf, 0, sizeof(*tx_buf));
                        tx_buf->skb = (struct sk_buff *)MTK_DMA_DUMMY_DESC;
-@@ -1086,7 +1089,7 @@ static int mtk_tx_map(struct sk_buff *sk
+@@ -1097,7 +1100,7 @@ static int mtk_tx_map(struct sk_buff *sk
        /* store skb to cleanup */
        itx_buf->skb = skb;
  
@@ -72,7 +72,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                if (k & 0x1)
                        txd_pdma->txd2 |= TX_DMA_LS0;
                else
-@@ -1104,7 +1107,7 @@ static int mtk_tx_map(struct sk_buff *sk
+@@ -1115,7 +1118,7 @@ static int mtk_tx_map(struct sk_buff *sk
         */
        wmb();
  
@@ -81,7 +81,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                if (netif_xmit_stopped(netdev_get_tx_queue(dev, 0)) ||
                    !netdev_xmit_more())
                        mtk_w32(eth, txd->txd2, MTK_QTX_CTX_PTR);
-@@ -1118,13 +1121,13 @@ static int mtk_tx_map(struct sk_buff *sk
+@@ -1129,13 +1132,13 @@ static int mtk_tx_map(struct sk_buff *sk
  
  err_dma:
        do {
@@ -97,7 +97,7 @@ Signed-off-by: David S. Miller <davem@davemloft.net>
                        itxd_pdma->txd2 = TX_DMA_DESP2_DEF;
  
                itxd = mtk_qdma_phys_to_virt(ring, itxd->txd2);
-@@ -1435,7 +1438,8 @@ static int mtk_poll_tx_qdma(struct mtk_e
+@@ -1449,7 +1452,8 @@ static int mtk_poll_tx_qdma(struct mtk_e
                if ((desc->txd3 & TX_DMA_OWNER_CPU) == 0)
                        break;