[PATCH net-next v4 00/10] net: dsa: mv88e6xxx: support for mv88e6250

From: Rasmus Villemoes
Date: Tue Jun 04 2019 - 03:39:05 EST


This adds support for the mv88e6250 chip. Initially based on the
mv88e6240, this time around, I've been through each ->ops callback and
checked that it makes sense, either replacing with a 6250 specific
variant or dropping it if no equivalent functionality seems to exist
for the 6250. Along the way, I found a few oddities in the existing
code, mostly sent as separate patches/questions.

The one relevant to the 6250 is the ieee_pri_map callback, where the
existing mv88e6085_g1_ieee_pri_map() is actually wrong for many of the
existing users. I've put the mv88e6250_g1_ieee_pri_map() patch first
in case some of the existing chips get switched over to use that and
it is deemed important enough for -stable.

v4:
- fix style issue in 1/10
- add Andrew's reviewed-by to 1,6,7,8,9,10.

v3:
- rebase on top of net-next/master
- add reviewed-bys to patches unchanged from v2 (2,3,4,5)
- add 6250-specific ->ieee_pri_map, ->port_set_speed, ->port_link_state (1,6,7)
- in addition, use mv88e6065_phylink_validate for ->phylink_validate,
and don't implement ->port_get_cmode, ->port_set_jumbo_size,
->port_disable_learn_limit, ->rmu_disable
- drop ptp support
- add patch adding the compatible string to the DT binding (9)
- add small refactoring patch (10)

v2:
- rebase on top of net-next/master
- add reviewed-by to two patches unchanged from v1 (2,3)
- add separate watchdog_ops

Rasmus Villemoes (10):
net: dsa: mv88e6xxx: add mv88e6250_g1_ieee_pri_map
net: dsa: mv88e6xxx: introduce support for two chips using direct smi
addressing
net: dsa: mv88e6xxx: prepare mv88e6xxx_g1_atu_op() for the mv88e6250
net: dsa: mv88e6xxx: implement vtu_getnext and vtu_loadpurge for
mv88e6250
net: dsa: mv88e6xxx: implement watchdog_ops for mv88e6250
net: dsa: mv88e6xxx: implement port_set_speed for mv88e6250
net: dsa: mv88e6xxx: implement port_link_state for mv88e6250
net: dsa: mv88e6xxx: add support for mv88e6250
dt-bindings: net: dsa: marvell: add "marvell,mv88e6250" compatible
string
net: dsa: mv88e6xxx: refactor mv88e6352_g1_reset

.../devicetree/bindings/net/dsa/marvell.txt | 7 +-
drivers/net/dsa/mv88e6xxx/chip.c | 81 +++++++++++++++++++
drivers/net/dsa/mv88e6xxx/chip.h | 8 ++
drivers/net/dsa/mv88e6xxx/global1.c | 17 +++-
drivers/net/dsa/mv88e6xxx/global1.h | 7 ++
drivers/net/dsa/mv88e6xxx/global1_atu.c | 5 +-
drivers/net/dsa/mv88e6xxx/global1_vtu.c | 58 +++++++++++++
drivers/net/dsa/mv88e6xxx/global2.c | 26 ++++++
drivers/net/dsa/mv88e6xxx/global2.h | 14 ++++
drivers/net/dsa/mv88e6xxx/port.c | 77 ++++++++++++++++++
drivers/net/dsa/mv88e6xxx/port.h | 14 ++++
drivers/net/dsa/mv88e6xxx/smi.c | 25 +++++-
12 files changed, 333 insertions(+), 6 deletions(-)

--
2.20.1