123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136 |
- QorIQ DPAA Buffer Manager Device Tree Bindings
- Copyright (C) 2008 - 2014 Freescale Semiconductor Inc.
- CONTENTS
- - BMan Node
- - BMan Private Memory Node
- - Example
- BMan Node
- The Buffer Manager is part of the Data-Path Acceleration Architecture (DPAA).
- BMan supports hardware allocation and deallocation of buffers belonging to pools
- originally created by software with configurable depletion thresholds. This
- binding covers the CCSR space programming model
- PROPERTIES
- - compatible
- Usage: Required
- Value type: <stringlist>
- Definition: Must include "fsl,bman"
- May include "fsl,<SoC>-bman"
- - reg
- Usage: Required
- Value type: <prop-encoded-array>
- Definition: Registers region within the CCSR address space
- The BMan revision information is located in the BMAN_IP_REV_1/2 registers which
- are located at offsets 0xbf8 and 0xbfc
- - interrupts
- Usage: Required
- Value type: <prop-encoded-array>
- Definition: Standard property. The error interrupt
- - fsl,bman-portals
- Usage: Required
- Value type: <phandle>
- Definition: Phandle to this BMan instance's portals
- - fsl,liodn
- Usage: See pamu.txt
- Value type: <prop-encoded-array>
- Definition: PAMU property used for static LIODN assignment
- - fsl,iommu-parent
- Usage: See pamu.txt
- Value type: <phandle>
- Definition: PAMU property used for dynamic LIODN assignment
- For additional details about the PAMU/LIODN binding(s) see pamu.txt
- Devices connected to a BMan instance via Direct Connect Portals (DCP) must link
- to the respective BMan instance
- - fsl,bman
- Usage: Required
- Value type: <prop-encoded-array>
- Description: List of phandle and DCP index pairs, to the BMan instance
- to which this device is connected via the DCP
- BMan Private Memory Node
- BMan requires a contiguous range of physical memory used for the backing store
- for BMan Free Buffer Proxy Records (FBPR). This memory is reserved/allocated as a
- node under the /reserved-memory node
- The BMan FBPR memory node must be named "bman-fbpr"
- PROPERTIES
- - compatible
- Usage: required
- Value type: <stringlist>
- Definition: Must inclide "fsl,bman-fbpr"
- The following constraints are relevant to the FBPR private memory:
- - The size must be 2^(size + 1), with size = 11..33. That is 4 KiB to
- 16 GiB
- - The alignment must be a muliptle of the memory size
- The size of the FBPR must be chosen by observing the hardware features configured
- via the Reset Configuration Word (RCW) and that are relevant to a specific board
- (e.g. number of MAC(s) pinned-out, number of offline/host command FMan ports,
- etc.). The size configured in the DT must reflect the hardware capabilities and
- not the specific needs of an application
- For additional details about reserved memory regions see reserved-memory.txt
- EXAMPLE
- The example below shows a BMan FBPR dynamic allocation memory node
- reserved-memory {
- #address-cells = <2>;
- #size-cells = <2>;
- ranges;
- bman_fbpr: bman-fbpr {
- compatible = "fsl,bman-fbpr";
- alloc-ranges = <0 0 0x10 0>;
- size = <0 0x1000000>;
- alignment = <0 0x1000000>;
- };
- };
- The example below shows a (P4080) BMan CCSR-space node
- bportals: bman-portals@ff4000000 {
- ...
- };
- crypto@300000 {
- ...
- fsl,bman = <&bman, 2>;
- ...
- };
- bman: bman@31a000 {
- compatible = "fsl,bman";
- reg = <0x31a000 0x1000>;
- interrupts = <16 2 1 2>;
- fsl,liodn = <0x17>;
- fsl,bman-portals = <&bportals>;
- memory-region = <&bman_fbpr>;
- };
- fman@400000 {
- ...
- fsl,bman = <&bman, 0>;
- ...
- };
|