[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20191105233724.GD799546@t480s.localdomain>
Date: Tue, 5 Nov 2019 23:37:24 -0500
From: Vivien Didelot <vivien.didelot@...il.com>
To: Andrew Lunn <andrew@...n.ch>
Cc: David Miller <davem@...emloft.net>,
netdev <netdev@...r.kernel.org>,
Florian Fainelli <f.fainelli@...il.com>, jiri@...lanox.com,
Andrew Lunn <andrew@...n.ch>
Subject: Re: [PATCH net-next 3/5] net: dsa: mv88e6xxx: global2: Expose ATU
stats register
Hi Andrew,
On Tue, 5 Nov 2019 23:32:41 -0500, Vivien Didelot <vivien.didelot@...il.com> wrote:
> > +int mv88e6xxx_g2_atu_stats_get(struct mv88e6xxx_chip *chip)
> > +{
> > + int err;
> > + u16 val;
> > +
> > + err = mv88e6xxx_g2_read(chip, MV88E6XXX_G2_ATU_STATS, &val);
> > + if (err)
> > + return err;
> > +
> > + return val & MV88E6XXX_G2_ATU_STATS_MASK;
> > +}
>
> I would use the logic commonly used in the mv88e6xxx driver for
> functions that may fail, returning only an error code and taking a
> pointer to the correct type as argument, so that we do as usual:
>
> err = mv88e6xxx_g2_atu_stats_get(chip, &val);
> if (err)
> return err;
>
> > +
> > /* Offset 0x0F: Priority Override Table */
> >
> > static int mv88e6xxx_g2_pot_write(struct mv88e6xxx_chip *chip, int pointer,
> > diff --git a/drivers/net/dsa/mv88e6xxx/global2.h b/drivers/net/dsa/mv88e6xxx/global2.h
> > index 42da4bca73e8..a308ca7a7da6 100644
> > --- a/drivers/net/dsa/mv88e6xxx/global2.h
> > +++ b/drivers/net/dsa/mv88e6xxx/global2.h
> > @@ -113,7 +113,16 @@
> > #define MV88E6XXX_G2_SWITCH_MAC_DATA_MASK 0x00ff
> >
> > /* Offset 0x0E: ATU Stats Register */
> > -#define MV88E6XXX_G2_ATU_STATS 0x0e
> > +#define MV88E6XXX_G2_ATU_STATS 0x0e
> > +#define MV88E6XXX_G2_ATU_STATS_BIN_0 (0x0 << 14)
> > +#define MV88E6XXX_G2_ATU_STATS_BIN_1 (0x1 << 14)
> > +#define MV88E6XXX_G2_ATU_STATS_BIN_2 (0x2 << 14)
> > +#define MV88E6XXX_G2_ATU_STATS_BIN_3 (0x3 << 14)
> > +#define MV88E6XXX_G2_ATU_STATS_MODE_ALL (0x0 << 12)
> > +#define MV88E6XXX_G2_ATU_STATS_MODE_ALL_DYNAMIC (0x1 << 12)
> > +#define MV88E6XXX_G2_ATU_STATS_MODE_FID_ALL (0x2 << 12)
> > +#define MV88E6XXX_G2_ATU_STATS_MODE_FID_ALL_DYNAMIC (0x3 << 12)
> > +#define MV88E6XXX_G2_ATU_STATS_MASK 0x0fff
>
> Please use the 0x1234 format for these 16-bit registers.
Oops the series has already been applied. Andrew please consider
these comments for your future series, they always apply...
Thank a lot,
Vivien
Powered by blists - more mailing lists