forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
159 lines
4.0 KiB
159 lines
4.0 KiB
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
|
%YAML 1.2 |
|
--- |
|
$id: http://devicetree.org/schemas/net/cdns,macb.yaml# |
|
$schema: http://devicetree.org/meta-schemas/core.yaml# |
|
|
|
title: Cadence MACB/GEM Ethernet controller |
|
|
|
maintainers: |
|
- Nicolas Ferre <[email protected]> |
|
- Claudiu Beznea <[email protected]> |
|
|
|
properties: |
|
compatible: |
|
oneOf: |
|
- items: |
|
- enum: |
|
- cdns,at91rm9200-emac # Atmel at91rm9200 SoC |
|
- const: cdns,emac # Generic |
|
|
|
- items: |
|
- enum: |
|
- cdns,zynq-gem # Xilinx Zynq-7xxx SoC |
|
- cdns,zynqmp-gem # Xilinx Zynq Ultrascale+ MPSoC |
|
- const: cdns,gem # Generic |
|
|
|
- items: |
|
- enum: |
|
- cdns,at91sam9260-macb # Atmel at91sam9 SoCs |
|
- cdns,sam9x60-macb # Microchip sam9x60 SoC |
|
- const: cdns,macb # Generic |
|
|
|
- items: |
|
- enum: |
|
- atmel,sama5d3-macb # 10/100Mbit IP on Atmel sama5d3 SoCs |
|
- enum: |
|
- cdns,at91sam9260-macb # Atmel at91sam9 SoCs. |
|
- const: cdns,macb # Generic |
|
|
|
- enum: |
|
- atmel,sama5d29-gem # GEM XL IP (10/100) on Atmel sama5d29 SoCs |
|
- atmel,sama5d2-gem # GEM IP (10/100) on Atmel sama5d2 SoCs |
|
- atmel,sama5d3-gem # Gigabit IP on Atmel sama5d3 SoCs |
|
- atmel,sama5d4-gem # GEM IP (10/100) on Atmel sama5d4 SoCs |
|
- cdns,at32ap7000-macb # Other 10/100 usage or use the generic form |
|
- cdns,np4-macb # NP4 SoC devices |
|
- microchip,sama7g5-emac # Microchip SAMA7G5 ethernet interface |
|
- microchip,sama7g5-gem # Microchip SAMA7G5 gigabit ethernet interface |
|
- sifive,fu540-c000-gem # SiFive FU540-C000 SoC |
|
- cdns,emac # Generic |
|
- cdns,gem # Generic |
|
- cdns,macb # Generic |
|
|
|
reg: |
|
minItems: 1 |
|
items: |
|
- description: Basic register set |
|
- description: GEMGXL Management block registers on SiFive FU540-C000 SoC |
|
|
|
interrupts: |
|
minItems: 1 |
|
maxItems: 8 |
|
description: One interrupt per available hardware queue |
|
|
|
clocks: |
|
minItems: 1 |
|
maxItems: 5 |
|
|
|
clock-names: |
|
minItems: 1 |
|
items: |
|
- enum: [ ether_clk, hclk, pclk ] |
|
- enum: [ hclk, pclk ] |
|
- const: tx_clk |
|
- enum: [ rx_clk, tsu_clk ] |
|
- const: tsu_clk |
|
|
|
local-mac-address: true |
|
|
|
phy-mode: true |
|
|
|
phy-handle: true |
|
|
|
fixed-link: true |
|
|
|
iommus: |
|
maxItems: 1 |
|
|
|
power-domains: |
|
maxItems: 1 |
|
|
|
'#address-cells': |
|
const: 1 |
|
|
|
'#size-cells': |
|
const: 0 |
|
|
|
mdio: |
|
type: object |
|
description: |
|
Node containing PHY children. If this node is not present, then PHYs will |
|
be direct children. |
|
|
|
patternProperties: |
|
"^ethernet-phy@[0-9a-f]$": |
|
type: object |
|
$ref: ethernet-phy.yaml# |
|
|
|
properties: |
|
reset-gpios: true |
|
|
|
magic-packet: |
|
description: |
|
Indicates that the hardware supports waking up via magic packet. |
|
|
|
unevaluatedProperties: false |
|
|
|
required: |
|
- compatible |
|
- reg |
|
- interrupts |
|
- clocks |
|
- clock-names |
|
- phy-mode |
|
|
|
allOf: |
|
- $ref: ethernet-controller.yaml# |
|
|
|
- if: |
|
not: |
|
properties: |
|
compatible: |
|
contains: |
|
const: sifive,fu540-c000-gem |
|
then: |
|
properties: |
|
reg: |
|
maxItems: 1 |
|
|
|
unevaluatedProperties: false |
|
|
|
examples: |
|
- | |
|
macb0: ethernet@fffc4000 { |
|
compatible = "cdns,at32ap7000-macb"; |
|
reg = <0xfffc4000 0x4000>; |
|
interrupts = <21>; |
|
phy-mode = "rmii"; |
|
local-mac-address = [3a 0e 03 04 05 06]; |
|
clock-names = "pclk", "hclk", "tx_clk"; |
|
clocks = <&clkc 30>, <&clkc 30>, <&clkc 13>; |
|
#address-cells = <1>; |
|
#size-cells = <0>; |
|
|
|
ethernet-phy@1 { |
|
reg = <0x1>; |
|
reset-gpios = <&pioE 6 1>; |
|
}; |
|
};
|
|
|