We need to set the RX tail pointer so that RX engine starts working
again after finishing the Flow Control test.

Signed-off-by: Jose Abreu <[email protected]>

---
Cc: Giuseppe Cavallaro <[email protected]>
Cc: Alexandre Torgue <[email protected]>
Cc: Jose Abreu <[email protected]>
Cc: "David S. Miller" <[email protected]>
Cc: Maxime Coquelin <[email protected]>
Cc: [email protected]
Cc: [email protected]
Cc: [email protected]
---
 drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c 
b/drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c
index dce34c081a1e..2943943bec43 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_selftests.c
@@ -722,8 +722,14 @@ static int stmmac_test_flowctrl(struct stmmac_priv *priv)
 
        for (i = 0; i < rx_cnt; i++) {
                struct stmmac_channel *ch = &priv->channel[i];
+               u32 tail;
 
+               tail = priv->rx_queue[i].dma_rx_phy +
+                       (DMA_RX_SIZE * sizeof(struct dma_desc));
+
+               stmmac_set_rx_tail_ptr(priv, priv->ioaddr, tail, i);
                stmmac_start_rx(priv, priv->ioaddr, i);
+
                local_bh_disable();
                napi_reschedule(&ch->rx_napi);
                local_bh_enable();
-- 
2.7.4

Reply via email to