99 lines
2.0 KiB
YAML
99 lines
2.0 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#
|
||
|
|
||
|
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 :
|