aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/generic/backport-5.15/775-v6.0-04-net-ethernet-stmicro-stmmac-generate-stmmac-dma-conf.patch
diff options
context:
space:
mode:
authorJohn Audia <therealgraysky@proton.me>2023-02-23 06:16:52 -0500
committerJohn Audia <therealgraysky@proton.me>2023-02-28 04:38:13 -0500
commitde8d5b50e2a300136c6d3c87d68955ce69cdee35 (patch)
treeda1b6842e94519fce36068d3b38f4cb55d1cfa81 /target/linux/generic/backport-5.15/775-v6.0-04-net-ethernet-stmicro-stmmac-generate-stmmac-dma-conf.patch
parentfdd1af9a448c23fa4adb515f09b7d2848003fbf7 (diff)
downloadupstream-de8d5b50e2a300136c6d3c87d68955ce69cdee35.tar.gz
upstream-de8d5b50e2a300136c6d3c87d68955ce69cdee35.tar.bz2
upstream-de8d5b50e2a300136c6d3c87d68955ce69cdee35.zip
kernel: bump 5.15 to 5.15.95
Removed upstreamed: backport-5.15/807-v6.1-0003-nvmem-core-add-error-handling-for-dev_set_name.patch[1] bcm47xx/patches-5.15/070-net-bgmac-fix-BCM5358-support-by-setting-correct-fla.patch[2] Added fix: backport-5.15/883-0001-net-Remove-WARN_ON_ONCE-sk-sk_forward_alloc-from-sk_.patch[3] All other patches automatically rebased. 1. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.95&id=14eea6449473c1f55e196cc104ba16d144465869 2. https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.15.95&id=2603a5ca6223bb3a88814e2728335eec14f715ab 3. https://lore.kernel.org/stable/20230227211548.13923-1-kuniyu@amazon.com Build system: x86_64 Build-tested: bcm2711/RPi4B, filogic/xiaomi_redmi-router-ax6000-ubootmod Run-tested: bcm2711/RPi4B, filogic/xiaomi_redmi-router-ax6000-ubootmod Signed-off-by: John Audia <therealgraysky@proton.me>
Diffstat (limited to 'target/linux/generic/backport-5.15/775-v6.0-04-net-ethernet-stmicro-stmmac-generate-stmmac-dma-conf.patch')
-rw-r--r--target/linux/generic/backport-5.15/775-v6.0-04-net-ethernet-stmicro-stmmac-generate-stmmac-dma-conf.patch114
1 files changed, 57 insertions, 57 deletions
diff --git a/target/linux/generic/backport-5.15/775-v6.0-04-net-ethernet-stmicro-stmmac-generate-stmmac-dma-conf.patch b/target/linux/generic/backport-5.15/775-v6.0-04-net-ethernet-stmicro-stmmac-generate-stmmac-dma-conf.patch
index 3dc5297f65..8ad6f208cb 100644
--- a/target/linux/generic/backport-5.15/775-v6.0-04-net-ethernet-stmicro-stmmac-generate-stmmac-dma-conf.patch
+++ b/target/linux/generic/backport-5.15/775-v6.0-04-net-ethernet-stmicro-stmmac-generate-stmmac-dma-conf.patch
@@ -17,7 +17,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
-@@ -1298,7 +1298,8 @@ static int stmmac_phy_setup(struct stmma
+@@ -1299,7 +1299,8 @@ static int stmmac_phy_setup(struct stmma
return 0;
}
@@ -27,7 +27,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
{
u32 rx_cnt = priv->plat->rx_queues_to_use;
unsigned int desc_size;
-@@ -1307,7 +1308,7 @@ static void stmmac_display_rx_rings(stru
+@@ -1308,7 +1309,7 @@ static void stmmac_display_rx_rings(stru
/* Display RX rings */
for (queue = 0; queue < rx_cnt; queue++) {
@@ -36,7 +36,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
pr_info("\tRX Queue %u rings\n", queue);
-@@ -1320,12 +1321,13 @@ static void stmmac_display_rx_rings(stru
+@@ -1321,12 +1322,13 @@ static void stmmac_display_rx_rings(stru
}
/* Display RX ring */
@@ -52,7 +52,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
{
u32 tx_cnt = priv->plat->tx_queues_to_use;
unsigned int desc_size;
-@@ -1334,7 +1336,7 @@ static void stmmac_display_tx_rings(stru
+@@ -1335,7 +1337,7 @@ static void stmmac_display_tx_rings(stru
/* Display TX rings */
for (queue = 0; queue < tx_cnt; queue++) {
@@ -61,7 +61,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
pr_info("\tTX Queue %d rings\n", queue);
-@@ -1349,18 +1351,19 @@ static void stmmac_display_tx_rings(stru
+@@ -1350,18 +1352,19 @@ static void stmmac_display_tx_rings(stru
desc_size = sizeof(struct dma_desc);
}
@@ -85,7 +85,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
}
static int stmmac_set_bfsize(int mtu, int bufsize)
-@@ -1384,44 +1387,50 @@ static int stmmac_set_bfsize(int mtu, in
+@@ -1385,44 +1388,50 @@ static int stmmac_set_bfsize(int mtu, in
/**
* stmmac_clear_rx_descriptors - clear RX descriptors
* @priv: driver private structure
@@ -147,7 +147,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
struct dma_desc *p;
if (priv->extend_desc)
-@@ -1438,10 +1447,12 @@ static void stmmac_clear_tx_descriptors(
+@@ -1439,10 +1448,12 @@ static void stmmac_clear_tx_descriptors(
/**
* stmmac_clear_descriptors - clear descriptors
* @priv: driver private structure
@@ -161,7 +161,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
{
u32 rx_queue_cnt = priv->plat->rx_queues_to_use;
u32 tx_queue_cnt = priv->plat->tx_queues_to_use;
-@@ -1449,16 +1460,17 @@ static void stmmac_clear_descriptors(str
+@@ -1450,16 +1461,17 @@ static void stmmac_clear_descriptors(str
/* Clear the RX descriptors */
for (queue = 0; queue < rx_queue_cnt; queue++)
@@ -181,7 +181,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
* @p: descriptor pointer
* @i: descriptor index
* @flags: gfp flag
-@@ -1466,10 +1478,12 @@ static void stmmac_clear_descriptors(str
+@@ -1467,10 +1479,12 @@ static void stmmac_clear_descriptors(str
* Description: this function is called to allocate a receive buffer, perform
* the DMA mapping and init the descriptor.
*/
@@ -196,7 +196,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
struct stmmac_rx_buffer *buf = &rx_q->buf_pool[i];
if (!buf->page) {
-@@ -1494,7 +1508,7 @@ static int stmmac_init_rx_buffers(struct
+@@ -1495,7 +1509,7 @@ static int stmmac_init_rx_buffers(struct
buf->addr = page_pool_get_dma_addr(buf->page) + buf->page_offset;
stmmac_set_desc_addr(priv, p, buf->addr);
@@ -205,7 +205,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
stmmac_init_desc3(priv, p);
return 0;
-@@ -1503,12 +1517,13 @@ static int stmmac_init_rx_buffers(struct
+@@ -1504,12 +1518,13 @@ static int stmmac_init_rx_buffers(struct
/**
* stmmac_free_rx_buffer - free RX dma buffers
* @priv: private structure
@@ -222,7 +222,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
struct stmmac_rx_buffer *buf = &rx_q->buf_pool[i];
if (buf->page)
-@@ -1523,12 +1538,15 @@ static void stmmac_free_rx_buffer(struct
+@@ -1524,12 +1539,15 @@ static void stmmac_free_rx_buffer(struct
/**
* stmmac_free_tx_buffer - free RX dma buffers
* @priv: private structure
@@ -240,7 +240,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
if (tx_q->tx_skbuff_dma[i].buf &&
tx_q->tx_skbuff_dma[i].buf_type != STMMAC_TXBUF_T_XDP_TX) {
-@@ -1567,23 +1585,28 @@ static void stmmac_free_tx_buffer(struct
+@@ -1568,23 +1586,28 @@ static void stmmac_free_tx_buffer(struct
/**
* dma_free_rx_skbufs - free RX dma buffers
* @priv: private structure
@@ -276,7 +276,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
struct dma_desc *p;
int ret;
-@@ -1592,7 +1615,7 @@ static int stmmac_alloc_rx_buffers(struc
+@@ -1593,7 +1616,7 @@ static int stmmac_alloc_rx_buffers(struc
else
p = rx_q->dma_rx + i;
@@ -285,7 +285,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
queue);
if (ret)
return ret;
-@@ -1606,14 +1629,17 @@ static int stmmac_alloc_rx_buffers(struc
+@@ -1607,14 +1630,17 @@ static int stmmac_alloc_rx_buffers(struc
/**
* dma_free_rx_xskbufs - free RX dma buffers from XSK pool
* @priv: private structure
@@ -306,7 +306,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
struct stmmac_rx_buffer *buf = &rx_q->buf_pool[i];
if (!buf->xdp)
-@@ -1624,12 +1650,14 @@ static void dma_free_rx_xskbufs(struct s
+@@ -1625,12 +1651,14 @@ static void dma_free_rx_xskbufs(struct s
}
}
@@ -324,7 +324,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
struct stmmac_rx_buffer *buf;
dma_addr_t dma_addr;
struct dma_desc *p;
-@@ -1664,22 +1692,25 @@ static struct xsk_buff_pool *stmmac_get_
+@@ -1665,22 +1693,25 @@ static struct xsk_buff_pool *stmmac_get_
/**
* __init_dma_rx_desc_rings - init the RX descriptor ring (per queue)
* @priv: driver private structure
@@ -353,7 +353,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
xdp_rxq_info_unreg_mem_model(&rx_q->xdp_rxq);
-@@ -1706,9 +1737,9 @@ static int __init_dma_rx_desc_rings(stru
+@@ -1707,9 +1738,9 @@ static int __init_dma_rx_desc_rings(stru
/* RX XDP ZC buffer pool may not be populated, e.g.
* xdpsock TX-only.
*/
@@ -365,7 +365,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
if (ret < 0)
return -ENOMEM;
}
-@@ -1718,17 +1749,19 @@ static int __init_dma_rx_desc_rings(stru
+@@ -1719,17 +1750,19 @@ static int __init_dma_rx_desc_rings(stru
if (priv->extend_desc)
stmmac_mode_init(priv, rx_q->dma_erx,
rx_q->dma_rx_phy,
@@ -388,7 +388,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
{
struct stmmac_priv *priv = netdev_priv(dev);
u32 rx_count = priv->plat->rx_queues_to_use;
-@@ -1740,7 +1773,7 @@ static int init_dma_rx_desc_rings(struct
+@@ -1741,7 +1774,7 @@ static int init_dma_rx_desc_rings(struct
"SKB addresses:\nskb\t\tskb data\tdma data\n");
for (queue = 0; queue < rx_count; queue++) {
@@ -397,7 +397,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
if (ret)
goto err_init_rx_buffers;
}
-@@ -1749,12 +1782,12 @@ static int init_dma_rx_desc_rings(struct
+@@ -1750,12 +1783,12 @@ static int init_dma_rx_desc_rings(struct
err_init_rx_buffers:
while (queue >= 0) {
@@ -413,7 +413,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
rx_q->buf_alloc_num = 0;
rx_q->xsk_pool = NULL;
-@@ -1771,14 +1804,17 @@ err_init_rx_buffers:
+@@ -1772,14 +1805,17 @@ err_init_rx_buffers:
/**
* __init_dma_tx_desc_rings - init the TX descriptor ring (per queue)
* @priv: driver private structure
@@ -434,7 +434,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
int i;
netif_dbg(priv, probe, priv->dev,
-@@ -1790,16 +1826,16 @@ static int __init_dma_tx_desc_rings(stru
+@@ -1791,16 +1827,16 @@ static int __init_dma_tx_desc_rings(stru
if (priv->extend_desc)
stmmac_mode_init(priv, tx_q->dma_etx,
tx_q->dma_tx_phy,
@@ -454,7 +454,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
struct dma_desc *p;
if (priv->extend_desc)
-@@ -1821,7 +1857,8 @@ static int __init_dma_tx_desc_rings(stru
+@@ -1822,7 +1858,8 @@ static int __init_dma_tx_desc_rings(stru
return 0;
}
@@ -464,7 +464,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
{
struct stmmac_priv *priv = netdev_priv(dev);
u32 tx_queue_cnt;
-@@ -1830,7 +1867,7 @@ static int init_dma_tx_desc_rings(struct
+@@ -1831,7 +1868,7 @@ static int init_dma_tx_desc_rings(struct
tx_queue_cnt = priv->plat->tx_queues_to_use;
for (queue = 0; queue < tx_queue_cnt; queue++)
@@ -473,7 +473,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
return 0;
}
-@@ -1838,26 +1875,29 @@ static int init_dma_tx_desc_rings(struct
+@@ -1839,26 +1876,29 @@ static int init_dma_tx_desc_rings(struct
/**
* init_dma_desc_rings - init the RX/TX descriptor rings
* @dev: net device structure
@@ -508,7 +508,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
return ret;
}
-@@ -1865,17 +1905,20 @@ static int init_dma_desc_rings(struct ne
+@@ -1866,17 +1906,20 @@ static int init_dma_desc_rings(struct ne
/**
* dma_free_tx_skbufs - free TX dma buffers
* @priv: private structure
@@ -533,7 +533,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
if (tx_q->xsk_pool && tx_q->xsk_frames_done) {
xsk_tx_completed(tx_q->xsk_pool, tx_q->xsk_frames_done);
-@@ -1894,34 +1937,37 @@ static void stmmac_free_tx_skbufs(struct
+@@ -1895,34 +1938,37 @@ static void stmmac_free_tx_skbufs(struct
u32 queue;
for (queue = 0; queue < tx_queue_cnt; queue++)
@@ -578,7 +578,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
sizeof(struct dma_extended_desc),
rx_q->dma_erx, rx_q->dma_rx_phy);
-@@ -1933,29 +1979,33 @@ static void __free_dma_rx_desc_resources
+@@ -1934,29 +1980,33 @@ static void __free_dma_rx_desc_resources
page_pool_destroy(rx_q->page_pool);
}
@@ -617,7 +617,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
if (priv->extend_desc) {
size = sizeof(struct dma_extended_desc);
-@@ -1968,7 +2018,7 @@ static void __free_dma_tx_desc_resources
+@@ -1969,7 +2019,7 @@ static void __free_dma_tx_desc_resources
addr = tx_q->dma_tx;
}
@@ -626,7 +626,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
dma_free_coherent(priv->device, size, addr, tx_q->dma_tx_phy);
-@@ -1976,28 +2026,32 @@ static void __free_dma_tx_desc_resources
+@@ -1977,28 +2027,32 @@ static void __free_dma_tx_desc_resources
kfree(tx_q->tx_skbuff);
}
@@ -663,7 +663,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
struct stmmac_channel *ch = &priv->channel[queue];
bool xdp_prog = stmmac_xdp_is_enabled(priv);
struct page_pool_params pp_params = { 0 };
-@@ -2009,8 +2063,8 @@ static int __alloc_dma_rx_desc_resources
+@@ -2010,8 +2064,8 @@ static int __alloc_dma_rx_desc_resources
rx_q->priv_data = priv;
pp_params.flags = PP_FLAG_DMA_MAP | PP_FLAG_DMA_SYNC_DEV;
@@ -674,7 +674,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
pp_params.order = ilog2(num_pages);
pp_params.nid = dev_to_node(priv->device);
pp_params.dev = priv->device;
-@@ -2025,7 +2079,7 @@ static int __alloc_dma_rx_desc_resources
+@@ -2026,7 +2080,7 @@ static int __alloc_dma_rx_desc_resources
return ret;
}
@@ -683,7 +683,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
sizeof(*rx_q->buf_pool),
GFP_KERNEL);
if (!rx_q->buf_pool)
-@@ -2033,7 +2087,7 @@ static int __alloc_dma_rx_desc_resources
+@@ -2034,7 +2088,7 @@ static int __alloc_dma_rx_desc_resources
if (priv->extend_desc) {
rx_q->dma_erx = dma_alloc_coherent(priv->device,
@@ -692,7 +692,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
sizeof(struct dma_extended_desc),
&rx_q->dma_rx_phy,
GFP_KERNEL);
-@@ -2042,7 +2096,7 @@ static int __alloc_dma_rx_desc_resources
+@@ -2043,7 +2097,7 @@ static int __alloc_dma_rx_desc_resources
} else {
rx_q->dma_rx = dma_alloc_coherent(priv->device,
@@ -701,7 +701,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
sizeof(struct dma_desc),
&rx_q->dma_rx_phy,
GFP_KERNEL);
-@@ -2067,7 +2121,8 @@ static int __alloc_dma_rx_desc_resources
+@@ -2068,7 +2122,8 @@ static int __alloc_dma_rx_desc_resources
return 0;
}
@@ -711,7 +711,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
{
u32 rx_count = priv->plat->rx_queues_to_use;
u32 queue;
-@@ -2075,7 +2130,7 @@ static int alloc_dma_rx_desc_resources(s
+@@ -2076,7 +2131,7 @@ static int alloc_dma_rx_desc_resources(s
/* RX queues buffers and DMA */
for (queue = 0; queue < rx_count; queue++) {
@@ -720,7 +720,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
if (ret)
goto err_dma;
}
-@@ -2083,7 +2138,7 @@ static int alloc_dma_rx_desc_resources(s
+@@ -2084,7 +2139,7 @@ static int alloc_dma_rx_desc_resources(s
return 0;
err_dma:
@@ -729,7 +729,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
return ret;
}
-@@ -2091,28 +2146,31 @@ err_dma:
+@@ -2092,28 +2147,31 @@ err_dma:
/**
* __alloc_dma_tx_desc_resources - alloc TX resources (per queue).
* @priv: private structure
@@ -765,7 +765,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
sizeof(struct sk_buff *),
GFP_KERNEL);
if (!tx_q->tx_skbuff)
-@@ -2125,7 +2183,7 @@ static int __alloc_dma_tx_desc_resources
+@@ -2126,7 +2184,7 @@ static int __alloc_dma_tx_desc_resources
else
size = sizeof(struct dma_desc);
@@ -774,7 +774,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
addr = dma_alloc_coherent(priv->device, size,
&tx_q->dma_tx_phy, GFP_KERNEL);
-@@ -2142,7 +2200,8 @@ static int __alloc_dma_tx_desc_resources
+@@ -2143,7 +2201,8 @@ static int __alloc_dma_tx_desc_resources
return 0;
}
@@ -784,7 +784,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
{
u32 tx_count = priv->plat->tx_queues_to_use;
u32 queue;
-@@ -2150,7 +2209,7 @@ static int alloc_dma_tx_desc_resources(s
+@@ -2151,7 +2210,7 @@ static int alloc_dma_tx_desc_resources(s
/* TX queues buffers and DMA */
for (queue = 0; queue < tx_count; queue++) {
@@ -793,7 +793,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
if (ret)
goto err_dma;
}
-@@ -2158,27 +2217,29 @@ static int alloc_dma_tx_desc_resources(s
+@@ -2159,27 +2218,29 @@ static int alloc_dma_tx_desc_resources(s
return 0;
err_dma:
@@ -827,7 +827,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
return ret;
}
-@@ -2186,16 +2247,18 @@ static int alloc_dma_desc_resources(stru
+@@ -2187,16 +2248,18 @@ static int alloc_dma_desc_resources(stru
/**
* free_dma_desc_resources - free dma desc resources
* @priv: private structure
@@ -849,7 +849,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
}
/**
-@@ -2684,8 +2747,8 @@ static void stmmac_tx_err(struct stmmac_
+@@ -2685,8 +2748,8 @@ static void stmmac_tx_err(struct stmmac_
netif_tx_stop_queue(netdev_get_tx_queue(priv->dev, chan));
stmmac_stop_tx_dma(priv, chan);
@@ -860,7 +860,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
stmmac_reset_tx_queue(priv, chan);
stmmac_init_tx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
tx_q->dma_tx_phy, chan);
-@@ -3682,19 +3745,93 @@ static int stmmac_request_irq(struct net
+@@ -3683,19 +3746,93 @@ static int stmmac_request_irq(struct net
}
/**
@@ -957,7 +957,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
u32 chan;
int ret;
-@@ -3721,45 +3858,10 @@ static int stmmac_open(struct net_device
+@@ -3722,45 +3859,10 @@ static int stmmac_open(struct net_device
memset(&priv->xstats, 0, sizeof(struct stmmac_extra_stats));
priv->xstats.threshold = tc;
@@ -1005,7 +1005,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
if (priv->plat->serdes_powerup) {
ret = priv->plat->serdes_powerup(dev, priv->plat->bsp_priv);
-@@ -3802,14 +3904,28 @@ irq_error:
+@@ -3803,14 +3905,28 @@ irq_error:
stmmac_hw_teardown(dev);
init_error:
@@ -1036,7 +1036,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
static void stmmac_fpe_stop_wq(struct stmmac_priv *priv)
{
set_bit(__FPE_REMOVING, &priv->fpe_task_state);
-@@ -3856,7 +3972,7 @@ static int stmmac_release(struct net_dev
+@@ -3857,7 +3973,7 @@ static int stmmac_release(struct net_dev
stmmac_stop_all_dma(priv);
/* Release and free the Rx/Tx resources */
@@ -1045,7 +1045,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
/* Disable the MAC Rx/Tx */
stmmac_mac_set(priv, priv->ioaddr, false);
-@@ -6395,7 +6511,7 @@ void stmmac_disable_rx_queue(struct stmm
+@@ -6396,7 +6512,7 @@ void stmmac_disable_rx_queue(struct stmm
spin_unlock_irqrestore(&ch->lock, flags);
stmmac_stop_rx_dma(priv, queue);
@@ -1054,7 +1054,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
}
void stmmac_enable_rx_queue(struct stmmac_priv *priv, u32 queue)
-@@ -6406,21 +6522,21 @@ void stmmac_enable_rx_queue(struct stmma
+@@ -6407,21 +6523,21 @@ void stmmac_enable_rx_queue(struct stmma
u32 buf_size;
int ret;
@@ -1080,7 +1080,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
stmmac_init_rx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
rx_q->dma_rx_phy, rx_q->queue_index);
-@@ -6458,7 +6574,7 @@ void stmmac_disable_tx_queue(struct stmm
+@@ -6459,7 +6575,7 @@ void stmmac_disable_tx_queue(struct stmm
spin_unlock_irqrestore(&ch->lock, flags);
stmmac_stop_tx_dma(priv, queue);
@@ -1089,7 +1089,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
}
void stmmac_enable_tx_queue(struct stmmac_priv *priv, u32 queue)
-@@ -6468,21 +6584,21 @@ void stmmac_enable_tx_queue(struct stmma
+@@ -6469,21 +6585,21 @@ void stmmac_enable_tx_queue(struct stmma
unsigned long flags;
int ret;
@@ -1115,7 +1115,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
stmmac_init_tx_chan(priv, priv->ioaddr, priv->plat->dma_cfg,
tx_q->dma_tx_phy, tx_q->queue_index);
-@@ -6522,7 +6638,7 @@ void stmmac_xdp_release(struct net_devic
+@@ -6523,7 +6639,7 @@ void stmmac_xdp_release(struct net_devic
stmmac_stop_all_dma(priv);
/* Release and free the Rx/Tx resources */
@@ -1124,7 +1124,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
/* Disable the MAC Rx/Tx */
stmmac_mac_set(priv, priv->ioaddr, false);
-@@ -6547,14 +6663,14 @@ int stmmac_xdp_open(struct net_device *d
+@@ -6548,14 +6664,14 @@ int stmmac_xdp_open(struct net_device *d
u32 chan;
int ret;
@@ -1141,7 +1141,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
if (ret < 0) {
netdev_err(dev, "%s: DMA descriptors initialization failed\n",
__func__);
-@@ -6636,7 +6752,7 @@ irq_error:
+@@ -6637,7 +6753,7 @@ irq_error:
stmmac_hw_teardown(dev);
init_error:
@@ -1150,7 +1150,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
dma_desc_error:
return ret;
}
-@@ -7497,7 +7613,7 @@ int stmmac_resume(struct device *dev)
+@@ -7498,7 +7614,7 @@ int stmmac_resume(struct device *dev)
stmmac_reset_queues_param(priv);
stmmac_free_tx_skbufs(priv);