lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
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