Re: [PATCH] net: dsa: mv88e6xxx: fix usable ports on 88e6020

Andrew Lunn
2024-03-27T12:44:56Z

On Tue, Mar 26, 2024 at 01:36:54PM +0100, Matthias Schiffer wrote:
> From: Michael Krummsdorf <michael.krummsdorf@tq-group.com>
>
> The switch has 4 ports with 2 internal PHYs, but ports are numbered up
> to 6, with ports 0, 1, 5 and 6 being usable.
>
> Fixes: 71d94a432a15 ("net: dsa: mv88e6xxx: add support for MV88E6020 switch")
> Signed-off-by: Michael Krummsdorf <michael.krummsdorf@tq-group.com>
> Signed-off-by: Matthias Schiffer <matthias.schiffer@ew.tq-group.com>
> ---
>
> I was unfortunately too busy to notice the issue when the patch this
> Fixes was resubmitted in my name. It would have been better to change
> my From into a Based-on-patch-by or similar when modifying it - and the
> final version obviously wasn't even tested on an 88E6020...
>
> Best regards,
> Matthias
>
>
> drivers/net/dsa/mv88e6xxx/chip.c | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c
> index 9ed1821184ece..c95787cb90867 100644
> --- a/drivers/net/dsa/mv88e6xxx/chip.c
> +++ b/drivers/net/dsa/mv88e6xxx/chip.c
> @@ -5503,8 +5503,12 @@ static const struct mv88e6xxx_info mv88e6xxx_table[] = {
> .family = MV88E6XXX_FAMILY_6250,
> .name = "Marvell 88E6020",
> .num_databases = 64,
> - .num_ports = 4,
> + /* Ports 2-4 are not routed to pins
> + * => usable ports 0, 1, 5, 6
> + */
> + .num_ports = 7,
> .num_internal_phys = 2,
> + .invalid_port_mask = BIT(2) | BIT(3) | BIT(4),

This patch does what the commit message suggests. So

Reviewed-by: Andrew Lunn <andrew@lunn.ch>

It would however be nice to fully understand how it currently works
for the deployed use case, just to ensure we are not missing
something.

Andrew