mbox series

[v3,net-next,0/4] Add NXP SJA1110 support to the sja1105 DSA driver

Message ID 20210608092538.3920217-1-olteanv@gmail.com
Headers show
Series Add NXP SJA1110 support to the sja1105 DSA driver | expand

Message

Vladimir Oltean June 8, 2021, 9:25 a.m. UTC
From: Vladimir Oltean <vladimir.oltean@nxp.com>

The NXP SJA1110 is an automotive Ethernet switch with an embedded Arm
Cortex-M7 microcontroller. The switch has 11 ports (10 external + one
for the DSA-style connection to the microcontroller).
The microcontroller can be disabled and the switch can be controlled
over SPI, a la SJA1105 - this is how this driver handles things.

There are some integrated NXP PHYs (100base-T1 and 100base-TX). Their
initialization is handled by their own PHY drivers, the switch is only
concerned with enabling register accesses to them, by registering two
MDIO buses.

Changes in v3:
- Make sure the VLAN retagging port is enabled and functional
- Dropped SGMII PCS from this series

Changes in v2:
- converted nxp,sja1105 DT bindings to YAML
- registered the PCS MDIO bus and forced auto-probing off for all PHY
  addresses for this bus
- changed the container node name for the 2 MDIO buses from "mdio" to
  "mdios" to avoid matching on the mdio.yaml schema (it's just a
  container node, not an MDIO bus)
- fixed an uninitialized "offset" variable usage in
  sja1110_pcs_mdio_{read,write}
- using the mdiobus_c45_addr macro instead of open-coding that operation

Cc: Russell King <linux@armlinux.org.uk>
Cc: Heiner Kallweit <hkallweit1@gmail.com>
Cc: Rob Herring <robh+dt@kernel.org>
Cc: devicetree@vger.kernel.org

Vladimir Oltean (4):
  dt-bindings: net: dsa: sja1105: add SJA1110 bindings
  net: dsa: sja1105: add support for the SJA1110 switch family
  net: dsa: sja1105: make sure the retagging port is enabled for SJA1110
  net: dsa: sja1105: register the MDIO buses for 100base-T1 and
    100base-TX

 .../bindings/net/dsa/nxp,sja1105.yaml         |  43 ++
 drivers/net/dsa/sja1105/Makefile              |   1 +
 drivers/net/dsa/sja1105/sja1105.h             |  43 +-
 drivers/net/dsa/sja1105/sja1105_clocking.c    |  91 ++++
 .../net/dsa/sja1105/sja1105_dynamic_config.c  | 321 +++++++++++-
 .../net/dsa/sja1105/sja1105_dynamic_config.h  |   1 +
 drivers/net/dsa/sja1105/sja1105_main.c        | 132 ++++-
 drivers/net/dsa/sja1105/sja1105_mdio.c        | 288 +++++++++++
 drivers/net/dsa/sja1105/sja1105_spi.c         | 282 ++++++++++
 .../net/dsa/sja1105/sja1105_static_config.c   | 483 ++++++++++++++++++
 .../net/dsa/sja1105/sja1105_static_config.h   |  99 +++-
 11 files changed, 1771 insertions(+), 13 deletions(-)
 create mode 100644 drivers/net/dsa/sja1105/sja1105_mdio.c

Comments

patchwork-bot+netdevbpf@kernel.org June 8, 2021, 9:50 p.m. UTC | #1
Hello:

This series was applied to netdev/net-next.git (refs/heads/master):

On Tue,  8 Jun 2021 12:25:34 +0300 you wrote:
> From: Vladimir Oltean <vladimir.oltean@nxp.com>
> 
> The NXP SJA1110 is an automotive Ethernet switch with an embedded Arm
> Cortex-M7 microcontroller. The switch has 11 ports (10 external + one
> for the DSA-style connection to the microcontroller).
> The microcontroller can be disabled and the switch can be controlled
> over SPI, a la SJA1105 - this is how this driver handles things.
> 
> [...]

Here is the summary with links:
  - [v3,net-next,1/4] dt-bindings: net: dsa: sja1105: add SJA1110 bindings
    https://git.kernel.org/netdev/net-next/c/070f5b701d55
  - [v3,net-next,2/4] net: dsa: sja1105: add support for the SJA1110 switch family
    https://git.kernel.org/netdev/net-next/c/3e77e59bf8cf
  - [v3,net-next,3/4] net: dsa: sja1105: make sure the retagging port is enabled for SJA1110
    https://git.kernel.org/netdev/net-next/c/ceec8bc0988d
  - [v3,net-next,4/4] net: dsa: sja1105: register the MDIO buses for 100base-T1 and 100base-TX
    https://git.kernel.org/netdev/net-next/c/5a8f09748ee7

You are awesome, thank you!
--
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html