blob: 4fdc5328826cf178968a2208aaabc1e05b3a2b55 [file] [log] [blame]
Tom Rini53633a82024-02-29 12:33:36 -05001# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
2# Copyright 2018 Linaro Ltd.
3%YAML 1.2
4---
5$id: http://devicetree.org/schemas/net/intel,ixp4xx-ethernet.yaml#
6$schema: http://devicetree.org/meta-schemas/core.yaml#
7
8title: Intel IXP4xx ethernet
9
10allOf:
11 - $ref: ethernet-controller.yaml#
12
13maintainers:
14 - Linus Walleij <linus.walleij@linaro.org>
15
16description: |
17 The Intel IXP4xx ethernet makes use of the IXP4xx NPE (Network
18 Processing Engine) and the IXP4xx Queue Manager to process
19 the ethernet frames. It can optionally contain an MDIO bus to
20 talk to PHYs.
21
22properties:
23 compatible:
24 const: intel,ixp4xx-ethernet
25
26 reg:
27 maxItems: 1
28 description: Ethernet MMIO address range
29
30 queue-rx:
31 $ref: /schemas/types.yaml#/definitions/phandle-array
32 items:
33 - items:
34 - description: phandle to the RX queue node
35 - description: RX queue instance to use
36 description: phandle to the RX queue on the NPE
37
38 queue-txready:
39 $ref: /schemas/types.yaml#/definitions/phandle-array
40 items:
41 - items:
42 - description: phandle to the TX READY queue node
43 - description: TX READY queue instance to use
44 description: phandle to the TX READY queue on the NPE
45
46 phy-mode: true
47
48 phy-handle: true
49
50 intel,npe-handle:
51 $ref: /schemas/types.yaml#/definitions/phandle-array
52 items:
53 - items:
54 - description: phandle to the NPE this ethernet instance is using
55 - description: the NPE instance to use
56 description: phandle to the NPE this ethernet instance is using
57 and the instance to use in the second cell
58
59 mdio:
60 $ref: mdio.yaml#
61 unevaluatedProperties: false
62 description: optional node for embedded MDIO controller
63
64required:
65 - compatible
66 - reg
67 - queue-rx
68 - queue-txready
69 - intel,npe-handle
70
71additionalProperties: false
72
73examples:
74 - |
75 npe: npe@c8006000 {
76 compatible = "intel,ixp4xx-network-processing-engine";
77 reg = <0xc8006000 0x1000>, <0xc8007000 0x1000>, <0xc8008000 0x1000>;
78 };
79
80 ethernet@c8009000 {
81 compatible = "intel,ixp4xx-ethernet";
82 reg = <0xc8009000 0x1000>;
83 queue-rx = <&qmgr 4>;
84 queue-txready = <&qmgr 21>;
85 intel,npe-handle = <&npe 1>;
86 phy-mode = "rgmii";
87 phy-handle = <&phy1>;
88 };
89
90 ethernet@c800c000 {
91 compatible = "intel,ixp4xx-ethernet";
92 reg = <0xc800c000 0x1000>;
93 queue-rx = <&qmgr 3>;
94 queue-txready = <&qmgr 20>;
95 intel,npe-handle = <&npe 2>;
96 phy-mode = "rgmii";
97 phy-handle = <&phy2>;
98
99 mdio {
100 #address-cells = <1>;
101 #size-cells = <0>;
102 phy1: ethernet-phy@1 {
103 reg = <1>;
104 };
105 phy2: ethernet-phy@2 {
106 reg = <2>;
107 };
108 };
109 };