linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net-next v2 0/9] net: ethernet backplane support
@ 2020-04-24 12:46 Florinel Iordache
  2020-04-24 12:46 ` [PATCH net-next v2 1/9] doc: net: add backplane documentation Florinel Iordache
                   ` (9 more replies)
  0 siblings, 10 replies; 20+ messages in thread
From: Florinel Iordache @ 2020-04-24 12:46 UTC (permalink / raw)
  To: davem, netdev, andrew, f.fainelli, hkallweit1, linux
  Cc: devicetree, linux-doc, robh+dt, mark.rutland, kuba, corbet,
	shawnguo, leoyang.li, madalin.bucur, ioana.ciornei, linux-kernel,
	Florinel Iordache

Add support for Ethernet Backplane KR generic driver using link training
(ieee802.3ap/ba standards), equalization algorithms (bee, fixed) and
enable qoriq family of devices.
This driver is dependent on uboot Backplane KR support:
patchwork.ozlabs.org/project/uboot/list/?series=164627&state=*

v2 changes:
* phy.rst and ABI/testing/sysfs-class-net-phydev updates with new PHY
interface values according to Florian Fainelli feedback
* dt bindings updates according to Rob Herring feedback: fixed errors
occurred when running 'make dt_binding_check'
* bpdev log changes according to feedback from Joe Perches: use %pV
instead of an intermediate buffer and refactoring
* reverse christmas tree updates according to David Miller feedback
* use pr_info_once function in probe to display qoriq backplane driver
version according to Joe's feedback
* introduce helper function dt_serdes_type in qoriq backplane according
to Joe's feedback
* use standard linux defines to access AN control/status registers and
not indirect with internal variables according to Andrew's feedback
* dt bindings link training updates: pre-cursor, main-cursor, post-cursor
* change display format for tx equalization using C() standard notation
* add priv pointer in backplane_device and lane as device specific private
extension to be used by upper layer backplane drivers
* backplane refactoring: split backplane_phy_info struct in
backplane_device and backplane_driver, add backplane specific ops and
move amp_red as qoriq specific param
* lane refactoring: split kr_lane_info struct in lane_device and lane_kr
in order to separate lane kr specific data by generic device lane data,
lane kr parameters unification, extension params for custom device
specific
* equalization refactoring: replace eq_setup_info/equalizer_info with
equalizer_driver/equalizer_device data structures

Feedback not addressed yet:
* general solution for PCS representation: still working to find a
generic suitable solution, exploring alternatives, perhaps this
should be addressed in phy generic layer

Florinel Iordache (9):
  doc: net: add backplane documentation
  dt-bindings: net: add backplane dt bindings
  net: phy: add support for kr phy connection type
  net: fman: add kr support for dpaa1 mac
  net: dpaa2: add kr support for dpaa2 mac
  net: phy: add backplane kr driver support
  net: phy: enable qoriq backplane support
  net: phy: add bee algorithm for kr training
  arm64: dts: add serdes and mdio description

 Documentation/ABI/testing/sysfs-class-net-phydev   |    2 +-
 .../bindings/net/ethernet-controller.yaml          |    3 +-
 .../devicetree/bindings/net/ethernet-phy.yaml      |   50 +
 .../devicetree/bindings/net/serdes-lane.yaml       |   51 +
 Documentation/devicetree/bindings/net/serdes.yaml  |   44 +
 Documentation/networking/backplane.rst             |  165 ++
 Documentation/networking/phy.rst                   |   15 +-
 arch/arm64/boot/dts/freescale/fsl-ls1046a.dtsi     |   33 +-
 arch/arm64/boot/dts/freescale/fsl-ls1088a.dtsi     |   97 +-
 arch/arm64/boot/dts/freescale/fsl-ls208xa.dtsi     |  160 +-
 arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi     |  128 +-
 .../boot/dts/freescale/qoriq-fman3-0-10g-0.dtsi    |    5 +-
 .../boot/dts/freescale/qoriq-fman3-0-10g-1.dtsi    |    5 +-
 drivers/net/ethernet/freescale/dpaa2/dpaa2-mac.c   |   10 +-
 drivers/net/ethernet/freescale/fman/mac.c          |   10 +-
 drivers/net/phy/Kconfig                            |    2 +
 drivers/net/phy/Makefile                           |    1 +
 drivers/net/phy/backplane/Kconfig                  |   40 +
 drivers/net/phy/backplane/Makefile                 |   12 +
 drivers/net/phy/backplane/backplane.c              | 1626 ++++++++++++++++++++
 drivers/net/phy/backplane/backplane.h              |  293 ++++
 drivers/net/phy/backplane/eq_bee.c                 | 1076 +++++++++++++
 drivers/net/phy/backplane/eq_fixed.c               |   83 +
 drivers/net/phy/backplane/equalization.h           |  283 ++++
 drivers/net/phy/backplane/link_training.c          | 1529 ++++++++++++++++++
 drivers/net/phy/backplane/link_training.h          |   32 +
 drivers/net/phy/backplane/qoriq_backplane.c        |  501 ++++++
 drivers/net/phy/backplane/qoriq_backplane.h        |   46 +
 drivers/net/phy/backplane/qoriq_serdes_10g.c       |  486 ++++++
 drivers/net/phy/backplane/qoriq_serdes_28g.c       |  547 +++++++
 drivers/net/phy/phylink.c                          |   15 +-
 include/linux/phy.h                                |    6 +-
 32 files changed, 7334 insertions(+), 22 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/net/serdes-lane.yaml
 create mode 100644 Documentation/devicetree/bindings/net/serdes.yaml
 create mode 100644 Documentation/networking/backplane.rst
 create mode 100644 drivers/net/phy/backplane/Kconfig
 create mode 100644 drivers/net/phy/backplane/Makefile
 create mode 100644 drivers/net/phy/backplane/backplane.c
 create mode 100644 drivers/net/phy/backplane/backplane.h
 create mode 100644 drivers/net/phy/backplane/eq_bee.c
 create mode 100644 drivers/net/phy/backplane/eq_fixed.c
 create mode 100644 drivers/net/phy/backplane/equalization.h
 create mode 100644 drivers/net/phy/backplane/link_training.c
 create mode 100644 drivers/net/phy/backplane/link_training.h
 create mode 100644 drivers/net/phy/backplane/qoriq_backplane.c
 create mode 100644 drivers/net/phy/backplane/qoriq_backplane.h
 create mode 100644 drivers/net/phy/backplane/qoriq_serdes_10g.c
 create mode 100644 drivers/net/phy/backplane/qoriq_serdes_28g.c

-- 
1.9.1


^ permalink raw reply	[flat|nested] 20+ messages in thread

end of thread, other threads:[~2020-04-25 10:52 UTC | newest]

Thread overview: 20+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-24 12:46 [PATCH net-next v2 0/9] net: ethernet backplane support Florinel Iordache
2020-04-24 12:46 ` [PATCH net-next v2 1/9] doc: net: add backplane documentation Florinel Iordache
2020-04-25 10:28   ` Russell King - ARM Linux admin
2020-04-24 12:46 ` [PATCH net-next v2 2/9] dt-bindings: net: add backplane dt bindings Florinel Iordache
2020-04-24 19:55   ` Rob Herring
2020-04-25 10:27   ` Russell King - ARM Linux admin
2020-04-24 12:46 ` [PATCH net-next v2 3/9] net: phy: add kr phy connection type Florinel Iordache
2020-04-24 13:42   ` Andrew Lunn
2020-04-25 10:22     ` Russell King - ARM Linux admin
2020-04-24 12:46 ` [PATCH net-next v2 4/9] net: fman: add kr support for dpaa1 mac Florinel Iordache
2020-04-24 12:46 ` [PATCH net-next v2 5/9] net: dpaa2: add kr support for dpaa2 mac Florinel Iordache
2020-04-24 12:46 ` [PATCH net-next v2 6/9] net: phy: add backplane kr driver support Florinel Iordache
2020-04-24 13:47   ` Andrew Lunn
2020-04-24 13:52   ` Andrew Lunn
2020-04-25 10:47   ` Russell King - ARM Linux admin
2020-04-24 12:46 ` [PATCH net-next v2 7/9] net: phy: enable qoriq backplane support Florinel Iordache
2020-04-25 10:52   ` Russell King - ARM Linux admin
2020-04-24 12:46 ` [PATCH net-next v2 8/9] net: phy: add bee algorithm for kr training Florinel Iordache
2020-04-24 12:46 ` [PATCH net-next v2 9/9] arm64: dts: add serdes and mdio description Florinel Iordache
2020-04-24 13:26 ` [PATCH net-next v2 0/9] net: ethernet backplane support Andrew Lunn

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).