1QorIQ DPAA Buffer Manager Device Tree Bindings 2 3Copyright (C) 2008 - 2014 Freescale Semiconductor Inc. 4 5CONTENTS 6 7 - BMan Node 8 - BMan Private Memory Node 9 - Example 10 11BMan Node 12 13The Buffer Manager is part of the Data-Path Acceleration Architecture (DPAA). 14BMan supports hardware allocation and deallocation of buffers belonging to pools 15originally created by software with configurable depletion thresholds. This 16binding covers the CCSR space programming model 17 18PROPERTIES 19 20- compatible 21 Usage: Required 22 Value type: <stringlist> 23 Definition: Must include "fsl,bman" 24 May include "fsl,<SoC>-bman" 25 26- reg 27 Usage: Required 28 Value type: <prop-encoded-array> 29 Definition: Registers region within the CCSR address space 30 31The BMan revision information is located in the BMAN_IP_REV_1/2 registers which 32are located at offsets 0xbf8 and 0xbfc 33 34- interrupts 35 Usage: Required 36 Value type: <prop-encoded-array> 37 Definition: Standard property. The error interrupt 38 39- fsl,liodn 40 Usage: See pamu.txt 41 Value type: <prop-encoded-array> 42 Definition: PAMU property used for static LIODN assignment 43 44- fsl,iommu-parent 45 Usage: See pamu.txt 46 Value type: <phandle> 47 Definition: PAMU property used for dynamic LIODN assignment 48 49 For additional details about the PAMU/LIODN binding(s) see pamu.txt 50 51Devices connected to a BMan instance via Direct Connect Portals (DCP) must link 52to the respective BMan instance 53 54- fsl,bman 55 Usage: Required 56 Value type: <prop-encoded-array> 57 Description: List of phandle and DCP index pairs, to the BMan instance 58 to which this device is connected via the DCP 59 60BMan Private Memory Node 61 62BMan requires a contiguous range of physical memory used for the backing store 63for BMan Free Buffer Proxy Records (FBPR). This memory is reserved/allocated as a 64node under the /reserved-memory node 65 66The BMan FBPR memory node must be named "bman-fbpr" 67 68PROPERTIES 69 70- compatible 71 Usage: required 72 Value type: <stringlist> 73 Definition: Must inclide "fsl,bman-fbpr" 74 75The following constraints are relevant to the FBPR private memory: 76 - The size must be 2^(size + 1), with size = 11..33. That is 4 KiB to 77 16 GiB 78 - The alignment must be a muliptle of the memory size 79 80The size of the FBPR must be chosen by observing the hardware features configured 81via the Reset Configuration Word (RCW) and that are relevant to a specific board 82(e.g. number of MAC(s) pinned-out, number of offline/host command FMan ports, 83etc.). The size configured in the DT must reflect the hardware capabilities and 84not the specific needs of an application 85 86For additional details about reserved memory regions see reserved-memory.txt 87 88EXAMPLE 89 90The example below shows a BMan FBPR dynamic allocation memory node 91 92 reserved-memory { 93 #address-cells = <2>; 94 #size-cells = <2>; 95 ranges; 96 97 bman_fbpr: bman-fbpr { 98 compatible = "fsl,bman-fbpr"; 99 alloc-ranges = <0 0 0xf 0xffffffff>; 100 size = <0 0x1000000>; 101 alignment = <0 0x1000000>; 102 }; 103 }; 104 105The example below shows a (P4080) BMan CCSR-space node 106 107 crypto@300000 { 108 ... 109 fsl,bman = <&bman, 2>; 110 ... 111 }; 112 113 bman: bman@31a000 { 114 compatible = "fsl,bman"; 115 reg = <0x31a000 0x1000>; 116 interrupts = <16 2 1 2>; 117 fsl,liodn = <0x17>; 118 memory-region = <&bman_fbpr>; 119 }; 120 121 fman@400000 { 122 ... 123 fsl,bman = <&bman, 0>; 124 ... 125 }; 126