Re: [PATCH v2 1/2] dt-bindings: net: Add bindings for LiteETH
From: Rob Herring <robh@kernel.org>
Date: 2021-08-23 18:44:13
Also in:
linux-devicetree, lkml
On Fri, Aug 20, 2021 at 05:17:25PM +0930, Joel Stanley wrote:
quoted hunk ↗ jump to hunk
LiteETH is a small footprint and configurable Ethernet core for FPGA based system on chips. Signed-off-by: Joel Stanley <joel@jms.id.au> --- v2: - Fix dtschema check warning relating to registers - Add names to the registers to make it easier to distinguish which is what region - Add mdio description - Includ ethernet-controller parent description .../bindings/net/litex,liteeth.yaml | 79 +++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 Documentation/devicetree/bindings/net/litex,liteeth.yamldiff --git a/Documentation/devicetree/bindings/net/litex,liteeth.yaml b/Documentation/devicetree/bindings/net/litex,liteeth.yaml new file mode 100644 index 000000000000..30f8f8b0b657 --- /dev/null +++ b/Documentation/devicetree/bindings/net/litex,liteeth.yaml@@ -0,0 +1,79 @@ +# SPDX-License-Identifier: GPL-2.0-or-later OR BSD-2-Clause +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/net/litex,liteeth.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: LiteX LiteETH ethernet device + +maintainers: + - Joel Stanley <joel@jms.id.au> + +description: | + LiteETH is a small footprint and configurable Ethernet core for FPGA based + system on chips. + + The hardware source is Open Source and can be found on at + https://github.com/enjoy-digital/liteeth/. + +allOf: + - $ref: ethernet-controller.yaml# + +properties: + compatible: + const: litex,liteeth + + reg: + minItems: 3 + items: + - description: MAC registers + - description: MDIO registers + - description: Packet buffer + + reg-names: + minItems: 3
Need to define the names here.
+ + interrupts: + maxItems: 1 +
+ rx-fifo-depth: true + tx-fifo-depth: true
Needs a vendor prefix, type, description and constraints.
+ mac-address: true
+ local-mac-address: true
+ phy-handle: true
+
+ mdio:
+ $ref: mdio.yaml#
+
+required:
+ - compatible
+ - reg
+ - interrupts
+
+additionalProperties: false
+
+examples:
+ - |
+ mac: ethernet@8020000 {
+ compatible = "litex,liteeth";
+ reg = <0x8021000 0x100>,
+ <0x8020800 0x100>,
+ <0x8030000 0x2000>;
+ reg-names = "mac", "mdio", "buffer";
+ rx-fifo-depth = <1024>;
+ tx-fifo-depth = <1024>;
+ interrupts = <0x11 0x1>;
+ phy-handle = <ð_phy>;
+
+ mdio {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ eth_phy: ethernet-phy@0 {
+ reg = <0>;
+ };
+ };
+ };
+...
+
+# vim: set ts=2 sw=2 sts=2 tw=80 et cc=80 ft=yaml :
--
2.32.0