All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vladimir Oltean <olteanv@gmail.com>
To: f.fainelli@gmail.com, vivien.didelot@gmail.com, andrew@lunn.ch,
	davem@davemloft.net
Cc: netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	linus.walleij@linaro.org, georg.waibel@sensor-technik.de,
	Vladimir Oltean <olteanv@gmail.com>
Subject: [PATCH net-next 17/17] dt-bindings: net: dsa: Add documentation for NXP SJA1105 driver
Date: Sun, 31 Mar 2019 20:42:32 +0300	[thread overview]
Message-ID: <20190331174232.22060-18-olteanv@gmail.com> (raw)
In-Reply-To: <20190331174232.22060-1-olteanv@gmail.com>

Signed-off-by: Vladimir Oltean <olteanv@gmail.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
---
 .../devicetree/bindings/net/dsa/sja1105.txt   | 123 ++++++++++++++++++
 1 file changed, 123 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/net/dsa/sja1105.txt

diff --git a/Documentation/devicetree/bindings/net/dsa/sja1105.txt b/Documentation/devicetree/bindings/net/dsa/sja1105.txt
new file mode 100644
index 000000000000..2c82b6fc37e3
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/dsa/sja1105.txt
@@ -0,0 +1,123 @@
+NXP SJA1105 switch driver
+=========================
+
+Required properties:
+
+- compatible: Must be "nxp,sja1105". Device ID identification (one of
+  E/T/P/Q/R/S) is performed by driver at probe time. Swapping pin-compatible
+  parts is possible with no DTS change.
+
+Optional properties:
+
+- sja1105,mac-mode, sja1105,phy-mode: Boolean properties that can be assigned
+  under each port node that is MII or RMII (has no effect for RGMII).  By
+  default (unless otherwise specified) a port is configured as MAC if it is
+  driving a PHY (phy-handle is present) or as PHY if it is PHY-less (fixed-link
+  specified, presumably because it is connected to a MAC).  These properties
+  are required in the case where SJA1105 ports are at both ends of an MII/RMII
+  PHY-less setup. One end would need to have sja1105,mac-mode, while the other
+  sja1105,phy-mode.
+
+See Documentation/devicetree/bindings/net/dsa/dsa.txt for the list of standard
+DSA required and optional properties.
+
+Other observations:
+
+The SJA1105 SPI interface requires a CS-to-CLK time (t2 in UM10944) of at least
+one half of t_CLK. At an SPI frequency of 1MHz, this means a minimum
+cs_sck_delay of 500ns. Ensuring that this SPI timing requirement is observed
+depends on the SPI bus master driver.
+
+Example:
+
+Ethernet switch connected via SPI to the host, CPU port wired to eth0:
+
+arch/arm/boot/dts/ls1021a-tsn.dts:
+
+/* SPI controller of the LS1021 */
+&dspi0 {
+	sja1105@1 {
+		reg = <0x1>;
+		#address-cells = <1>;
+		#size-cells = <0>;
+		compatible = "nxp,sja1105";
+		spi-max-frequency = <4000000>;
+		fsl,spi-cs-sck-delay = <1000>;
+		fsl,spi-sck-cs-delay = <1000>;
+		ports {
+			#address-cells = <1>;
+			#size-cells = <0>;
+			port@0 {
+				/* ETH5 written on chassis */
+				label = "swp5";
+				phy-handle = <&rgmii_phy6>;
+				phy-mode = "rgmii";
+				reg = <0>;
+				/* Implicit "sja1105,mac-mode;" */
+			};
+			port@1 {
+				/* ETH2 written on chassis */
+				label = "swp2";
+				phy-handle = <&rgmii_phy3>;
+				phy-mode = "rgmii";
+				reg = <1>;
+				/* Implicit "sja1105,mac-mode;" */
+			};
+			port@2 {
+				/* ETH3 written on chassis */
+				label = "swp3";
+				phy-handle = <&rgmii_phy4>;
+				phy-mode = "rgmii";
+				reg = <2>;
+				/* Implicit "sja1105,mac-mode;" */
+			};
+			port@3 {
+				/* ETH4 written on chassis */
+				phy-handle = <&rgmii_phy5>;
+				label = "swp4";
+				phy-mode = "rgmii";
+				reg = <3>;
+				/* Implicit "sja1105,mac-mode;" */
+			};
+			port@4 {
+				/* Internal port connected to eth2 */
+				ethernet = <&enet2>;
+				phy-mode = "rgmii";
+				reg = <4>;
+				/* Implicit "sja1105,phy-mode;" */
+				fixed-link {
+					speed = <1000>;
+					full-duplex;
+				};
+			};
+		};
+	};
+};
+
+/* MDIO controller of the LS1021 */
+&mdio0 {
+	/* BCM5464 */
+	rgmii_phy3: ethernet-phy@3 {
+		reg = <0x3>;
+	};
+	rgmii_phy4: ethernet-phy@4 {
+		reg = <0x4>;
+	};
+	rgmii_phy5: ethernet-phy@5 {
+		reg = <0x5>;
+	};
+	rgmii_phy6: ethernet-phy@6 {
+		reg = <0x6>;
+	};
+};
+
+/* Ethernet master port of the LS1021 */
+&enet2 {
+	phy-connection-type = "rgmii";
+	status = "ok";
+	fixed-link {
+		speed = <1000>;
+		full-duplex;
+	};
+};
+
-- 
2.17.1


  parent reply	other threads:[~2019-03-31 17:43 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-03-31 17:42 [PATCH net-next 00/17] NXP SJA1105 DSA driver Vladimir Oltean
2019-03-31 17:42 ` [PATCH net-next 01/17] lib: Add support for generic packing operations Vladimir Oltean
2019-04-04  9:19   ` Vladimir Oltean
2019-03-31 17:42 ` [PATCH net-next 02/17] net: dsa: Fix pharse -> phase typo Vladimir Oltean
2019-04-02 20:45   ` Andrew Lunn
2019-03-31 17:42 ` [PATCH net-next 03/17] net: dsa: Store vlan_filtering as a property of dsa_port Vladimir Oltean
2019-03-31 17:42 ` [PATCH net-next 04/17] net: dsa: mt7530: Use vlan_filtering property from dsa_port Vladimir Oltean
2019-04-02 20:47   ` Andrew Lunn
2019-03-31 17:42 ` [PATCH net-next 05/17] net: dsa: Add more convenient functions for installing port VLANs Vladimir Oltean
2019-04-02 20:54   ` Andrew Lunn
2019-03-31 17:42 ` [PATCH net-next 06/17] net: dsa: Call driver's setup callback after setting up its switchdev notifier Vladimir Oltean
2019-04-02 21:03   ` Andrew Lunn
2019-04-03  9:58     ` Vladimir Oltean
2019-03-31 17:42 ` [PATCH net-next 07/17] net: dsa: Optional VLAN-based port separation for switches without tagging Vladimir Oltean
2019-03-31 17:42 ` [PATCH net-next 08/17] net: dsa: Be aware of switches where VLAN filtering is a global setting Vladimir Oltean
2019-03-31 17:42 ` [PATCH net-next 09/17] net: dsa: b53: Let DSA handle mismatched VLAN filtering settings Vladimir Oltean
2019-03-31 17:42 ` [PATCH net-next 10/17] net: dsa: Introduce driver for NXP SJA1105 5-port L2 switch Vladimir Oltean
2019-04-02 21:55   ` Andrew Lunn
2019-03-31 17:42 ` [PATCH net-next 11/17] net: dsa: sja1105: Add support for FDB and MDB management Vladimir Oltean
2019-03-31 17:42 ` [PATCH net-next 12/17] net: dsa: sja1105: Add support for VLAN operations Vladimir Oltean
2019-03-31 17:42 ` [PATCH net-next 13/17] net: dsa: sja1105: Add support for ethtool port counters Vladimir Oltean
2019-03-31 17:42 ` [PATCH net-next 14/17] net: dsa: sja1105: Add support for traffic through standalone ports Vladimir Oltean
2019-03-31 17:42 ` [PATCH net-next 15/17] net: dsa: sja1105: Add support for Spanning Tree Protocol Vladimir Oltean
2019-03-31 17:42 ` [PATCH net-next 16/17] Documentation: networking: dsa: Add details about NXP SJA1105 driver Vladimir Oltean
2019-04-02 21:24   ` Andrew Lunn
2019-04-03 10:09     ` Vladimir Oltean
2019-04-03 15:07       ` Florian Fainelli
2019-03-31 17:42 ` Vladimir Oltean [this message]
2019-04-02 21:38   ` [PATCH net-next 17/17] dt-bindings: net: dsa: Add documentation for " Andrew Lunn
2019-04-03  9:53     ` Vladimir Oltean

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190331174232.22060-18-olteanv@gmail.com \
    --to=olteanv@gmail.com \
    --cc=andrew@lunn.ch \
    --cc=davem@davemloft.net \
    --cc=f.fainelli@gmail.com \
    --cc=georg.waibel@sensor-technik.de \
    --cc=linus.walleij@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=vivien.didelot@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.