* [PATCH net-next 0/3] net: stmmac: fpe: pmac and fprq fixes
@ 2026-07-29 1:52 muhammad.nazim.amirul.nazle.asmade
2026-07-29 1:52 ` [PATCH net-next 1/3] net: stmmac: fpe: Enforce pmac_enabled in set_mm and keep it on at init muhammad.nazim.amirul.nazle.asmade
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: muhammad.nazim.amirul.nazle.asmade @ 2026-07-29 1:52 UTC (permalink / raw)
To: maxime.chevallier, andrew+netdev, davem, edumazet, kuba, pabeni,
mcoquelin.stm32, alexandre.torgue
Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel
From: Nazim Amirul <muhammad.nazim.amirul.nazle.asmade@altera.com>
Three fixes for the stmmac FPE implementation:
- Keep pmac_enabled true in DWMAC since the preemptive MAC is always
on, enforce this in set_mm(), and guard set_mm() with fpesel check
- Fix missing return in stmmac_fpe_init() when FPE is unsupported
- Move fprq configuration to stmmac_fpe_configure_pmac() where it
belongs, using u32_replace_bits() to simplify the update
Nazim Amirul (3):
net: stmmac: fpe: Enforce pmac_enabled in set_mm and keep it on at
init
net: stmmac: fpe: Add missing return in stmmac_fpe_init()
net: stmmac: fpe: Move fprq configuration to
stmmac_fpe_configure_pmac()
.../ethernet/stmicro/stmmac/stmmac_ethtool.c | 7 +++++
.../net/ethernet/stmicro/stmmac/stmmac_fpe.c | 30 ++++++++++++-------
2 files changed, 26 insertions(+), 11 deletions(-)
--
2.43.7
^ permalink raw reply [flat|nested] 7+ messages in thread* [PATCH net-next 1/3] net: stmmac: fpe: Enforce pmac_enabled in set_mm and keep it on at init 2026-07-29 1:52 [PATCH net-next 0/3] net: stmmac: fpe: pmac and fprq fixes muhammad.nazim.amirul.nazle.asmade @ 2026-07-29 1:52 ` muhammad.nazim.amirul.nazle.asmade 2026-07-29 6:26 ` Maxime Chevallier 2026-07-29 1:52 ` [PATCH net-next 2/3] net: stmmac: fpe: Add missing return in stmmac_fpe_init() muhammad.nazim.amirul.nazle.asmade 2026-07-29 1:52 ` [PATCH net-next 3/3] net: stmmac: fpe: Move fprq configuration to stmmac_fpe_configure_pmac() muhammad.nazim.amirul.nazle.asmade 2 siblings, 1 reply; 7+ messages in thread From: muhammad.nazim.amirul.nazle.asmade @ 2026-07-29 1:52 UTC (permalink / raw) To: maxime.chevallier, andrew+netdev, davem, edumazet, kuba, pabeni, mcoquelin.stm32, alexandre.torgue Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel From: Nazim Amirul <muhammad.nazim.amirul.nazle.asmade@altera.com> The preemptive MAC in DWMAC is always enabled, meaning DWMAC is always ready to receive preemptive mPackets. Initialize pmac_enabled to true at init time and reject attempts to disable it via ethtool set_mm. Also add a missing fpesel capability check in stmmac_set_mm() to return -EOPNOTSUPP early on hardware without FPE support. Signed-off-by: Rohan G Thomas <rohan.g.thomas@altera.com> Signed-off-by: Nazim Amirul <muhammad.nazim.amirul.nazle.asmade@altera.com> --- drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c | 7 +++++++ drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c | 5 +++++ 2 files changed, 12 insertions(+) diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c index 92585d27ab88..8ebdd249e5c8 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c @@ -1064,6 +1064,13 @@ static int stmmac_set_mm(struct net_device *ndev, struct ethtool_mm_cfg *cfg, if (err) return err; + if (!priv->dma_cap.fpesel) + return -EOPNOTSUPP; + + /* DWMAC always have preemptible MAC enabled */ + if (!cfg->pmac_enabled) + return -EINVAL; + stmmac_fpe_set_add_frag_size(priv, frag_size); ethtool_mmsv_set_mm(&priv->fpe_cfg.mmsv, cfg); diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c index c54c70224351..2f880c5e35b0 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c @@ -176,6 +176,11 @@ void stmmac_fpe_init(struct stmmac_priv *priv) if ((!priv->fpe_cfg.reg || !priv->hw->mac->fpe_map_preemption_class) && priv->dma_cap.fpesel) dev_info(priv->device, "FPE is not supported by driver.\n"); + + /* The preemptive MAC in DWMAC is always enabled, so initialize + * pmac_enabled to true to reflect the hardware state. + */ + priv->fpe_cfg.mmsv.pmac_enabled = true; } int stmmac_fpe_get_add_frag_size(struct stmmac_priv *priv) -- 2.43.7 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH net-next 1/3] net: stmmac: fpe: Enforce pmac_enabled in set_mm and keep it on at init 2026-07-29 1:52 ` [PATCH net-next 1/3] net: stmmac: fpe: Enforce pmac_enabled in set_mm and keep it on at init muhammad.nazim.amirul.nazle.asmade @ 2026-07-29 6:26 ` Maxime Chevallier 0 siblings, 0 replies; 7+ messages in thread From: Maxime Chevallier @ 2026-07-29 6:26 UTC (permalink / raw) To: muhammad.nazim.amirul.nazle.asmade, andrew+netdev, davem, edumazet, kuba, pabeni, mcoquelin.stm32, alexandre.torgue Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel Hi, On 7/29/26 03:52, muhammad.nazim.amirul.nazle.asmade@altera.com wrote: > From: Nazim Amirul <muhammad.nazim.amirul.nazle.asmade@altera.com> > > The preemptive MAC in DWMAC is always enabled, meaning DWMAC is always > ready to receive preemptive mPackets. Initialize pmac_enabled to true > at init time and reject attempts to disable it via ethtool set_mm. > > Also add a missing fpesel capability check in stmmac_set_mm() to return > -EOPNOTSUPP early on hardware without FPE support. > > Signed-off-by: Rohan G Thomas <rohan.g.thomas@altera.com> > Signed-off-by: Nazim Amirul <muhammad.nazim.amirul.nazle.asmade@altera.com> Reviewed-by: Maxime Chevallier <maxime.chevallier@bootlin.com> Maxime > --- > drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c | 7 +++++++ > drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c | 5 +++++ > 2 files changed, 12 insertions(+) > > diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c > index 92585d27ab88..8ebdd249e5c8 100644 > --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c > +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_ethtool.c > @@ -1064,6 +1064,13 @@ static int stmmac_set_mm(struct net_device *ndev, struct ethtool_mm_cfg *cfg, > if (err) > return err; > > + if (!priv->dma_cap.fpesel) > + return -EOPNOTSUPP; > + > + /* DWMAC always have preemptible MAC enabled */ > + if (!cfg->pmac_enabled) > + return -EINVAL; > + > stmmac_fpe_set_add_frag_size(priv, frag_size); > ethtool_mmsv_set_mm(&priv->fpe_cfg.mmsv, cfg); > > diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c > index c54c70224351..2f880c5e35b0 100644 > --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c > +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c > @@ -176,6 +176,11 @@ void stmmac_fpe_init(struct stmmac_priv *priv) > if ((!priv->fpe_cfg.reg || !priv->hw->mac->fpe_map_preemption_class) && > priv->dma_cap.fpesel) > dev_info(priv->device, "FPE is not supported by driver.\n"); > + > + /* The preemptive MAC in DWMAC is always enabled, so initialize > + * pmac_enabled to true to reflect the hardware state. > + */ > + priv->fpe_cfg.mmsv.pmac_enabled = true; > } > > int stmmac_fpe_get_add_frag_size(struct stmmac_priv *priv) ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH net-next 2/3] net: stmmac: fpe: Add missing return in stmmac_fpe_init() 2026-07-29 1:52 [PATCH net-next 0/3] net: stmmac: fpe: pmac and fprq fixes muhammad.nazim.amirul.nazle.asmade 2026-07-29 1:52 ` [PATCH net-next 1/3] net: stmmac: fpe: Enforce pmac_enabled in set_mm and keep it on at init muhammad.nazim.amirul.nazle.asmade @ 2026-07-29 1:52 ` muhammad.nazim.amirul.nazle.asmade 2026-07-29 6:27 ` Maxime Chevallier 2026-07-29 1:52 ` [PATCH net-next 3/3] net: stmmac: fpe: Move fprq configuration to stmmac_fpe_configure_pmac() muhammad.nazim.amirul.nazle.asmade 2 siblings, 1 reply; 7+ messages in thread From: muhammad.nazim.amirul.nazle.asmade @ 2026-07-29 1:52 UTC (permalink / raw) To: maxime.chevallier, andrew+netdev, davem, edumazet, kuba, pabeni, mcoquelin.stm32, alexandre.torgue Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel From: Nazim Amirul <muhammad.nazim.amirul.nazle.asmade@altera.com> When FPE is not supported by the driver, stmmac_fpe_init() prints a warning but falls through into the pmac_enabled initialization, which should only be reached on supported hardware. Add the missing return to prevent this. Signed-off-by: Rohan G Thomas <rohan.g.thomas@altera.com> Signed-off-by: Nazim Amirul <muhammad.nazim.amirul.nazle.asmade@altera.com> --- drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c index 2f880c5e35b0..3436e962a238 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c @@ -174,8 +174,10 @@ void stmmac_fpe_init(struct stmmac_priv *priv) &stmmac_mmsv_ops); if ((!priv->fpe_cfg.reg || !priv->hw->mac->fpe_map_preemption_class) && - priv->dma_cap.fpesel) + priv->dma_cap.fpesel) { dev_info(priv->device, "FPE is not supported by driver.\n"); + return; + } /* The preemptive MAC in DWMAC is always enabled, so initialize * pmac_enabled to true to reflect the hardware state. -- 2.43.7 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH net-next 2/3] net: stmmac: fpe: Add missing return in stmmac_fpe_init() 2026-07-29 1:52 ` [PATCH net-next 2/3] net: stmmac: fpe: Add missing return in stmmac_fpe_init() muhammad.nazim.amirul.nazle.asmade @ 2026-07-29 6:27 ` Maxime Chevallier 0 siblings, 0 replies; 7+ messages in thread From: Maxime Chevallier @ 2026-07-29 6:27 UTC (permalink / raw) To: muhammad.nazim.amirul.nazle.asmade, andrew+netdev, davem, edumazet, kuba, pabeni, mcoquelin.stm32, alexandre.torgue Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel Hi, On 7/29/26 03:52, muhammad.nazim.amirul.nazle.asmade@altera.com wrote: > From: Nazim Amirul <muhammad.nazim.amirul.nazle.asmade@altera.com> > > When FPE is not supported by the driver, stmmac_fpe_init() prints a > warning but falls through into the pmac_enabled initialization, which > should only be reached on supported hardware. Add the missing return > to prevent this. > > Signed-off-by: Rohan G Thomas <rohan.g.thomas@altera.com> > Signed-off-by: Nazim Amirul <muhammad.nazim.amirul.nazle.asmade@altera.com> Reviewed-by: Maxime Chevallier <maxime.chevallier@bootlin.com> Thanks, Maxime > --- > drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c > index 2f880c5e35b0..3436e962a238 100644 > --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c > +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c > @@ -174,8 +174,10 @@ void stmmac_fpe_init(struct stmmac_priv *priv) > &stmmac_mmsv_ops); > > if ((!priv->fpe_cfg.reg || !priv->hw->mac->fpe_map_preemption_class) && > - priv->dma_cap.fpesel) > + priv->dma_cap.fpesel) { > dev_info(priv->device, "FPE is not supported by driver.\n"); > + return; > + } > > /* The preemptive MAC in DWMAC is always enabled, so initialize > * pmac_enabled to true to reflect the hardware state. ^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH net-next 3/3] net: stmmac: fpe: Move fprq configuration to stmmac_fpe_configure_pmac() 2026-07-29 1:52 [PATCH net-next 0/3] net: stmmac: fpe: pmac and fprq fixes muhammad.nazim.amirul.nazle.asmade 2026-07-29 1:52 ` [PATCH net-next 1/3] net: stmmac: fpe: Enforce pmac_enabled in set_mm and keep it on at init muhammad.nazim.amirul.nazle.asmade 2026-07-29 1:52 ` [PATCH net-next 2/3] net: stmmac: fpe: Add missing return in stmmac_fpe_init() muhammad.nazim.amirul.nazle.asmade @ 2026-07-29 1:52 ` muhammad.nazim.amirul.nazle.asmade 2026-07-29 6:31 ` Maxime Chevallier 2 siblings, 1 reply; 7+ messages in thread From: muhammad.nazim.amirul.nazle.asmade @ 2026-07-29 1:52 UTC (permalink / raw) To: maxime.chevallier, andrew+netdev, davem, edumazet, kuba, pabeni, mcoquelin.stm32, alexandre.torgue Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel From: Nazim Amirul <muhammad.nazim.amirul.nazle.asmade@altera.com> The Frame Preemption Residue Queue (fprq) controls which Rx queue receives residual preemptive mPackets from the pmac. This is a pmac concern, not a TX concern, so move its configuration from stmmac_fpe_configure_tx() to stmmac_fpe_configure_pmac() where it logically belongs. Use u32_replace_bits() instead of the open-coded mask/shift sequence. Signed-off-by: Rohan G Thomas <rohan.g.thomas@altera.com> Signed-off-by: Nazim Amirul <muhammad.nazim.amirul.nazle.asmade@altera.com> --- .../net/ethernet/stmicro/stmmac/stmmac_fpe.c | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c index 3436e962a238..27e500edc8ac 100644 --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c @@ -47,20 +47,13 @@ static void stmmac_fpe_configure_tx(struct ethtool_mmsv *mmsv, bool tx_enable) struct stmmac_fpe_cfg *cfg = container_of(mmsv, struct stmmac_fpe_cfg, mmsv); struct stmmac_priv *priv = container_of(cfg, struct stmmac_priv, fpe_cfg); const struct stmmac_fpe_reg *reg = cfg->reg; - u32 num_rxq = priv->plat->rx_queues_to_use; void __iomem *ioaddr = priv->ioaddr; - u32 value; - if (tx_enable) { + if (tx_enable) cfg->fpe_csr = STMMAC_MAC_FPE_CTRL_STS_EFPE; - value = readl(ioaddr + reg->rxq_ctrl1_reg); - value &= ~reg->fprq_mask; - /* Keep this SHIFT, FIELD_PREP() expects a constant mask :-/ */ - value |= (num_rxq - 1) << __ffs(reg->fprq_mask); - writel(value, ioaddr + reg->rxq_ctrl1_reg); - } else { + else cfg->fpe_csr = 0; - } + writel(cfg->fpe_csr, ioaddr + reg->mac_fpe_reg); } @@ -68,6 +61,7 @@ static void stmmac_fpe_configure_pmac(struct ethtool_mmsv *mmsv, bool pmac_enabl { struct stmmac_fpe_cfg *cfg = container_of(mmsv, struct stmmac_fpe_cfg, mmsv); struct stmmac_priv *priv = container_of(cfg, struct stmmac_priv, fpe_cfg); + u32 num_rxq = priv->plat->rx_queues_to_use; const struct stmmac_fpe_reg *reg = cfg->reg; void __iomem *ioaddr = priv->ioaddr; unsigned long flags; @@ -83,6 +77,12 @@ static void stmmac_fpe_configure_pmac(struct ethtool_mmsv *mmsv, bool pmac_enabl value |= reg->int_en_bit; } + /* Frame Preemption Residue Queue is the Rx Queue to which + * residual preemptive mPackets must be forwarded from the pmac. + */ + writel(u32_replace_bits(readl(ioaddr + reg->rxq_ctrl1_reg), + num_rxq - 1, reg->fprq_mask), + ioaddr + reg->rxq_ctrl1_reg); } else { value &= ~reg->int_en_bit; } -- 2.43.7 ^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH net-next 3/3] net: stmmac: fpe: Move fprq configuration to stmmac_fpe_configure_pmac() 2026-07-29 1:52 ` [PATCH net-next 3/3] net: stmmac: fpe: Move fprq configuration to stmmac_fpe_configure_pmac() muhammad.nazim.amirul.nazle.asmade @ 2026-07-29 6:31 ` Maxime Chevallier 0 siblings, 0 replies; 7+ messages in thread From: Maxime Chevallier @ 2026-07-29 6:31 UTC (permalink / raw) To: muhammad.nazim.amirul.nazle.asmade, andrew+netdev, davem, edumazet, kuba, pabeni, mcoquelin.stm32, alexandre.torgue Cc: netdev, linux-stm32, linux-arm-kernel, linux-kernel Hi, On 7/29/26 03:52, muhammad.nazim.amirul.nazle.asmade@altera.com wrote: > From: Nazim Amirul <muhammad.nazim.amirul.nazle.asmade@altera.com> > > The Frame Preemption Residue Queue (fprq) controls which Rx queue > receives residual preemptive mPackets from the pmac. This is a pmac > concern, not a TX concern, so move its configuration from > stmmac_fpe_configure_tx() to stmmac_fpe_configure_pmac() where it > logically belongs. > > Use u32_replace_bits() instead of the open-coded mask/shift sequence. > > Signed-off-by: Rohan G Thomas <rohan.g.thomas@altera.com> > Signed-off-by: Nazim Amirul <muhammad.nazim.amirul.nazle.asmade@altera.com> > --- > .../net/ethernet/stmicro/stmmac/stmmac_fpe.c | 20 +++++++++---------- > 1 file changed, 10 insertions(+), 10 deletions(-) > > diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c > index 3436e962a238..27e500edc8ac 100644 > --- a/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c > +++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_fpe.c > @@ -47,20 +47,13 @@ static void stmmac_fpe_configure_tx(struct ethtool_mmsv *mmsv, bool tx_enable) > struct stmmac_fpe_cfg *cfg = container_of(mmsv, struct stmmac_fpe_cfg, mmsv); > struct stmmac_priv *priv = container_of(cfg, struct stmmac_priv, fpe_cfg); > const struct stmmac_fpe_reg *reg = cfg->reg; > - u32 num_rxq = priv->plat->rx_queues_to_use; > void __iomem *ioaddr = priv->ioaddr; > - u32 value; > > - if (tx_enable) { > + if (tx_enable) > cfg->fpe_csr = STMMAC_MAC_FPE_CTRL_STS_EFPE; > - value = readl(ioaddr + reg->rxq_ctrl1_reg); > - value &= ~reg->fprq_mask; > - /* Keep this SHIFT, FIELD_PREP() expects a constant mask :-/ */ > - value |= (num_rxq - 1) << __ffs(reg->fprq_mask); > - writel(value, ioaddr + reg->rxq_ctrl1_reg); > - } else { > + else > cfg->fpe_csr = 0; > - } > + > writel(cfg->fpe_csr, ioaddr + reg->mac_fpe_reg); > } > > @@ -68,6 +61,7 @@ static void stmmac_fpe_configure_pmac(struct ethtool_mmsv *mmsv, bool pmac_enabl > { > struct stmmac_fpe_cfg *cfg = container_of(mmsv, struct stmmac_fpe_cfg, mmsv); > struct stmmac_priv *priv = container_of(cfg, struct stmmac_priv, fpe_cfg); > + u32 num_rxq = priv->plat->rx_queues_to_use; > const struct stmmac_fpe_reg *reg = cfg->reg; > void __iomem *ioaddr = priv->ioaddr; > unsigned long flags; > @@ -83,6 +77,12 @@ static void stmmac_fpe_configure_pmac(struct ethtool_mmsv *mmsv, bool pmac_enabl > > value |= reg->int_en_bit; > } > + /* Frame Preemption Residue Queue is the Rx Queue to which > + * residual preemptive mPackets must be forwarded from the pmac. > + */ > + writel(u32_replace_bits(readl(ioaddr + reg->rxq_ctrl1_reg), > + num_rxq - 1, reg->fprq_mask), > + ioaddr + reg->rxq_ctrl1_reg); > } else { > value &= ~reg->int_en_bit; > } Not a bit fan of the writel(u32_replace(readl(...))) but I don't feel strong enough about that to warrant a resend Reviewed-by: Maxime Chevallier <maxime.chevallier@bootlin.com> Maxime ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2026-07-29 6:31 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-07-29 1:52 [PATCH net-next 0/3] net: stmmac: fpe: pmac and fprq fixes muhammad.nazim.amirul.nazle.asmade 2026-07-29 1:52 ` [PATCH net-next 1/3] net: stmmac: fpe: Enforce pmac_enabled in set_mm and keep it on at init muhammad.nazim.amirul.nazle.asmade 2026-07-29 6:26 ` Maxime Chevallier 2026-07-29 1:52 ` [PATCH net-next 2/3] net: stmmac: fpe: Add missing return in stmmac_fpe_init() muhammad.nazim.amirul.nazle.asmade 2026-07-29 6:27 ` Maxime Chevallier 2026-07-29 1:52 ` [PATCH net-next 3/3] net: stmmac: fpe: Move fprq configuration to stmmac_fpe_configure_pmac() muhammad.nazim.amirul.nazle.asmade 2026-07-29 6:31 ` Maxime Chevallier
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox