70 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/soc/fsl/fsl,qman-fqd.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: QMan Private Memory Nodes8 9maintainers:10 - Frank Li <Frank.Li@nxp.com>11 12description: |13 QMan requires two contiguous range of physical memory used for the backing store14 for QMan Frame Queue Descriptor (FQD) and Packed Frame Descriptor Record (PFDR).15 This memory is reserved/allocated as a node under the /reserved-memory node.16 17 BMan requires a contiguous range of physical memory used for the backing store18 for BMan Free Buffer Proxy Records (FBPR). This memory is reserved/allocated as19 a node under the /reserved-memory node.20 21 The QMan FQD memory node must be named "qman-fqd"22 The QMan PFDR memory node must be named "qman-pfdr"23 The BMan FBPR memory node must be named "bman-fbpr"24 25 The following constraints are relevant to the FQD and PFDR private memory:26 - The size must be 2^(size + 1), with size = 11..29. That is 4 KiB to27 1 GiB28 - The alignment must be a muliptle of the memory size29 30 The size of the FQD and PFDP must be chosen by observing the hardware features31 configured via the Reset Configuration Word (RCW) and that are relevant to a32 specific board (e.g. number of MAC(s) pinned-out, number of offline/host command33 FMan ports, etc.). The size configured in the DT must reflect the hardware34 capabilities and not the specific needs of an application35 36 For additional details about reserved memory regions see37 reserved-memory/reserved-memory.yaml in dtschema project.38 39properties:40 $nodename:41 pattern: '^(qman-fqd|qman-pfdr|bman-fbpr)+$'42 43 compatible:44 enum:45 - fsl,qman-fqd46 - fsl,qman-pfdr47 - fsl,bman-fbpr48 49required:50 - compatible51 52allOf:53 - $ref: reserved-memory.yaml54 55unevaluatedProperties: false56 57examples:58 - |59 reserved-memory {60 #address-cells = <2>;61 #size-cells = <2>;62 63 qman-fqd {64 compatible = "shared-dma-pool";65 size = <0 0x400000>;66 alignment = <0 0x400000>;67 no-map;68 };69 };70