From: Florinel Iordache <florinel.iordache@nxp.com>
To: davem@davemloft.net, netdev@vger.kernel.org, andrew@lunn.ch,
f.fainelli@gmail.com, hkallweit1@gmail.com,
linux@armlinux.org.uk
Cc: devicetree@vger.kernel.org, linux-doc@vger.kernel.org,
robh+dt@kernel.org, mark.rutland@arm.com, kuba@kernel.org,
corbet@lwn.net, shawnguo@kernel.org, leoyang.li@nxp.com,
madalin.bucur@oss.nxp.com, ioana.ciornei@nxp.com,
linux-kernel@vger.kernel.org,
Florinel Iordache <florinel.iordache@nxp.com>
Subject: [PATCH net-next 2/9] dt-bindings: net: add backplane dt bindings
Date: Thu, 26 Mar 2020 15:51:15 +0200 [thread overview]
Message-ID: <1585230682-24417-3-git-send-email-florinel.iordache@nxp.com> (raw)
In-Reply-To: <1585230682-24417-1-git-send-email-florinel.iordache@nxp.com>
Add ethernet backplane device tree bindings
Signed-off-by: Florinel Iordache <florinel.iordache@nxp.com>
---
.../bindings/net/ethernet-controller.yaml | 3 +-
.../devicetree/bindings/net/ethernet-phy.yaml | 53 +++++++++++++
Documentation/devicetree/bindings/net/serdes.yaml | 90 ++++++++++++++++++++++
3 files changed, 145 insertions(+), 1 deletion(-)
create mode 100644 Documentation/devicetree/bindings/net/serdes.yaml
diff --git a/Documentation/devicetree/bindings/net/ethernet-controller.yaml b/Documentation/devicetree/bindings/net/ethernet-controller.yaml
index ac471b6..541cee5 100644
--- a/Documentation/devicetree/bindings/net/ethernet-controller.yaml
+++ b/Documentation/devicetree/bindings/net/ethernet-controller.yaml
@@ -93,8 +93,9 @@ properties:
- rxaui
- xaui
- # 10GBASE-KR, XFI, SFI
+ # 10GBASE-KR, 40GBASE-KR4, XFI, SFI
- 10gbase-kr
+ - 40gbase-kr4
- usxgmii
phy-mode:
diff --git a/Documentation/devicetree/bindings/net/ethernet-phy.yaml b/Documentation/devicetree/bindings/net/ethernet-phy.yaml
index 8927941..2fb377e 100644
--- a/Documentation/devicetree/bindings/net/ethernet-phy.yaml
+++ b/Documentation/devicetree/bindings/net/ethernet-phy.yaml
@@ -158,6 +158,42 @@ properties:
description:
Specifies a reference to a node representing a SFP cage.
+ eq-algorithm:
+ oneOf:
+ - const: fixed
+ description:
+ Backplane KR using fixed coefficients meaning no
+ equalization algorithm
+ - const: bee
+ description:
+ Backplane KR using 3-Taps Bit Edge Equalization (BEE)
+ algorithm
+ description:
+ Specifies the desired equalization algorithm to be used
+ by the KR link training
+
+ eq-init:
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ minItems: 3
+ maxItems: 3
+ description:
+ Triplet of KR coefficients. Specifies the initialization
+ values for standard KR equalization coefficients used by
+ the link training: pre-cursor, post-cursor, main-cursor
+
+ eq-params:
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ description:
+ Variable size array of KR parameters. Specifies the HW
+ specific parameters used by the link training
+
+ lane-handle:
+ $ref: /schemas/types.yaml#definitions/phandle
+ description:
+ Specifies a reference (or array of references) to a node
+ representing the desired SERDES lane (or lanes) used in
+ backplane mode
+
required:
- reg
@@ -180,3 +216,20 @@ examples:
reset-deassert-us = <2000>;
};
};
+ - |
+ /* Backplane configurations for specific setup */
+ &mdio9 {
+ bpphy6: ethernet-phy@0 {
+ compatible = "ethernet-phy-ieee802.3-c45";
+ reg = <0x0>;
+ lane-handle = <&lane_d>; /* use lane D */
+ eq-algorithm = "bee";
+ /* 10G Short cables setup: up to 30 cm cable */
+ eq-init = <0x2 0x5 0x29>;
+ eq-params = <0>;
+ };
+ };
+ &mac9 {
+ phy-connection-type = "10gbase-kr";
+ phy-handle = <&bpphy6>;
+ };
diff --git a/Documentation/devicetree/bindings/net/serdes.yaml b/Documentation/devicetree/bindings/net/serdes.yaml
new file mode 100644
index 0000000..965152f
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/serdes.yaml
@@ -0,0 +1,90 @@
+# SPDX-License-Identifier: GPL-2.0
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/net/serdes.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Serdes Module Binding
+
+maintainers:
+ - Florinel Iordache <florinel.iordache@nxp.com>
+
+properties:
+ $nodename:
+ pattern: "^serdes(@[a-f0-9]+)?$"
+
+ compatible:
+ oneOf:
+ - const: serdes-10g
+ description: SerDes module type of 10G
+ - const: serdes-28g
+ description: SerDes module type of 28G
+
+ reg:
+ description:
+ Registers memory map offset and size for this serdes module
+
+ reg-names:
+ description:
+ Names of the register map given in "reg" node.
+ Should be one of the following according to serdes type:
+ "serdes", "serdes-10g", "serdes-28g"
+
+ little-endian:
+ description:
+ Specifies the endianness of serdes module
+ For complete definition see:
+ Documentation/devicetree/bindings/common-properties.txt
+
+ #address-cells:
+ description: Must be <1>
+
+ #size-cells:
+ description: Must be <1>
+
+ ranges:
+ description:
+ Address range of serdes module.
+
+properties:
+ $nodename:
+ pattern: "^lane(@[a-f0-9]+)?$"
+
+ compatible:
+ oneOf:
+ - const: lane-10g
+ description: Lane part of a 10G SerDes module
+ - const: lane-28g
+ description: Lane part of a 28G SerDes module
+
+ reg:
+ description:
+ Registers memory map offset and size for this lane
+
+ reg-names:
+ description:
+ Names of the register map given in "reg" node.
+ Should be one of the following: "lane", "serdes-lane"
+
+examples:
+ - |
+ serdes1: serdes@1ea0000 {
+ compatible = "serdes-10g";
+ reg = <0x0 0x1ea0000 0 0x00002000>;
+ reg-names = "serdes", "serdes-10g";
+ little-endian;
+
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges = <0x0 0x00 0x1ea0000 0x00002000>;
+ lane_a: lane@800 {
+ compatible = "lane-10g";
+ reg = <0x800 0x40>;
+ reg-names = "lane", "serdes-lane";
+ };
+ lane_b: lane@840 {
+ compatible = "lane-10g";
+ reg = <0x840 0x40>;
+ reg-names = "lane", "serdes-lane";
+ };
+ };
--
1.9.1
next prev parent reply other threads:[~2020-03-26 13:52 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-26 13:51 [PATCH net-next 0/9] net: ethernet backplane support Florinel Iordache
2020-03-26 13:51 ` [PATCH net-next 1/9] doc: net: add backplane documentation Florinel Iordache
2020-03-26 13:51 ` Florinel Iordache [this message]
2020-03-27 1:04 ` [PATCH net-next 2/9] dt-bindings: net: add backplane dt bindings Andrew Lunn
2020-03-27 12:06 ` Russell King - ARM Linux admin
2020-03-27 15:00 ` [EXT] " Florinel Iordache
2020-03-27 15:28 ` Russell King - ARM Linux admin
2020-03-27 15:44 ` Andrew Lunn
2020-03-27 17:35 ` Russell King - ARM Linux admin
2020-03-30 5:43 ` Madalin Bucur (OSS)
2020-03-30 15:39 ` Rob Herring
2020-03-26 13:51 ` [PATCH net-next 3/9] net: phy: add kr phy connection type Florinel Iordache
2020-03-27 0:15 ` Andrew Lunn
2020-03-27 12:01 ` Russell King - ARM Linux admin
2020-03-27 12:12 ` Madalin Bucur (OSS)
2020-03-27 12:40 ` Russell King - ARM Linux admin
2020-03-29 8:22 ` [EXT] " Florinel Iordache
2020-03-29 9:01 ` Russell King - ARM Linux admin
2020-03-27 0:32 ` Florian Fainelli
2020-03-26 13:51 ` [PATCH net-next 4/9] net: fman: add kr support for dpaa1 mac Florinel Iordache
2020-03-26 13:51 ` [PATCH net-next 5/9] net: dpaa2: add kr support for dpaa2 mac Florinel Iordache
2020-03-26 13:51 ` [PATCH net-next 6/9] net: phy: add backplane kr driver support Florinel Iordache
2020-03-26 18:53 ` David Miller
2020-03-26 18:55 ` Joe Perches
2020-03-26 19:07 ` David Miller
2020-03-26 19:42 ` Joe Perches
2020-03-27 1:07 ` Andrew Lunn
2020-03-27 13:02 ` [EXT] " Florinel Iordache
2020-03-27 13:23 ` Andrew Lunn
2020-03-27 17:43 ` Florian Fainelli
2020-03-27 14:22 ` Andrew Lunn
2020-03-27 18:25 ` Joe Perches
2020-03-27 14:28 ` Andrew Lunn
2020-03-27 14:33 ` Andrew Lunn
2020-03-27 14:38 ` Andrew Lunn
2020-03-26 13:51 ` [PATCH net-next 7/9] net: phy: enable qoriq backplane support Florinel Iordache
2020-03-26 20:03 ` Joe Perches
2020-03-26 20:13 ` Andrew Lunn
2020-03-26 20:27 ` Joe Perches
2020-03-26 13:51 ` [PATCH net-next 8/9] net: phy: add bee algorithm for kr training Florinel Iordache
2020-03-26 13:51 ` [PATCH net-next 9/9] arm64: dts: add serdes and mdio description Florinel Iordache
2020-03-27 12:09 ` Russell King - ARM Linux admin
2020-03-27 19:18 [PATCH net-next 2/9] dt-bindings: net: add backplane dt bindings Ioana Ciornei
2020-03-27 19:49 ` Russell King - ARM Linux admin
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=1585230682-24417-3-git-send-email-florinel.iordache@nxp.com \
--to=florinel.iordache@nxp.com \
--cc=andrew@lunn.ch \
--cc=corbet@lwn.net \
--cc=davem@davemloft.net \
--cc=devicetree@vger.kernel.org \
--cc=f.fainelli@gmail.com \
--cc=hkallweit1@gmail.com \
--cc=ioana.ciornei@nxp.com \
--cc=kuba@kernel.org \
--cc=leoyang.li@nxp.com \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=madalin.bucur@oss.nxp.com \
--cc=mark.rutland@arm.com \
--cc=netdev@vger.kernel.org \
--cc=robh+dt@kernel.org \
--cc=shawnguo@kernel.org \
/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 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).