[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170426160419.GB4489@lunn.ch>
Date: Wed, 26 Apr 2017 18:04:19 +0200
From: Andrew Lunn <andrew@...n.ch>
To: Vivien Didelot <vivien.didelot@...oirfairelinux.com>
Cc: netdev@...r.kernel.org, linux-kernel@...r.kernel.org,
kernel@...oirfairelinux.com,
"David S. Miller" <davem@...emloft.net>,
Florian Fainelli <f.fainelli@...il.com>
Subject: Re: [PATCH net-next 01/18] net: dsa: mv88e6xxx: add max VID to info
On Wed, Apr 26, 2017 at 11:53:19AM -0400, Vivien Didelot wrote:
> Some chips don't have a VLAN Table Unit, most of them do have a 4K
> table, some others as the 88E6390 family has a 13th bit for the VID.
>
> Add a new max_vid member to the info structure, used to check the
> presence of a VTU as well as the value used to iterate from in VTU
> GetNext operations.
>
> This makes the MV88E6XXX_FLAG_VTU obsolete, thus remove it.
>
> Signed-off-by: Vivien Didelot <vivien.didelot@...oirfairelinux.com>
> ---
> drivers/net/dsa/mv88e6xxx/chip.c | 38 ++++++++++++++++++++++++++---------
> drivers/net/dsa/mv88e6xxx/mv88e6xxx.h | 13 ++----------
> 2 files changed, 31 insertions(+), 20 deletions(-)
>
> diff --git a/drivers/net/dsa/mv88e6xxx/chip.c b/drivers/net/dsa/mv88e6xxx/chip.c
> index 44ba8cff5631..e45ddf3e90e8 100644
> --- a/drivers/net/dsa/mv88e6xxx/chip.c
> +++ b/drivers/net/dsa/mv88e6xxx/chip.c
> @@ -1440,7 +1440,7 @@ static int mv88e6xxx_port_vlan_dump(struct dsa_switch *ds, int port,
> u16 pvid;
> int err;
>
> - if (!mv88e6xxx_has(chip, MV88E6XXX_FLAG_VTU))
> + if (!chip->info->max_vid)
> return -EOPNOTSUPP;
>
> mutex_lock(&chip->reg_lock);
> @@ -1478,7 +1478,7 @@ static int mv88e6xxx_port_vlan_dump(struct dsa_switch *ds, int port,
> err = cb(&vlan->obj);
> if (err)
> break;
> - } while (next.vid < GLOBAL_VTU_VID_MASK);
> + } while (next.vid < chip->info->max_vid);
This change in itself is worth it. We should not be using a mask for
this sort of comparison.
Reviewed-by: Andrew Lunn <andrew@...n.ch>
Andrew
Powered by blists - more mailing lists