netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v8 00/14] add qca8084 ethernet phy driver
@ 2023-12-15  7:39 Luo Jie
  2023-12-15  7:39 ` [PATCH v8 01/14] net: phy: introduce core support for phy-mode = "10g-qxgmii" Luo Jie
                   ` (13 more replies)
  0 siblings, 14 replies; 52+ messages in thread
From: Luo Jie @ 2023-12-15  7:39 UTC (permalink / raw)
  To: andrew, davem, edumazet, kuba, pabeni, robh+dt,
	krzysztof.kozlowski+dt, conor+dt, hkallweit1, linux, corbet,
	p.zabel, f.fainelli
  Cc: netdev, devicetree, linux-kernel, linux-doc

QCA8084 is four-port PHY with maximum link capability 2.5G,
which supports the interface mode qusgmii and sgmii mode,
there are two PCSs available to connected with ethernet port.

QCA8084 can work in switch mode or PHY mode.
For switch mode, both PCS0 and PCS1 work on sgmii mode.
For PHY mode, PCS1 works on qusgmii mode.
The fourth PHY connected with PCS0 works on sgmii mode.

Besides this PHY driver patches, the PCS driver is also needed
to bring up the qca8084 device, which mainly configurs PCS
and clocks.

The qca8084 PHY driver depends on the following clock controller
patchset, the initial clocks and resets are provided by the clock
controller driver below.
https://lore.kernel.org/lkml/20231104034858.9159-2-quic_luoj@quicinc.com/T/

Changes in v3:
	* pick the two patches to introduce the interface mode
	  10g-qxgmii from Vladimir Oltean(olteanv@gmail.com).
	* add the function phydev_id_is_qca808x to identify the
	  PHY qca8081 and qca8084.
	* update the interface mode name PHY_INTERFACE_MODE_QUSGMII
	  to PHY_INTERFACE_MODE_10G_QXGMII.

Changes in v4:
	* remove the following patch:
	  <net: phylink: move phylink_pcs_neg_mode() to phylink.c>.
	* split out 10g_qxgmii change of ethernet-controller.yaml.

Changes in v5:
	* update the author of the patch below.
	  <introduce core support for phy-mode = "10g-qxgmii">.

Changes in v6:
	* drop the "inline" keyword.
	* apply the patches with "--max-line-length=80".

Changes in v7:
	* add possible interfaces of phydev
	* customize phy address
	* add initialized clock & reset config
	* add the work mode config
	* update qca,ar803x.yaml for the new added properties

Changes in v7:
	* updated the patcheset based on the latest code

Luo Jie (12):
  net: phy: at803x: add QCA8084 ethernet phy support
  net: phy: at803x: add the function phydev_id_is_qca808x
  net: phy: at803x: Add qca8084_config_init function
  net: phy: at803x: add qca8084_link_change_notify
  net: phy: at803x: add the possible_interfaces
  net: phy: at803x: add qca8084 switch registe access
  net: phy: at803x: set MDIO address of qca8084 PHY
  net: phy: at803x: parse qca8084 clocks and resets
  net: phy: at803x: add qca808x initial config sequence
  net: phy: at803x: configure qca8084 common clocks
  net: phy: at803x: configure qca8084 work mode
  dt-bindings: net: ar803x: add qca8084 PHY properties

Vladimir Oltean (2):
  net: phy: introduce core support for phy-mode = "10g-qxgmii"
  dt-bindings: net: ethernet-controller: add 10g-qxgmii mode

 .../bindings/net/ethernet-controller.yaml     |   1 +
 .../devicetree/bindings/net/qca,ar803x.yaml   | 158 ++++-
 Documentation/networking/phy.rst              |   6 +
 drivers/net/phy/at803x.c                      | 577 +++++++++++++++++-
 drivers/net/phy/phy-core.c                    |   1 +
 drivers/net/phy/phylink.c                     |  11 +-
 include/linux/phy.h                           |   4 +
 include/linux/phylink.h                       |   2 +
 8 files changed, 752 insertions(+), 8 deletions(-)


base-commit: 17cb8a20bde66a520a2ca7aad1063e1ce7382240
-- 
2.42.0


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

end of thread, other threads:[~2024-01-08  8:27 UTC | newest]

Thread overview: 52+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-12-15  7:39 [PATCH v8 00/14] add qca8084 ethernet phy driver Luo Jie
2023-12-15  7:39 ` [PATCH v8 01/14] net: phy: introduce core support for phy-mode = "10g-qxgmii" Luo Jie
2023-12-15  7:39 ` [PATCH v8 02/14] dt-bindings: net: ethernet-controller: add 10g-qxgmii mode Luo Jie
2023-12-15  7:39 ` [PATCH v8 03/14] net: phy: at803x: add QCA8084 ethernet phy support Luo Jie
2023-12-15  7:39 ` [PATCH v8 04/14] net: phy: at803x: add the function phydev_id_is_qca808x Luo Jie
2023-12-15  7:39 ` [PATCH v8 05/14] net: phy: at803x: Add qca8084_config_init function Luo Jie
2023-12-15  7:39 ` [PATCH v8 06/14] net: phy: at803x: add qca8084_link_change_notify Luo Jie
2023-12-15  7:39 ` [PATCH v8 07/14] net: phy: at803x: add the possible_interfaces Luo Jie
2023-12-15  7:39 ` [PATCH v8 08/14] net: phy: at803x: add qca8084 switch registe access Luo Jie
2023-12-15  7:39 ` [PATCH v8 09/14] net: phy: at803x: set MDIO address of qca8084 PHY Luo Jie
2023-12-15  7:40 ` [PATCH v8 10/14] net: phy: at803x: parse qca8084 clocks and resets Luo Jie
2023-12-15  7:40 ` [PATCH v8 11/14] net: phy: at803x: add qca808x initial config sequence Luo Jie
2023-12-15  7:40 ` [PATCH v8 12/14] net: phy: at803x: configure qca8084 common clocks Luo Jie
2023-12-15  7:40 ` [PATCH v8 13/14] net: phy: at803x: configure qca8084 work mode Luo Jie
2023-12-17 13:02   ` Simon Horman
2023-12-18  3:33     ` Jie Luo
2023-12-15  7:40 ` [PATCH v8 14/14] dt-bindings: net: ar803x: add qca8084 PHY properties Luo Jie
2023-12-15  8:22   ` Krzysztof Kozlowski
2023-12-15 10:16     ` Jie Luo
2023-12-15 11:25       ` Andrew Lunn
2023-12-15 12:16         ` Jie Luo
2023-12-15 13:42           ` Russell King (Oracle)
2023-12-16  7:57             ` Jie Luo
2023-12-16 17:17               ` Andrew Lunn
2023-12-18  4:53                 ` Jie Luo
2023-12-18  9:34                   ` Andrew Lunn
2023-12-19  8:52                     ` Jie Luo
2023-12-15 12:12   ` Andrew Lunn
2023-12-15 12:33     ` Jie Luo
2023-12-15 13:31       ` Andrew Lunn
2023-12-16  7:37         ` Jie Luo
2023-12-16 10:21           ` Andrew Lunn
2023-12-16 13:25             ` Jie Luo
2023-12-16 13:51             ` Russell King (Oracle)
2023-12-16 14:41               ` Jie Luo
2023-12-16 16:01                 ` Christian Marangi
2023-12-18  5:22                   ` Jie Luo
2023-12-16 16:09                 ` Russell King (Oracle)
2023-12-18  3:01                   ` Jie Luo
2024-01-02  9:57                     ` Russell King (Oracle)
2024-01-02 10:08                       ` Christian Marangi
2024-01-03 13:27                         ` Jie Luo
2024-01-03 14:22                           ` Andrew Lunn
2024-01-04  9:53                             ` Jie Luo
2024-01-04 13:57                               ` Andrew Lunn
2024-01-05 10:26                                 ` Jie Luo
2024-01-05 13:37                                   ` Andrew Lunn
2024-01-08  8:27                                     ` Jie Luo
2023-12-16 17:30           ` Andrew Lunn
2023-12-16 19:08             ` Russell King (Oracle)
2023-12-18  3:31               ` Jie Luo
2023-12-18  3:27             ` Jie Luo

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