linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 00/16] Add support for Synopsis DWMAC IP on NXP Automotive SoCs S32G2xx/S32G3xx/S32R45
@ 2024-10-28 20:24 Jan Petrous via B4 Relay
  2024-10-28 20:24 ` [PATCH v4 01/16] net: driver: stmmac: Fix CSR divider comment Jan Petrous via B4 Relay
                   ` (15 more replies)
  0 siblings, 16 replies; 45+ messages in thread
From: Jan Petrous via B4 Relay @ 2024-10-28 20:24 UTC (permalink / raw)
  To: Maxime Coquelin, Alexandre Torgue, Jose Abreu, David S. Miller,
	Eric Dumazet, Jakub Kicinski, Paolo Abeni, Vinod Koul,
	Richard Cochran, Andrew Lunn, Heiner Kallweit, Russell King,
	Shawn Guo, Sascha Hauer, Pengutronix Kernel Team, Fabio Estevam,
	Emil Renner Berthing, Minda Chen, Nicolas Ferre, Claudiu Beznea,
	Iyappan Subramanian, Keyur Chudgar, Quan Nguyen, Rob Herring,
	Krzysztof Kozlowski, Conor Dooley, Giuseppe Cavallaro
  Cc: linux-stm32, linux-arm-kernel, linux-kernel, netdev,
	linux-arm-msm, imx, devicetree, NXP S32 Linux Team,
	Jan Petrous (OSS), Jacob Keller, Serge Semin,
	Russell King (Oracle), Andrei Botila

The SoC series S32G2xx and S32G3xx feature one DWMAC instance,
the SoC S32R45 has two instances. The devices can use RGMII/RMII/MII
interface over Pinctrl device or the output can be routed
to the embedded SerDes for SGMII connectivity.

The provided stmmac glue code implements only basic functionality,
interface support is restricted to RGMII only. More, including
SGMII/SerDes support will come later.

This patchset adds stmmac glue driver based on downstream NXP git [0].

[0] https://github.com/nxp-auto-linux/linux

v4:
- fixed empty commit messages for rgmi_clock() helper patches
- fixed yaml path in MAINTAINERS
- switched to platform_driver::remove() as suggested Uwe
- yaml: returned back all compatibility sting values
- added better commit description for rgmii_clock() helper
- Link to v3: https://lore.kernel.org/r/20241013-upstream_s32cc_gmac-v3-0-d84b5a67b930@oss.nxp.com

v3:
- switched to b4 WoW to overcome threading issue with b4
- extracted the hunk with the typo fix from v2 patch#1 to separate patch
  as Jacob suggested
- removed dead code for RMII/MII support, which will be added alter
- used new rgmii_clock() helper in other stmmac:dwmac glue drivers
- yaml: compatible strings compressed to simple one "nxp,s32-dwmac",
  removed duplicated required properties, already defined in snps,dwmac,
  fixed example

v2:
- send to wider audience as first version missed many maintainers
- created rgmi_clk() helper as Russell suggested (see patch#4)
- address Andrew's, Russell's, Serge's and Simon's comments

Message-ID: <AM9PR04MB85066576AD6848E2402DA354E2832@AM9PR04MB8506.eurprd04.prod.outlook.com>

Cc: 

Signed-off-by: Jan Petrous (OSS) <jan.petrous@oss.nxp.com>
---
Jan Petrous (OSS) (16):
      net: driver: stmmac: Fix CSR divider comment
      net: driver: stmmac: Extend CSR calc support
      net: stmmac: Fix clock rate variables size
      net: phy: Add helper for mapping RGMII link speed to clock rate
      net: dwmac-dwc-qos-eth: Use helper rgmii_clock
      net: dwmac-imx: Use helper rgmii_clock
      net: dwmac-intel-plat: Use helper rgmii_clock
      net: dwmac-rk: Use helper rgmii_clock
      net: dwmac-starfive: Use helper rgmii_clock
      net: macb: Use helper rgmii_clock
      net: xgene_enet: Use helper rgmii_clock
      net: dwmac-sti: Use helper rgmii_clock
      dt-bindings: net: Add DT bindings for DWMAC on NXP S32G/R SoCs
      net: stmmac: dwmac-s32: add basic NXP S32G/S32R glue driver
      MAINTAINERS: Add Jan Petrous as the NXP S32G/R DWMAC driver maintainer
      net: stmmac: dwmac-s32: Read PTP clock rate when ready

 .../devicetree/bindings/net/nxp,s32-dwmac.yaml     |  98 +++++++++
 .../devicetree/bindings/net/snps,dwmac.yaml        |   3 +
 MAINTAINERS                                        |   7 +
 drivers/net/ethernet/apm/xgene/xgene_enet_hw.c     |  16 +-
 drivers/net/ethernet/cadence/macb_main.c           |  14 +-
 drivers/net/ethernet/stmicro/stmmac/Kconfig        |  12 ++
 drivers/net/ethernet/stmicro/stmmac/Makefile       |   1 +
 drivers/net/ethernet/stmicro/stmmac/common.h       |   2 +
 .../ethernet/stmicro/stmmac/dwmac-dwc-qos-eth.c    |  11 +-
 drivers/net/ethernet/stmicro/stmmac/dwmac-imx.c    |  15 +-
 .../net/ethernet/stmicro/stmmac/dwmac-intel-plat.c |  20 +-
 .../ethernet/stmicro/stmmac/dwmac-qcom-ethqos.c    |   2 +-
 drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c     |  30 +--
 drivers/net/ethernet/stmicro/stmmac/dwmac-s32.c    | 239 +++++++++++++++++++++
 .../net/ethernet/stmicro/stmmac/dwmac-starfive.c   |  19 +-
 drivers/net/ethernet/stmicro/stmmac/dwmac-sti.c    |  18 +-
 drivers/net/ethernet/stmicro/stmmac/dwmac4_core.c  |   2 +-
 drivers/net/ethernet/stmicro/stmmac/stmmac_main.c  |   6 +-
 .../net/ethernet/stmicro/stmmac/stmmac_platform.c  |   2 +-
 include/linux/phy.h                                |  23 ++
 include/linux/stmmac.h                             |  10 +-
 21 files changed, 431 insertions(+), 119 deletions(-)
---
base-commit: 2f87d0916ce0d2925cedbc9e8f5d6291ba2ac7b2
change-id: 20240923-upstream_s32cc_gmac-6891eb75b126

Best regards,
-- 
Jan Petrous (OSS) <jan.petrous@oss.nxp.com>




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

end of thread, other threads:[~2024-11-19 14:52 UTC | newest]

Thread overview: 45+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-10-28 20:24 [PATCH v4 00/16] Add support for Synopsis DWMAC IP on NXP Automotive SoCs S32G2xx/S32G3xx/S32R45 Jan Petrous via B4 Relay
2024-10-28 20:24 ` [PATCH v4 01/16] net: driver: stmmac: Fix CSR divider comment Jan Petrous via B4 Relay
2024-10-28 20:24 ` [PATCH v4 02/16] net: driver: stmmac: Extend CSR calc support Jan Petrous via B4 Relay
2024-10-28 20:24 ` [PATCH v4 03/16] net: stmmac: Fix clock rate variables size Jan Petrous via B4 Relay
2024-10-28 20:24 ` [PATCH v4 04/16] net: phy: Add helper for mapping RGMII link speed to clock rate Jan Petrous via B4 Relay
2024-10-29 12:02   ` Andrew Lunn
2024-10-28 20:24 ` [PATCH v4 05/16] net: dwmac-dwc-qos-eth: Use helper rgmii_clock Jan Petrous via B4 Relay
2024-10-29 12:02   ` Andrew Lunn
2024-11-05 13:42   ` Simon Horman
2024-11-11 13:50     ` Jan Petrous
2024-10-28 20:24 ` [PATCH v4 06/16] net: dwmac-imx: " Jan Petrous via B4 Relay
2024-10-29 12:03   ` Andrew Lunn
2024-10-28 20:24 ` [PATCH v4 07/16] net: dwmac-intel-plat: " Jan Petrous via B4 Relay
2024-10-29 12:03   ` Andrew Lunn
2024-10-28 20:24 ` [PATCH v4 08/16] net: dwmac-rk: " Jan Petrous via B4 Relay
2024-10-29 12:03   ` Andrew Lunn
2024-10-28 20:24 ` [PATCH v4 09/16] net: dwmac-starfive: " Jan Petrous via B4 Relay
2024-10-29 12:03   ` Andrew Lunn
2024-10-28 20:24 ` [PATCH v4 10/16] net: macb: " Jan Petrous via B4 Relay
2024-10-29 12:04   ` Andrew Lunn
2024-10-28 20:24 ` [PATCH v4 11/16] net: xgene_enet: " Jan Petrous via B4 Relay
2024-10-29 12:04   ` Andrew Lunn
2024-10-28 20:24 ` [PATCH v4 12/16] net: dwmac-sti: " Jan Petrous via B4 Relay
2024-10-29 12:06   ` Andrew Lunn
2024-10-28 20:24 ` [PATCH v4 13/16] dt-bindings: net: Add DT bindings for DWMAC on NXP S32G/R SoCs Jan Petrous via B4 Relay
2024-10-29  7:12   ` Krzysztof Kozlowski
2024-10-31 14:29     ` Jan Petrous
2024-10-31 15:00       ` Andrew Lunn
2024-10-31 15:43       ` Krzysztof Kozlowski
2024-10-28 20:24 ` [PATCH v4 14/16] net: stmmac: dwmac-s32: add basic NXP S32G/S32R glue driver Jan Petrous via B4 Relay
2024-10-29  7:13   ` Krzysztof Kozlowski
2024-10-31 14:43     ` Jan Petrous
2024-10-31 15:44       ` Krzysztof Kozlowski
2024-10-31 17:16         ` Jan Petrous
2024-10-31 17:24           ` Jan Petrous
2024-11-01 15:40             ` Krzysztof Kozlowski
2024-11-19 14:51               ` Jan Petrous
2024-10-31 17:53           ` Krzysztof Kozlowski
2024-10-29 12:15   ` Andrew Lunn
2024-11-11 14:08     ` Jan Petrous
2024-10-28 20:24 ` [PATCH v4 15/16] MAINTAINERS: Add Jan Petrous as the NXP S32G/R DWMAC driver maintainer Jan Petrous via B4 Relay
2024-10-29 12:16   ` Andrew Lunn
2024-10-28 20:24 ` [PATCH v4 16/16] net: stmmac: dwmac-s32: Read PTP clock rate when ready Jan Petrous via B4 Relay
2024-10-29 12:18   ` Andrew Lunn
2024-11-17 15:39     ` Jan Petrous

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