lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <ZNELXd4I8r+YlWXP@vergenet.net> Date: Mon, 7 Aug 2023 17:18:53 +0200 From: Simon Horman <horms@...nel.org> To: Furong Xu <0x1207@...il.com> Cc: "David S. Miller" <davem@...emloft.net>, Alexandre Torgue <alexandre.torgue@...s.st.com>, Jose Abreu <joabreu@...opsys.com>, Eric Dumazet <edumazet@...gle.com>, Jakub Kicinski <kuba@...nel.org>, Paolo Abeni <pabeni@...hat.com>, Maxime Coquelin <mcoquelin.stm32@...il.com>, Joao Pinto <jpinto@...opsys.com>, netdev@...r.kernel.org, linux-stm32@...md-mailman.stormreply.com, linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org, xfr@...look.com, rock.xu@....com Subject: Re: [PATCH] net: stmmac: xgmac: RX queue routing configuration On Mon, Aug 07, 2023 at 02:56:09PM +0800, Furong Xu wrote: > Commit abe80fdc6ee6 ("net: stmmac: RX queue routing configuration") > introduced RX queue routing to DWMAC4 core. > This patch extend the support to XGMAC2 core. > > Signed-off-by: Furong Xu <0x1207@...il.com> Hi Furong Xu, as this is a feature for a Networking it (probably) should be targeted at net-next - as opposed to net, which is for bug fixes. The target tree should be included in the subject. Subject: [PATCH net-next] ... ... > diff --git a/drivers/net/ethernet/stmicro/stmmac/dwxgmac2_core.c b/drivers/net/ethernet/stmicro/stmmac/dwxgmac2_core.c > index a0c2ef8bb0ac..24918d95f612 100644 > --- a/drivers/net/ethernet/stmicro/stmmac/dwxgmac2_core.c > +++ b/drivers/net/ethernet/stmicro/stmmac/dwxgmac2_core.c > @@ -127,6 +127,39 @@ static void dwxgmac2_tx_queue_prio(struct mac_device_info *hw, u32 prio, > writel(value, ioaddr + reg); > } > > +static void dwxgmac2_rx_queue_routing(struct mac_device_info *hw, > + u8 packet, u32 queue) > +{ > + void __iomem *ioaddr = hw->pcsr; > + u32 value; > + > + static const struct stmmac_rx_routing dwxgmac2_route_possibilities[] = { > + { XGMAC_AVCPQ, XGMAC_AVCPQ_SHIFT }, > + { XGMAC_PTPQ, XGMAC_PTPQ_SHIFT }, > + { XGMAC_DCBCPQ, XGMAC_DCBCPQ_SHIFT }, > + { XGMAC_UPQ, XGMAC_UPQ_SHIFT }, > + { XGMAC_MCBCQ, XGMAC_MCBCQ_SHIFT }, > + }; > + > + value = readl(ioaddr + XGMAC_RXQ_CTRL1); > + > + /* routing configuration */ > + value &= ~dwxgmac2_route_possibilities[packet - 1].reg_mask; > + value |= (queue << dwxgmac2_route_possibilities[packet-1].reg_shift) & > + dwxgmac2_route_possibilities[packet - 1].reg_mask; > + > + /* some packets require extra ops */ > + if (packet == PACKET_AVCPQ) { > + value &= ~XGMAC_TACPQE; > + value |= 0x1 << XGMAC_TACPQE_SHIFT; FIELD_PREP seems appropriate here. > + } else if (packet == PACKET_MCBCQ) { > + value &= ~XGMAC_MCBCQEN; > + value |= 0x1 << XGMAC_MCBCQEN_SHIFT; And here. > + } > + > + writel(value, ioaddr + XGMAC_RXQ_CTRL1); > +} > + > static void dwxgmac2_prog_mtl_rx_algorithms(struct mac_device_info *hw, > u32 rx_alg) > { ...
Powered by blists - more mailing lists