[PATCH 1/4] dt-bindings: net: Add bindings for onsemi NCN26000 PHY

From: Jay Monkman
Date: Mon Sep 18 2023 - 03:10:10 EST



Add devicetree bindings for onsemi's NCN26000 10BASE-T1S PHY.

Signed-off-by: Jay Monkman <jtm@xxxxxxxxxxxxx>
---
.../bindings/net/onnn,ncn26000.yaml | 177 ++++++++++++++++++
1 file changed, 177 insertions(+)
create mode 100644 Documentation/devicetree/bindings/net/onnn,ncn26000.yaml

diff --git a/Documentation/devicetree/bindings/net/onnn,ncn26000.yaml b/Documentation/devicetree/bindings/net/onnn,ncn26000.yaml
new file mode 100644
index 000000000000..b0b1e1ea86f2
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/onnn,ncn26000.yaml
@@ -0,0 +1,177 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/net/onnn,ncn26000.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: onsemi NCN26000 10BASE-T1S Ethernet PHY
+
+maintainers:
+ - Jay Monkman <jtm@xxxxxxxxxxxxx>
+
+description: |
+ Bindings for onsemi NCN26000 10BASE-T1S ethernet PHY.
+
+allOf:
+ - $ref: ethernet-phy.yaml#
+
+properties:
+ description: |
+ Sets the transmitter amplitude gain. If not specified,
+ gain is set to 1.0V (1v0)
+ tx-gain:
+ enum:
+ - 1v1
+ - 1v0
+ - 0v9
+ - 0v8
+
+ tx-slew:
+ description: |
+ Sets the slew rate of the TX line driver output. Defaults
+ to slow if not set.
+ enum:
+ - fast
+ - slow
+
+ dig-slew:
+ description: |
+ Sets the slew rate of the digital output pins. Defaults
+ to slow if not set.
+ enum:
+ - fast
+ - slow
+
+ cmc-comp:
+ description: |
+ Sets the common mode choke resistance (CMC compensation).
+ Defaults to 0-0.5 ohm (0p25) if not set.
+ enum:
+ - 0p25
+ - 1p38
+ - 3p00
+ - 3p37
+
+ plca-precedence:
+ description: |
+ Enables PLCA precedence mode. Defaults to off if not
+ set.
+ type: boolean
+
+ eni-mode:
+ description: |
+ Enables Enhanced Noise Immunity mode. Defaults to off if
+ not set.
+ enum:
+ - force-on
+ - force-off
+ - auto
+
+ tx-pkt-loop:
+ description: |
+ Enables packet loopback mode. Defaults to off is not set.
+ type: boolean
+
+ unjab-tmr-disable:
+ description: |
+ Disables the Unjab Timer. When disabled, device transmission
+ will be stopped due to a jabber error and only restarted on
+ device reset. If not set, this defaults to enabled.
+ type: boolean
+
+ col-disable:
+ description: |
+ Disables collision masking. Defaults to enabled if not set.
+ type: boolean
+
+ no-rx-delay:
+ description: |
+ Disables the RX internal path delay. Defaults to enabled if
+ not set.
+ type: boolean
+
+ dio0-fn:
+ description: |
+ Selects the DIO0 pin output function. Defaults to disabled if
+ not set.
+ enum:
+ - sfd-tx
+ - sfd-rx
+ - sfd-rxtx
+ - led-link
+ - led-plca
+ - led-tx
+ - led-rx
+ - led-rxtx
+ - clk25m
+
+ dio0-pullup:
+ description: |
+ Enables the DIO0 pin pullup. Defaults to no pull up if not
+ set.
+ type: boolean
+
+ dio0-active-high:
+ description: |
+ Sets DIO0 pin output state. Defaults to low if not set
+ type: boolean
+
+ dio0-slew:
+ description: |
+ Sets the slew rate of the DIO0 pin. Defaults to slow if not set.
+ enum:
+ - fast
+ - slow
+
+ dio1-fn:
+ description: |
+ Selects the DIO1 pin output function. Defaults to disabled if
+ not set.
+ enum:
+ - sfd-tx
+ - sfd-rx
+ - sfd-rxtx
+ - led-link
+ - led-plca
+ - led-tx
+ - led-rx
+ - led-rxtx
+ - clk25m
+
+ dio1-pullup:
+ description: |
+ Enables the DIO1 pin pullup. Defaults to no pull up if not
+ set.
+ type: boolean
+
+ dio1-active-high:
+ description: |
+ Sets DIO1 pin output state. Defaults to low if not set
+ type: boolean
+
+ dio1-slew:
+ description: |
+ Sets the slew rate of the DIO1 pin. Defaults to slow if not set.
+ enum:
+ - fast
+ - slow
+
+additionalProperties: false
+
+examples:
+ - |
+ spi {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ ephy0: ethernet-phy@0 {
+ compatible = "ethernet-phy-ieee802.3-c22";
+ reg = <0>;
+ dio0-fn = "gpio";
+ dio0-slew = "slow";
+ dio1-fn = "gpio";
+ dio1-slew = "slow";
+ eni-enable;
+ device_type = "ethernet-phy";
+ };
+ };
--
2.40.1