The schemas for MDIO bus nodes range from missing to duplicating everything in mdio.yaml. The MDIO bus node schemas only need to reference mdio.yaml, define any binding specific properties, and define 'unevaluatedProperties: false'. This ensures that MDIO nodes only contain defined properties. With this, any duplicated properties can be removed. Cc: "David S. Miller" <davem@davemloft.net> Cc: Jakub Kicinski <kuba@kernel.org> Cc: Maxime Ripard <mripard@kernel.org> Cc: Chen-Yu Tsai <wens@csie.org> Cc: Vivien Didelot <vivien.didelot@gmail.com> Cc: Florian Fainelli <f.fainelli@gmail.com> Cc: Vladimir Oltean <olteanv@gmail.com> Cc: Joakim Zhang <qiangqing.zhang@nxp.com> Cc: Heiner Kallweit <hkallweit1@gmail.com> Cc: Russell King <linux@armlinux.org.uk> Cc: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> Cc: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@toshiba.co.jp> Cc: Cristian Ciocaltea <cristian.ciocaltea@gmail.com> Cc: "Fernández Rojas" <noltari@gmail.com> Cc: John Crispin <john@phrozen.org> Cc: "G. Jaya Kumaran" <vineetha.g.jaya.kumaran@intel.com> Cc: Linus Walleij <linus.walleij@linaro.org> Cc: Joel Stanley <joel@jms.id.au> Cc: Bartosz Golaszewski <bgolaszewski@baylibre.com> Cc: Oleksij Rempel <o.rempel@pengutronix.de> Cc: Alexandre Torgue <alexandre.torgue@foss.st.com> Cc: Giuseppe Cavallaro <peppe.cavallaro@st.com> Cc: Jose Abreu <joabreu@synopsys.com> Cc: netdev@vger.kernel.org Signed-off-by: Rob Herring <robh@kernel.org> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Link: https://lore.kernel.org/r/20220105151009.3093506-1-robh@kernel.org
100 lines
2.1 KiB
YAML
100 lines
2.1 KiB
YAML
# 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:
|
|
items:
|
|
- description: MAC registers
|
|
- description: MDIO registers
|
|
- description: Packet buffer
|
|
|
|
reg-names:
|
|
items:
|
|
- const: mac
|
|
- const: mdio
|
|
- const: buffer
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
litex,rx-slots:
|
|
description: Number of slots in the receive buffer
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
minimum: 1
|
|
default: 2
|
|
|
|
litex,tx-slots:
|
|
description: Number of slots in the transmit buffer
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
minimum: 1
|
|
default: 2
|
|
|
|
litex,slot-size:
|
|
description: Size in bytes of a slot in the tx/rx buffer
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
minimum: 0x800
|
|
default: 0x800
|
|
|
|
mac-address: true
|
|
local-mac-address: true
|
|
phy-handle: true
|
|
|
|
mdio:
|
|
$ref: mdio.yaml#
|
|
unevaluatedProperties: false
|
|
|
|
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";
|
|
litex,rx-slots = <2>;
|
|
litex,tx-slots = <2>;
|
|
litex,slot-size = <0x800>;
|
|
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 :
|