Work is currently being done to add the phy-ocelot-serdes driver to a
non-syscon configuration. Doing so will require updates to the
documentation.
I can certainly wait until that change set to submit this, but I feel
sooner is better than later for Documentation format updates. Also,
those updates likely won't be ready before this next merge window.
The only liberty I took was adding Alexandre and UNGLinuxDriver as the
maintainers, otherwise the content should be the same.
v1 -> v2:
* Implemented changes from Krzysztof - see patch for details
Colin Foster (1):
dt-bindings: phy: ocelot-serdes: convert to YAML
.../bindings/phy/mscc,vsc7514-serdes.yaml | 56 +++++++++++++++++++
.../bindings/phy/phy-ocelot-serdes.txt | 43 --------------
MAINTAINERS | 1 +
3 files changed, 57 insertions(+), 43 deletions(-)
create mode 100644 Documentation/devicetree/bindings/phy/mscc,vsc7514-serdes.yaml
delete mode 100644 Documentation/devicetree/bindings/phy/phy-ocelot-serdes.txt
--
2.25.1
Convert the phy-ocelot-serdes device tree binding to the new YAML format.
Additionally, add the file to MAINTAINERS since the original file didn't
exist.
Signed-off-by: Colin Foster <[email protected]>
---
v1 -> v2:
* new yaml file is now named mscc,vsc7514-serdes.yaml
* examlpes != examples
* remove "driver" name from the binding
* remove ethernet port consumer from the example
* add additionalProperties: false
* remove unnecessary, obvious sentence in the description
---
.../bindings/phy/mscc,vsc7514-serdes.yaml | 56 +++++++++++++++++++
.../bindings/phy/phy-ocelot-serdes.txt | 43 --------------
MAINTAINERS | 1 +
3 files changed, 57 insertions(+), 43 deletions(-)
create mode 100644 Documentation/devicetree/bindings/phy/mscc,vsc7514-serdes.yaml
delete mode 100644 Documentation/devicetree/bindings/phy/phy-ocelot-serdes.txt
diff --git a/Documentation/devicetree/bindings/phy/mscc,vsc7514-serdes.yaml b/Documentation/devicetree/bindings/phy/mscc,vsc7514-serdes.yaml
new file mode 100644
index 000000000000..3169b873231e
--- /dev/null
+++ b/Documentation/devicetree/bindings/phy/mscc,vsc7514-serdes.yaml
@@ -0,0 +1,56 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/phy/mscc,vsc7514-serdes.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Microsemi Ocelot SerDes muxing
+
+maintainers:
+ - Alexandre Belloni <[email protected]>
+ - [email protected]
+
+description: |
+ On Microsemi Ocelot, there is a handful of registers in HSIO address
+ space for setting up the SerDes to switch port muxing.
+
+ A SerDes X can be "muxed" to work with switch port Y or Z for example.
+ One specific SerDes can also be used as a PCIe interface.
+
+ Hence, a SerDes represents an interface, be it an Ethernet or a PCIe one.
+
+ There are two kinds of SerDes: SERDES1G supports 10/100Mbps in
+ half/full-duplex and 1000Mbps in full-duplex mode while SERDES6G supports
+ 10/100Mbps in half/full-duplex and 1000/2500Mbps in full-duplex mode.
+
+ Also, SERDES6G number (aka "macro") 0 is the only interface supporting
+ QSGMII.
+
+ This is a child of the HSIO syscon ("mscc,ocelot-hsio", see
+ Documentation/devicetree/bindings/mips/mscc.txt) on the Microsemi Ocelot.
+
+properties:
+ compatible:
+ enum:
+ - mscc,vsc7514-serdes
+
+ "#phy-cells":
+ const: 2
+ description: |
+ The first number defines the input port to use for a given SerDes macro.
+ The second defines the macro to use. They are defined in
+ dt-bindings/phy/phy-ocelot-serdes.h
+
+required:
+ - compatible
+ - "#phy-cells"
+
+additionalProperties:
+ false
+
+examples:
+ - |
+ serdes: serdes {
+ compatible = "mscc,vsc7514-serdes";
+ #phy-cells = <2>;
+ };
diff --git a/Documentation/devicetree/bindings/phy/phy-ocelot-serdes.txt b/Documentation/devicetree/bindings/phy/phy-ocelot-serdes.txt
deleted file mode 100644
index 332219860187..000000000000
--- a/Documentation/devicetree/bindings/phy/phy-ocelot-serdes.txt
+++ /dev/null
@@ -1,43 +0,0 @@
-Microsemi Ocelot SerDes muxing driver
--------------------------------------
-
-On Microsemi Ocelot, there is a handful of registers in HSIO address
-space for setting up the SerDes to switch port muxing.
-
-A SerDes X can be "muxed" to work with switch port Y or Z for example.
-One specific SerDes can also be used as a PCIe interface.
-
-Hence, a SerDes represents an interface, be it an Ethernet or a PCIe one.
-
-There are two kinds of SerDes: SERDES1G supports 10/100Mbps in
-half/full-duplex and 1000Mbps in full-duplex mode while SERDES6G supports
-10/100Mbps in half/full-duplex and 1000/2500Mbps in full-duplex mode.
-
-Also, SERDES6G number (aka "macro") 0 is the only interface supporting
-QSGMII.
-
-This is a child of the HSIO syscon ("mscc,ocelot-hsio", see
-Documentation/devicetree/bindings/mips/mscc.txt) on the Microsemi Ocelot.
-
-Required properties:
-
-- compatible: should be "mscc,vsc7514-serdes"
-- #phy-cells : from the generic phy bindings, must be 2.
- The first number defines the input port to use for a given
- SerDes macro. The second defines the macro to use. They are
- defined in dt-bindings/phy/phy-ocelot-serdes.h
-
-Example:
-
- serdes: serdes {
- compatible = "mscc,vsc7514-serdes";
- #phy-cells = <2>;
- };
-
- ethernet {
- port1 {
- phy-handle = <&phy_foo>;
- /* Link SERDES1G_5 to port1 */
- phys = <&serdes 1 SERDES1G_5>;
- };
- };
diff --git a/MAINTAINERS b/MAINTAINERS
index 6705fb8bfd3a..806aba01e0bc 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -13493,6 +13493,7 @@ M: [email protected]
L: [email protected]
S: Supported
F: Documentation/devicetree/bindings/mips/mscc.txt
+F: Documentation/devicetree/bindings/phy/mscc,vsc7514-serdes.yaml
F: Documentation/devicetree/bindings/power/reset/ocelot-reset.txt
F: arch/mips/boot/dts/mscc/
F: arch/mips/configs/generic/board-ocelot.config
--
2.25.1
On Sun, 11 Sep 2022 09:37:15 -0700, Colin Foster wrote:
> Convert the phy-ocelot-serdes device tree binding to the new YAML format.
>
> Additionally, add the file to MAINTAINERS since the original file didn't
> exist.
>
> Signed-off-by: Colin Foster <[email protected]>
> ---
>
> v1 -> v2:
> * new yaml file is now named mscc,vsc7514-serdes.yaml
> * examlpes != examples
> * remove "driver" name from the binding
> * remove ethernet port consumer from the example
> * add additionalProperties: false
> * remove unnecessary, obvious sentence in the description
>
> ---
> .../bindings/phy/mscc,vsc7514-serdes.yaml | 56 +++++++++++++++++++
> .../bindings/phy/phy-ocelot-serdes.txt | 43 --------------
> MAINTAINERS | 1 +
> 3 files changed, 57 insertions(+), 43 deletions(-)
> create mode 100644 Documentation/devicetree/bindings/phy/mscc,vsc7514-serdes.yaml
> delete mode 100644 Documentation/devicetree/bindings/phy/phy-ocelot-serdes.txt
>
Reviewed-by: Rob Herring <[email protected]>
On Tue, Sep 13, 2022 at 10:10:24PM +0530, Vinod Koul wrote:
> On 11-09-22, 09:37, Colin Foster wrote:
> > Convert the phy-ocelot-serdes device tree binding to the new YAML format.
> >
> > Additionally, add the file to MAINTAINERS since the original file didn't
> > exist.
>
> Applied, thanks
Hi Vinod,
I'll be adding to this document in an upcoming net-next patch set. What
would I need from you so that I can ask the netdev maintainers to bring
this in?
Thanks, and thanks Vladimir for getting this done so quickly!
>
> --
> ~Vinod
On Tue, Sep 13, 2022 at 10:10:24PM +0530, Vinod Koul wrote:
> On 11-09-22, 09:37, Colin Foster wrote:
> > Convert the phy-ocelot-serdes device tree binding to the new YAML format.
> >
> > Additionally, add the file to MAINTAINERS since the original file didn't
> > exist.
>
Oops,
Disregard my last email. I was confused about which patch this was - no
need to bring this into net-next.
> Applied, thanks
>
> --
> ~Vinod
On 11-09-22, 09:37, Colin Foster wrote:
> Convert the phy-ocelot-serdes device tree binding to the new YAML format.
>
> Additionally, add the file to MAINTAINERS since the original file didn't
> exist.
Applied, thanks
--
~Vinod