This patch series adds support for MT7531.
MT7531 is the next generation of MT7530 which could be found on Mediatek
router platforms such as MT7622 or MT7629.
It is also a 7-ports switch with 5 giga embedded phys, 2 cpu ports, and
the same MAC logic of MT7530. Cpu port 6 only supports SGMII interface.
Cpu port 5 supports either RGMII or SGMII in different HW SKU, but cannot
be muxed to PHY of port 0/4 like mt7530. Due to support for SGMII
interface, pll, and pad setting are different from MT7530.
MT7531 SGMII interface can be configured in following mode:
- 'SGMII AN mode' with in-band negotiation capability
which is compatible with PHY_INTERFACE_MODE_SGMII.
- 'SGMII force mode' without in-band negotiation
which is compatible with 10B/8B encoding of
PHY_INTERFACE_MODE_1000BASEX with fixed full-duplex and fixed pause.
- 2.5 times faster clocked 'SGMII force mode' without in-band negotiation
which is compatible with 10B/8B encoding of
PHY_INTERFACE_MODE_2500BASEX with fixed full-duplex and fixed pause.
v2 -> v3
- Keep the same setup logic of mt7530/mt7621 because these series of
patches is for adding mt7531 hardware.
- Do not adjust rgmii delay when vendor phy driver presents in order to
prevent double adjustment by suggestion of Andrew Lunn.
- Remove redundant 'Example 4' from dt-bindings by suggestion of
Rob Herring.
- Fix typo.
v1 -> v2
- change phylink_validate callback function to support full-duplex
gigabit only to match hardware capability.
- add description of SGMII interface.
- configure mt7531 cpu port in fastest speed by default.
- parse SGMII control word for in-band negotiation mode.
- configure RGMII delay based on phy.rst.
- Rename the definition in the header file to avoid potential conflicts.
- Add wrapper function for mdio read/write to support both C22 and C45.
- correct fixed-link speed of 2500base-x in dts.
- add MT7531 port mirror setting.
Landen Chao (6):
net: dsa: mt7530: Refine message in Kconfig
net: dsa: mt7530: Extend device data ready for adding a new hardware
dt-bindings: net: dsa: add new MT7531 binding to support MT7531
net: dsa: mt7530: Add the support of MT7531 switch
arm64: dts: mt7622: add mt7531 dsa to mt7622-rfb1 board
arm64: dts: mt7622: add mt7531 dsa to bananapi-bpi-r64 board
.../devicetree/bindings/net/dsa/mt7530.txt | 10 +-
.../dts/mediatek/mt7622-bananapi-bpi-r64.dts | 44 +
arch/arm64/boot/dts/mediatek/mt7622-rfb1.dts | 57 +-
drivers/net/dsa/Kconfig | 6 +-
drivers/net/dsa/mt7530.c | 1194 +++++++++++++++--
drivers/net/dsa/mt7530.h | 259 +++-
6 files changed, 1463 insertions(+), 107 deletions(-)
--
2.17.1