Documentation / devicetree / bindings / net / marvell,armada-380-neta-bm.yaml


Based on kernel version 6.17. Page generated on 2025-10-03 10:04 EST.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/marvell,armada-380-neta-bm.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Marvell Armada 380/XP Buffer Manager (BM)

maintainers:
  - Marcin Wojtas <marcin.s.wojtas@gmail.com>

description:
  In order to see how to hook the BM to a given ethernet port, please refer to
  Documentation/devicetree/bindings/net/marvell,armada-370-neta.yaml.

properties:
  compatible:
    const: marvell,armada-380-neta-bm

  reg:
    maxItems: 1

  clocks:
    maxItems: 1

  internal-mem:
    description: Phandle to internal SRAM region
    $ref: /schemas/types.yaml#/definitions/phandle

patternProperties:
  "^pool[0-3],capacity$":
    description:
      size of external buffer pointers' ring maintained in DRAM for pool 0-3
    $ref: /schemas/types.yaml#/definitions/uint32
    minimum: 128
    maximum: 16352
 
  "^pool[0-3],pkt-size$":
    description:
      maximum packet size for a short buffer pool entry (pool 0-3)
    $ref: /schemas/types.yaml#/definitions/uint32

required:
  - compatible
  - reg
  - clocks
  - internal-mem

additionalProperties: false

examples:
  - |
    bm@c8000 {
        compatible = "marvell,armada-380-neta-bm";
        reg = <0xc8000 0xac>;
        clocks = <&gateclk 13>;
        internal-mem = <&bm_bppi>;
        pool2,capacity = <4096>;
        pool1,pkt-size = <512>;
    };