c8681aace5b556fab2fdc8b16f895b91ecfb3d21
[openwrt/staging/thess.git] /
1 From 5f795590380476f1c9b7ed0ac945c9b0269dc23a Mon Sep 17 00:00:00 2001
2 From: Lorenzo Bianconi <lorenzo@kernel.org>
3 Date: Fri, 3 Jan 2025 13:17:02 +0100
4 Subject: [PATCH 1/4] net: airoha: Enable Tx drop capability for each Tx DMA
5 ring
6
7 This is a preliminary patch in order to enable hw Qdisc offloading.
8
9 Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
10 Signed-off-by: Paolo Abeni <pabeni@redhat.com>
11 ---
12 drivers/net/ethernet/mediatek/airoha_eth.c | 4 ++++
13 1 file changed, 4 insertions(+)
14
15 --- a/drivers/net/ethernet/mediatek/airoha_eth.c
16 +++ b/drivers/net/ethernet/mediatek/airoha_eth.c
17 @@ -1790,6 +1790,10 @@ static int airoha_qdma_init_tx_queue(str
18 WRITE_ONCE(q->desc[i].ctrl, cpu_to_le32(val));
19 }
20
21 + /* xmit ring drop default setting */
22 + airoha_qdma_set(qdma, REG_TX_RING_BLOCKING(qid),
23 + TX_RING_IRQ_BLOCKING_TX_DROP_EN_MASK);
24 +
25 airoha_qdma_wr(qdma, REG_TX_RING_BASE(qid), dma_addr);
26 airoha_qdma_rmw(qdma, REG_TX_CPU_IDX(qid), TX_RING_CPU_IDX_MASK,
27 FIELD_PREP(TX_RING_CPU_IDX_MASK, q->head));