1*dc98a7b6SFlorian Fainelli# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
2*dc98a7b6SFlorian Fainelli%YAML 1.2
3*dc98a7b6SFlorian Fainelli---
4*dc98a7b6SFlorian Fainelli$id: http://devicetree.org/schemas/net/brcm,systemport.yaml#
5*dc98a7b6SFlorian Fainelli$schema: http://devicetree.org/meta-schemas/core.yaml#
6*dc98a7b6SFlorian Fainelli
7*dc98a7b6SFlorian Fainellititle: Broadcom BCM7xxx Ethernet Systemport Controller (SYSTEMPORT)
8*dc98a7b6SFlorian Fainelli
9*dc98a7b6SFlorian Fainellimaintainers:
10*dc98a7b6SFlorian Fainelli  - Florian Fainelli <f.fainelli@gmail.com>
11*dc98a7b6SFlorian Fainelli
12*dc98a7b6SFlorian Fainelliproperties:
13*dc98a7b6SFlorian Fainelli  compatible:
14*dc98a7b6SFlorian Fainelli    enum:
15*dc98a7b6SFlorian Fainelli      - brcm,systemport-v1.00
16*dc98a7b6SFlorian Fainelli      - brcm,systemportlite-v1.00
17*dc98a7b6SFlorian Fainelli      - brcm,systemport
18*dc98a7b6SFlorian Fainelli
19*dc98a7b6SFlorian Fainelli  reg:
20*dc98a7b6SFlorian Fainelli    maxItems: 1
21*dc98a7b6SFlorian Fainelli
22*dc98a7b6SFlorian Fainelli  interrupts:
23*dc98a7b6SFlorian Fainelli    minItems: 2
24*dc98a7b6SFlorian Fainelli    items:
25*dc98a7b6SFlorian Fainelli      - description: interrupt line for RX queues
26*dc98a7b6SFlorian Fainelli      - description: interrupt line for TX queues
27*dc98a7b6SFlorian Fainelli      - description: interrupt line for Wake-on-LAN
28*dc98a7b6SFlorian Fainelli
29*dc98a7b6SFlorian Fainelli  clocks:
30*dc98a7b6SFlorian Fainelli    items:
31*dc98a7b6SFlorian Fainelli      - description: main clock
32*dc98a7b6SFlorian Fainelli      - description: Wake-on-LAN clock
33*dc98a7b6SFlorian Fainelli
34*dc98a7b6SFlorian Fainelli  clock-names:
35*dc98a7b6SFlorian Fainelli    items:
36*dc98a7b6SFlorian Fainelli      - const: sw_sysport
37*dc98a7b6SFlorian Fainelli      - const: sw_sysportwol
38*dc98a7b6SFlorian Fainelli
39*dc98a7b6SFlorian Fainelli  systemport,num-tier2-arb:
40*dc98a7b6SFlorian Fainelli    $ref: /schemas/types.yaml#/definitions/uint32
41*dc98a7b6SFlorian Fainelli    description:
42*dc98a7b6SFlorian Fainelli      Number of tier 2 arbiters
43*dc98a7b6SFlorian Fainelli
44*dc98a7b6SFlorian Fainelli  systemport,num-tier1-arb:
45*dc98a7b6SFlorian Fainelli    $ref: /schemas/types.yaml#/definitions/uint32
46*dc98a7b6SFlorian Fainelli    description:
47*dc98a7b6SFlorian Fainelli      Number of tier 2 arbiters
48*dc98a7b6SFlorian Fainelli
49*dc98a7b6SFlorian Fainelli  systemport,num-txq:
50*dc98a7b6SFlorian Fainelli    $ref: /schemas/types.yaml#/definitions/uint32
51*dc98a7b6SFlorian Fainelli    minimum: 1
52*dc98a7b6SFlorian Fainelli    maximum: 32
53*dc98a7b6SFlorian Fainelli    description:
54*dc98a7b6SFlorian Fainelli      Number of HW transmit queues
55*dc98a7b6SFlorian Fainelli
56*dc98a7b6SFlorian Fainelli  systemport,num-rxq:
57*dc98a7b6SFlorian Fainelli    $ref: /schemas/types.yaml#/definitions/uint32
58*dc98a7b6SFlorian Fainelli    minimum: 1
59*dc98a7b6SFlorian Fainelli    maximum: 32
60*dc98a7b6SFlorian Fainelli    description:
61*dc98a7b6SFlorian Fainelli      Number of HW receive queues
62*dc98a7b6SFlorian Fainelli
63*dc98a7b6SFlorian Fainellirequired:
64*dc98a7b6SFlorian Fainelli  - reg
65*dc98a7b6SFlorian Fainelli  - interrupts
66*dc98a7b6SFlorian Fainelli  - phy-mode
67*dc98a7b6SFlorian Fainelli
68*dc98a7b6SFlorian FainelliallOf:
69*dc98a7b6SFlorian Fainelli  - $ref: "ethernet-controller.yaml#"
70*dc98a7b6SFlorian Fainelli
71*dc98a7b6SFlorian FainelliunevaluatedProperties: false
72*dc98a7b6SFlorian Fainelli
73*dc98a7b6SFlorian Fainelliexamples:
74*dc98a7b6SFlorian Fainelli  - |
75*dc98a7b6SFlorian Fainelli    ethernet@f04a0000 {
76*dc98a7b6SFlorian Fainelli        compatible = "brcm,systemport-v1.00";
77*dc98a7b6SFlorian Fainelli        reg = <0xf04a0000 0x4650>;
78*dc98a7b6SFlorian Fainelli        local-mac-address = [ 00 11 22 33 44 55 ];
79*dc98a7b6SFlorian Fainelli        phy-mode = "gmii";
80*dc98a7b6SFlorian Fainelli        interrupts = <0x0 0x16 0x0>,
81*dc98a7b6SFlorian Fainelli                     <0x0 0x17 0x0>;
82*dc98a7b6SFlorian Fainelli        fixed-link {
83*dc98a7b6SFlorian Fainelli            speed = <1000>;
84*dc98a7b6SFlorian Fainelli            full-duplex;
85*dc98a7b6SFlorian Fainelli        };
86*dc98a7b6SFlorian Fainelli    };
87