Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d2101078 authored by Roy Pledge's avatar Roy Pledge Committed by Li Yang
Browse files

dt-bindings: soc/fsl: Update reserved memory binding for QBMan



Updates the QMan and BMan device tree bindings for reserved memory
nodes. This makes the reserved memory allocation compatible with
the shared-dma-pool usage.

Signed-off-by: default avatarRoy Pledge <roy.pledge@nxp.com>
Acked-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarLi Yang <leoyang.li@nxp.com>
parent 07f86917
Loading
Loading
Loading
Loading
+7 −5
Original line number Diff line number Diff line
@@ -65,8 +65,8 @@ to the respective BMan instance
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
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"

@@ -75,7 +75,9 @@ PROPERTIES
- compatible
	Usage:		required
	Value type:	<stringlist>
	Definition:	Must inclide "fsl,bman-fbpr"
	Definition:	PPC platforms: Must include "fsl,bman-fbpr"
			ARM platforms: Must include "shared-dma-pool"
				       as well as the "no-map" property

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
@@ -100,10 +102,10 @@ The example below shows a BMan FBPR dynamic allocation memory node
		ranges;

		bman_fbpr: bman-fbpr {
			compatible = "fsl,bman-fbpr";
			alloc-ranges = <0 0 0x10 0>;
			compatible = "shared-mem-pool";
			size = <0 0x1000000>;
			alignment = <0 0x1000000>;
			no-map;
		};
	};

+19 −7
Original line number Diff line number Diff line
@@ -60,6 +60,12 @@ are located at offsets 0xbf8 and 0xbfc
	Value type:	<prop-encoded-array>
	Definition:	Reference input clock. Its frequency is half of the
			platform clock
- memory-regions
	Usage:		Required for ARM
	Value type:	<phandle array>
	Definition:	List of phandles referencing the QMan private memory
			nodes (described below). The qman-fqd node must be
			first followed by qman-pfdr node. Only used on ARM

Devices connected to a QMan instance via Direct Connect Portals (DCP) must link
to the respective QMan instance
@@ -74,7 +80,9 @@ QMan Private Memory Nodes

QMan requires two contiguous range of physical memory used for the backing store
for QMan Frame Queue Descriptor (FQD) and Packed Frame Descriptor Record (PFDR).
This memory is reserved/allocated as a nodes under the /reserved-memory node
This memory is reserved/allocated as a node under the /reserved-memory node.

For additional details about reserved memory regions see reserved-memory.txt

The QMan FQD memory node must be named "qman-fqd"

@@ -83,7 +91,9 @@ PROPERTIES
- compatible
	Usage:		required
	Value type:	<stringlist>
	Definition:	Must inclide "fsl,qman-fqd"
	Definition:	PPC platforms: Must include "fsl,qman-fqd"
			ARM platforms: Must include "shared-dma-pool"
				       as well as the "no-map" property

The QMan PFDR memory node must be named "qman-pfdr"

@@ -92,7 +102,9 @@ PROPERTIES
- compatible
	Usage:		required
	Value type:	<stringlist>
	Definition:	Must inclide "fsl,qman-pfdr"
	Definition:	PPC platforms: Must include "fsl,qman-pfdr"
			ARM platforms: Must include "shared-dma-pool"
				       as well as the "no-map" property

The following constraints are relevant to the FQD and PFDR private memory:
	- The size must be 2^(size + 1), with size = 11..29. That is 4 KiB to
@@ -117,16 +129,16 @@ The example below shows a QMan FQD and a PFDR dynamic allocation memory nodes
		ranges;

		qman_fqd: qman-fqd {
			compatible = "fsl,qman-fqd";
			alloc-ranges = <0 0 0x10 0>;
			compatible = "shared-dma-pool";
			size = <0 0x400000>;
			alignment = <0 0x400000>;
			no-map;
		};
		qman_pfdr: qman-pfdr {
			compatible = "fsl,qman-pfdr";
			alloc-ranges = <0 0 0x10 0>;
			compatible = "shared-dma-pool";
			size = <0 0x2000000>;
			alignment = <0 0x2000000>;
			no-map;
		};
	};