xref: /freebsd/sys/contrib/device-tree/Bindings/net/nxp,lpc1850-dwmac.yaml (revision 833e5d42ab135b0238e61c5b3c19b8619677cbfa)
1*833e5d42SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*833e5d42SEmmanuel Vadot%YAML 1.2
3*833e5d42SEmmanuel Vadot---
4*833e5d42SEmmanuel Vadot$id: http://devicetree.org/schemas/net/nxp,lpc1850-dwmac.yaml#
5*833e5d42SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*833e5d42SEmmanuel Vadot
7*833e5d42SEmmanuel Vadottitle: NXP LPC1850 GMAC ethernet controller
8*833e5d42SEmmanuel Vadot
9*833e5d42SEmmanuel Vadotmaintainers:
10*833e5d42SEmmanuel Vadot  - Frank Li <Frank.Li@nxp.com>
11*833e5d42SEmmanuel Vadot
12*833e5d42SEmmanuel Vadot# We need a select here so we don't match all nodes with 'snps,dwmac'
13*833e5d42SEmmanuel Vadotselect:
14*833e5d42SEmmanuel Vadot  properties:
15*833e5d42SEmmanuel Vadot    compatible:
16*833e5d42SEmmanuel Vadot      contains:
17*833e5d42SEmmanuel Vadot        enum:
18*833e5d42SEmmanuel Vadot          - nxp,lpc1850-dwmac
19*833e5d42SEmmanuel Vadot  required:
20*833e5d42SEmmanuel Vadot    - compatible
21*833e5d42SEmmanuel Vadot
22*833e5d42SEmmanuel Vadotproperties:
23*833e5d42SEmmanuel Vadot  compatible:
24*833e5d42SEmmanuel Vadot    items:
25*833e5d42SEmmanuel Vadot      - enum:
26*833e5d42SEmmanuel Vadot          - nxp,lpc1850-dwmac
27*833e5d42SEmmanuel Vadot      - const: snps,dwmac-3.611
28*833e5d42SEmmanuel Vadot      - const: snps,dwmac
29*833e5d42SEmmanuel Vadot
30*833e5d42SEmmanuel Vadot  reg:
31*833e5d42SEmmanuel Vadot    maxItems: 1
32*833e5d42SEmmanuel Vadot
33*833e5d42SEmmanuel Vadot  clocks:
34*833e5d42SEmmanuel Vadot    maxItems: 1
35*833e5d42SEmmanuel Vadot
36*833e5d42SEmmanuel Vadot  clock-names:
37*833e5d42SEmmanuel Vadot    items:
38*833e5d42SEmmanuel Vadot      - const: stmmaceth
39*833e5d42SEmmanuel Vadot
40*833e5d42SEmmanuel Vadot  interrupts:
41*833e5d42SEmmanuel Vadot    maxItems: 1
42*833e5d42SEmmanuel Vadot
43*833e5d42SEmmanuel Vadot  interrupt-names:
44*833e5d42SEmmanuel Vadot    items:
45*833e5d42SEmmanuel Vadot      - const: macirq
46*833e5d42SEmmanuel Vadot
47*833e5d42SEmmanuel Vadot  resets:
48*833e5d42SEmmanuel Vadot    maxItems: 1
49*833e5d42SEmmanuel Vadot
50*833e5d42SEmmanuel Vadot  reset-names:
51*833e5d42SEmmanuel Vadot    items:
52*833e5d42SEmmanuel Vadot      - const: stmmaceth
53*833e5d42SEmmanuel Vadot
54*833e5d42SEmmanuel Vadotrequired:
55*833e5d42SEmmanuel Vadot  - compatible
56*833e5d42SEmmanuel Vadot  - reg
57*833e5d42SEmmanuel Vadot  - clocks
58*833e5d42SEmmanuel Vadot  - clock-names
59*833e5d42SEmmanuel Vadot  - interrupts
60*833e5d42SEmmanuel Vadot  - interrupt-names
61*833e5d42SEmmanuel Vadot
62*833e5d42SEmmanuel VadotallOf:
63*833e5d42SEmmanuel Vadot  - $ref: snps,dwmac.yaml#
64*833e5d42SEmmanuel Vadot
65*833e5d42SEmmanuel VadotunevaluatedProperties: false
66*833e5d42SEmmanuel Vadot
67*833e5d42SEmmanuel Vadotexamples:
68*833e5d42SEmmanuel Vadot  - |
69*833e5d42SEmmanuel Vadot    #include <dt-bindings/clock/lpc18xx-ccu.h>
70*833e5d42SEmmanuel Vadot
71*833e5d42SEmmanuel Vadot    ethernet@40010000 {
72*833e5d42SEmmanuel Vadot        compatible = "nxp,lpc1850-dwmac", "snps,dwmac-3.611", "snps,dwmac";
73*833e5d42SEmmanuel Vadot        reg = <0x40010000 0x2000>;
74*833e5d42SEmmanuel Vadot        interrupts = <5>;
75*833e5d42SEmmanuel Vadot        interrupt-names = "macirq";
76*833e5d42SEmmanuel Vadot        clocks = <&ccu1 CLK_CPU_ETHERNET>;
77*833e5d42SEmmanuel Vadot        clock-names = "stmmaceth";
78*833e5d42SEmmanuel Vadot        resets = <&rgu 22>;
79*833e5d42SEmmanuel Vadot        reset-names = "stmmaceth";
80*833e5d42SEmmanuel Vadot        rx-fifo-depth = <256>;
81*833e5d42SEmmanuel Vadot        tx-fifo-depth = <256>;
82*833e5d42SEmmanuel Vadot        snps,pbl = <4>;
83*833e5d42SEmmanuel Vadot        snps,force_thresh_dma_mode;
84*833e5d42SEmmanuel Vadot        phy-mode = "rgmii-id";
85*833e5d42SEmmanuel Vadot    };
86