Skip to content

Commit c8d4ad9

Browse files
WeiFang-NXPPaolo Abeni
authored andcommitted
net: fec: add fec_txq_trigger_xmit() helper
Currently, the workaround for FEC_QUIRK_ERR007885 has three call sites, so add the helper fec_txq_trigger_xmit() to make the code more concise and reusable. Signed-off-by: Wei Fang <wei.fang@nxp.com> Reviewed-by: Frank Li <Frank.Li@nxp.com> Link: https://patch.msgid.link/20260205085742.2685134-2-wei.fang@nxp.com Signed-off-by: Paolo Abeni <pabeni@redhat.com>
1 parent d82cb7b commit c8d4ad9

1 file changed

Lines changed: 14 additions & 18 deletions

File tree

drivers/net/ethernet/freescale/fec_main.c

Lines changed: 14 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -508,6 +508,17 @@ fec_enet_create_page_pool(struct fec_enet_private *fep,
508508
return err;
509509
}
510510

511+
static void fec_txq_trigger_xmit(struct fec_enet_private *fep,
512+
struct fec_enet_priv_tx_q *txq)
513+
{
514+
if (!(fep->quirks & FEC_QUIRK_ERR007885) ||
515+
!readl(txq->bd.reg_desc_active) ||
516+
!readl(txq->bd.reg_desc_active) ||
517+
!readl(txq->bd.reg_desc_active) ||
518+
!readl(txq->bd.reg_desc_active))
519+
writel(0, txq->bd.reg_desc_active);
520+
}
521+
511522
static struct bufdesc *
512523
fec_enet_txq_submit_frag_skb(struct fec_enet_priv_tx_q *txq,
513524
struct sk_buff *skb,
@@ -717,12 +728,7 @@ static int fec_enet_txq_submit_skb(struct fec_enet_priv_tx_q *txq,
717728
txq->bd.cur = bdp;
718729

719730
/* Trigger transmission start */
720-
if (!(fep->quirks & FEC_QUIRK_ERR007885) ||
721-
!readl(txq->bd.reg_desc_active) ||
722-
!readl(txq->bd.reg_desc_active) ||
723-
!readl(txq->bd.reg_desc_active) ||
724-
!readl(txq->bd.reg_desc_active))
725-
writel(0, txq->bd.reg_desc_active);
731+
fec_txq_trigger_xmit(fep, txq);
726732

727733
return 0;
728734
}
@@ -913,12 +919,7 @@ static int fec_enet_txq_submit_tso(struct fec_enet_priv_tx_q *txq,
913919
txq->bd.cur = bdp;
914920

915921
/* Trigger transmission start */
916-
if (!(fep->quirks & FEC_QUIRK_ERR007885) ||
917-
!readl(txq->bd.reg_desc_active) ||
918-
!readl(txq->bd.reg_desc_active) ||
919-
!readl(txq->bd.reg_desc_active) ||
920-
!readl(txq->bd.reg_desc_active))
921-
writel(0, txq->bd.reg_desc_active);
922+
fec_txq_trigger_xmit(fep, txq);
922923

923924
return 0;
924925

@@ -3936,12 +3937,7 @@ static int fec_enet_txq_xmit_frame(struct fec_enet_private *fep,
39363937
txq->bd.cur = bdp;
39373938

39383939
/* Trigger transmission start */
3939-
if (!(fep->quirks & FEC_QUIRK_ERR007885) ||
3940-
!readl(txq->bd.reg_desc_active) ||
3941-
!readl(txq->bd.reg_desc_active) ||
3942-
!readl(txq->bd.reg_desc_active) ||
3943-
!readl(txq->bd.reg_desc_active))
3944-
writel(0, txq->bd.reg_desc_active);
3940+
fec_txq_trigger_xmit(fep, txq);
39453941

39463942
return 0;
39473943
}

0 commit comments

Comments
 (0)