> > Signed-off-by: Stefan Chulski <stef...@marvell.com>
> > ---
> >  drivers/net/ethernet/marvell/mvpp2/mvpp2.h      | 24 ++++++++++++------
> --
> >  drivers/net/ethernet/marvell/mvpp2/mvpp2_main.c | 17 +++++++++-----
> >  2 files changed, 25 insertions(+), 16 deletions(-)
> >
> > diff --git a/drivers/net/ethernet/marvell/mvpp2/mvpp2.h
> > b/drivers/net/ethernet/marvell/mvpp2/mvpp2.h
> > index aec9179..89b3ede 100644
> > --- a/drivers/net/ethernet/marvell/mvpp2/mvpp2.h
> > +++ b/drivers/net/ethernet/marvell/mvpp2/mvpp2.h
> > @@ -60,6 +60,9 @@
> >  /* Top Registers */
> >  #define MVPP2_MH_REG(port)                 (0x5040 + 4 * (port))
> >  #define MVPP2_DSA_EXTENDED                 BIT(5)
> > +#define MVPP2_VER_ID_REG                   0x50b0
> > +#define MVPP2_VER_PP22                             0x10
> > +#define MVPP2_VER_PP23                             0x11
> 
> Looking at the Armada 8040 docs, it seems this register exists on
> PPv2.1 as well, and holds the value zero there.
> 
> I wonder whether we should instead read it's value directly into hw_version,
> and test against these values, rather than inventing our own verison enum.
> 
> I've also been wondering whether your != MVPP21 comparisons should
> instead be >= MVPP22.
> 
> Any thoughts?

We cannot access PPv2 register space before enabling clocks(done in 
mvpp2_probe) , PP21 and PP22/23 have different sets of clocks.
So diff between PP21 and PP22/23 should be stored in device tree(in 
of_device_id), with MVPP22 and MVPP21 stored as .data
Maybe we can do it differently, but I prefer to make this change not in the 
Flow Control patch series.
I'm OK with both >= MVPP22 and != MVPP21 options.

Regards,
Stefan.

Reply via email to