Re: [PATCH v2 1/2] net: dsa: lantiq: allow to use all GPHYs on xRX300 and xRX330

From: Jakub Kicinski
Date: Mon Dec 07 2020 - 16:44:19 EST


On Sun, 6 Dec 2020 14:27:12 +0100 Aleksander Jan Bajkowski wrote:
> This patch allows to use all PHYs on GRX300 and GRX330. The ARX300 has 3
> and the GRX330 has 4 integrated PHYs connected to different ports compared
> to VRX200.
>
> Port configurations:
>
> xRX200:
> GMAC0: RGMII/MII/REVMII/RMII port
> GMAC1: RGMII/MII/REVMII/RMII port
> GMAC2: GPHY0 (GMII)
> GMAC3: GPHY0 (MII)
> GMAC4: GPHY1 (GMII)
> GMAC5: GPHY1 (MII) or RGMII port
>
> xRX300:
> GMAC0: RGMII port
> GMAC1: GPHY2 (GMII)
> GMAC2: GPHY0 (GMII)
> GMAC3: GPHY0 (MII)
> GMAC4: GPHY1 (GMII)
> GMAC5: GPHY1 (MII) or RGMII port
>
> xRX330:
> GMAC0: RGMII/GMII/RMII port
> GMAC1: GPHY2 (GMII)
> GMAC2: GPHY0 (GMII)
> GMAC3: GPHY0 (MII) or GPHY3 (GMII)
> GMAC4: GPHY1 (GMII)
> GMAC5: GPHY1 (MII) or RGMII/RMII port
>
> Tested on D-Link DWR966 with OpenWRT.
>
> Signed-off-by: Aleksander Jan Bajkowski <olek2@xxxxx>

Please make sure you don't add W=1 C=1 build warnings:

In file included from ../include/linux/kasan-checks.h:5,
from ../include/asm-generic/rwonce.h:26,
from ./arch/x86/include/generated/asm/rwonce.h:1,
from ../include/linux/compiler.h:246,
from ../include/linux/err.h:5,
from ../include/linux/clk.h:12,
from ../drivers/net/dsa/lantiq_gswip.c:28:
drivers/net/dsa/lantiq_gswip.c: In function ‘gswip_xrx300_phylink_validate’:
drivers/net/dsa/lantiq_gswip.c:1496:35: warning: unused variable ‘mask’ [-Wunused-variable]
1496 | __ETHTOOL_DECLARE_LINK_MODE_MASK(mask) = { 0, };
| ^~~~
include/linux/types.h:11:16: note: in definition of macro ‘DECLARE_BITMAP’
11 | unsigned long name[BITS_TO_LONGS(bits)]
| ^~~~
drivers/net/dsa/lantiq_gswip.c:1496:2: note: in expansion of macro ‘__ETHTOOL_DECLARE_LINK_MODE_MASK’
1496 | __ETHTOOL_DECLARE_LINK_MODE_MASK(mask) = { 0, };
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/net/dsa/lantiq_gswip.c: At top level:
drivers/net/dsa/lantiq_gswip.c:2079:9: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
2079 | .ops = &gswip_xrx200_switch_ops,
| ^
drivers/net/dsa/lantiq_gswip.c:2085:9: warning: initialization discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
2085 | .ops = &gswip_xrx300_switch_ops,
| ^
drivers/net/dsa/lantiq_gswip.c:2079:17: warning: incorrect type in initializer (different modifiers)
drivers/net/dsa/lantiq_gswip.c:2079:17: expected struct dsa_switch_ops *ops
drivers/net/dsa/lantiq_gswip.c:2079:17: got struct dsa_switch_ops const *
drivers/net/dsa/lantiq_gswip.c:2085:17: warning: incorrect type in initializer (different modifiers)
drivers/net/dsa/lantiq_gswip.c:2085:17: expected struct dsa_switch_ops *ops
drivers/net/dsa/lantiq_gswip.c:2085:17: got struct dsa_switch_ops const *