xref: /linux/Documentation/devicetree/bindings/net/marvell,armada-380-neta-bm.yaml (revision 69f2970aad93758bea863432e49b564e0ba649ca)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/net/marvell,armada-380-neta-bm.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Marvell Armada 380/XP Buffer Manager (BM)
8
9maintainers:
10  - Marcin Wojtas <marcin.s.wojtas@gmail.com>
11
12description:
13  In order to see how to hook the BM to a given ethernet port, please refer to
14  Documentation/devicetree/bindings/net/marvell,armada-370-neta.yaml.
15
16properties:
17  compatible:
18    const: marvell,armada-380-neta-bm
19
20  reg:
21    maxItems: 1
22
23  clocks:
24    maxItems: 1
25
26  internal-mem:
27    description: Phandle to internal SRAM region
28    $ref: /schemas/types.yaml#/definitions/phandle
29
30patternProperties:
31  "^pool[0-3],capacity$":
32    description:
33      size of external buffer pointers' ring maintained in DRAM for pool 0-3
34    $ref: /schemas/types.yaml#/definitions/uint32
35    minimum: 128
36    maximum: 16352
37
38  "^pool[0-3],pkt-size$":
39    description:
40      maximum packet size for a short buffer pool entry (pool 0-3)
41    $ref: /schemas/types.yaml#/definitions/uint32
42
43required:
44  - compatible
45  - reg
46  - clocks
47  - internal-mem
48
49additionalProperties: false
50
51examples:
52  - |
53    bm@c8000 {
54        compatible = "marvell,armada-380-neta-bm";
55        reg = <0xc8000 0xac>;
56        clocks = <&gateclk 13>;
57        internal-mem = <&bm_bppi>;
58        pool2,capacity = <4096>;
59        pool1,pkt-size = <512>;
60    };
61