1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 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 Nodes 8 9maintainers: 10 - Frank Li <Frank.Li@nxp.com> 11 12description: | 13 QMan requires two contiguous range of physical memory used for the backing store 14 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 store 18 for BMan Free Buffer Proxy Records (FBPR). This memory is reserved/allocated as 19 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 to 27 1 GiB 28 - The alignment must be a muliptle of the memory size 29 30 The size of the FQD and PFDP must be chosen by observing the hardware features 31 configured via the Reset Configuration Word (RCW) and that are relevant to a 32 specific board (e.g. number of MAC(s) pinned-out, number of offline/host command 33 FMan ports, etc.). The size configured in the DT must reflect the hardware 34 capabilities and not the specific needs of an application 35 36 For additional details about reserved memory regions see 37 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-fqd 46 - fsl,qman-pfdr 47 - fsl,bman-fbpr 48 49required: 50 - compatible 51 52allOf: 53 - $ref: reserved-memory.yaml 54 55unevaluatedProperties: false 56 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