[PATCH net-next v3 1/2] net: stmmac: Refactor VLAN implementation
Simon Horman
horms at kernel.org
Fri Apr 11 09:36:02 PDT 2025
On Tue, Apr 08, 2025 at 04:13:53PM +0800, Boon Khai Ng wrote:
> Refactor VLAN implementation by moving common code for DWMAC4 and
> DWXGMAC IPs into a separate VLAN module. VLAN implementation for
> DWMAC4 and DWXGMAC differs only for CSR base address, the descriptor
> for the VLAN ID and VLAN VALID bit field.
>
> Signed-off-by: Boon Khai Ng <boon.khai.ng at altera.com>
> Reviewed-by: Matthew Gerlach <matthew.gerlach at altera.com>
...
> diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac4_core.c b/drivers/net/ethernet/stmicro/stmmac/dwmac4_core.c
...
> @@ -965,45 +807,6 @@ static void dwmac4_set_mac_loopback(void __iomem *ioaddr, bool enable)
> writel(value, ioaddr + GMAC_CONFIG);
> }
>
> -static void dwmac4_update_vlan_hash(struct mac_device_info *hw, u32 hash,
> - u16 perfect_match, bool is_double)
...
> diff --git a/drivers/net/ethernet/stmicro/stmmac/dwxgmac2_core.c b/drivers/net/ethernet/stmicro/stmmac/dwxgmac2_core.c
> index a6d395c6bacd..d9f41c047e5e 100644
> --- a/drivers/net/ethernet/stmicro/stmmac/dwxgmac2_core.c
> +++ b/drivers/net/ethernet/stmicro/stmmac/dwxgmac2_core.c
> @@ -614,76 +614,6 @@ static int dwxgmac2_rss_configure(struct mac_device_info *hw,
> return 0;
> }
>
> -static void dwxgmac2_update_vlan_hash(struct mac_device_info *hw, u32 hash,
> - u16 perfect_match, bool is_double)
...
> diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_vlan.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_vlan.c
...
> +static void vlan_update_hash(struct mac_device_info *hw, u32 hash,
> + __le16 perfect_match, bool is_double)
...
Hi,
The signature of this new function does not appear to match that of the
functions it replaces. And it appears to regress the endian annotation of
perfect_match which was corrected in commit e9dbebae2e3c ("net: stmmac:
Correct byte order of perfect_match")
Flagged by Sparse.
More information about the linux-arm-kernel
mailing list