devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH resend v4 0/3] phy: Add driver for lan966x Serdes driver
@ 2021-11-16 10:08 Horatiu Vultur
  2021-11-16 10:08 ` [PATCH resend v4 1/3] dt-bindings: phy: Add lan966x-serdes binding Horatiu Vultur
                   ` (4 more replies)
  0 siblings, 5 replies; 14+ messages in thread
From: Horatiu Vultur @ 2021-11-16 10:08 UTC (permalink / raw)
  To: kishon, vkoul, robh+dt, andrew, alexandre.belloni, kuba,
	linux-phy, devicetree, linux-kernel
  Cc: Horatiu Vultur

This patch serie adds support for Microchip lan966x serdes. The lan966x
device contains 7 interfaces, consisting of 2 copper transceivers,
3 Serdes and 2 RGMII interfaces. Two of the Serdes support QSGMII.
The driver also adds the functionality of "muxing" the interfaces to
different logical ports.

The following table shows which interfaces can be supported by the port.

PortNumber    Max Speed    Ethernet interface options
    0            1Gbps       CuPHY, 1G SGMII or QSGMII
    1            1Gbps       CuPHY, 1G SGMII or QSGMII
    2          2.5Gbps       2.5G SGMII, QSGMII, RGMII
    3          2.5Gbps       2.5G SGMII, QSGMII, RGMII
    4          2.5Gbps       2.5G SGMII, QSGMII
    5            1Gbps       QSGMII, RGMII
    6            1Gbps       QSGMII, RGMII
    7            1Gbps       QSGMII

v3->v4:
- update description of the driver
- removed unused registers
- use bitfield operations in the registers
- add macros for PLL configuration
- move macros and structs at the top of the file

v2->v3:
- remove unused includes
- add missing '...' in microchip,lan966x-serdes.yaml
- rename lan966x-serdes.h to phy-lan966x-serdes.h
- Rename CU->PHY and RG->RGMII
- update commit message for PATCH 2

v1->v2:
- replace the regmap with iomem
- update DT bindings

Horatiu Vultur (3):
  dt-bindings: phy: Add lan966x-serdes binding
  dt-bindings: phy: Add constants for lan966x serdes
  phy: Add lan966x ethernet serdes PHY driver

 .../phy/microchip,lan966x-serdes.yaml         |  59 ++
 drivers/phy/microchip/Kconfig                 |   8 +
 drivers/phy/microchip/Makefile                |   1 +
 drivers/phy/microchip/lan966x_serdes.c        | 548 ++++++++++++++++++
 drivers/phy/microchip/lan966x_serdes_regs.h   | 209 +++++++
 include/dt-bindings/phy/phy-lan966x-serdes.h  |  14 +
 6 files changed, 839 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/phy/microchip,lan966x-serdes.yaml
 create mode 100644 drivers/phy/microchip/lan966x_serdes.c
 create mode 100644 drivers/phy/microchip/lan966x_serdes_regs.h
 create mode 100644 include/dt-bindings/phy/phy-lan966x-serdes.h

-- 
2.33.0


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

end of thread, other threads:[~2021-11-30 16:10 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-11-16 10:08 [PATCH resend v4 0/3] phy: Add driver for lan966x Serdes driver Horatiu Vultur
2021-11-16 10:08 ` [PATCH resend v4 1/3] dt-bindings: phy: Add lan966x-serdes binding Horatiu Vultur
2021-11-30 14:02   ` Geert Uytterhoeven
2021-11-30 16:11     ` Horatiu Vultur
2021-11-16 10:08 ` [PATCH resend v4 2/3] dt-bindings: phy: Add constants for lan966x serdes Horatiu Vultur
2021-11-16 10:08 ` [PATCH resend v4 3/3] phy: Add lan966x ethernet serdes PHY driver Horatiu Vultur
2021-11-16 10:21 ` [PATCH resend v4 0/3] phy: Add driver for lan966x Serdes driver Horatiu Vultur
2021-11-16 10:45   ` Vinod Koul
2021-11-16 10:56     ` Horatiu Vultur
2021-11-16 11:43       ` Vinod Koul
2021-11-16 11:52         ` Horatiu Vultur
2021-11-16 18:12           ` Alexandre Belloni
2021-11-16 22:05             ` Horatiu Vultur
2021-11-23  7:39 ` Vinod Koul

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).