summaryrefslogtreecommitdiff
path: root/Documentation
diff options
context:
space:
mode:
authorMinghuan Lian <Minghuan.Lian@freescale.com>2013-03-22 03:27:47 (GMT)
committerFleming Andrew-AFLEMING <AFLEMING@freescale.com>2013-03-27 22:16:01 (GMT)
commitbe8fc7307ac5bbb38531e489fe960e6c019fde5f (patch)
tree7a99969dec4140f0ed8e87a0d861097089bd4d2b /Documentation
parent7596754e8c919bc9b3686749c7ebabf8217953c4 (diff)
downloadlinux-fsl-qoriq-be8fc7307ac5bbb38531e489fe960e6c019fde5f.tar.xz
powerpc: Add OF platform binding doc for FSL RMAN device
Signed-off-by: Minghuan Lian <Minghuan.Lian@freescale.com> Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Change-Id: Ia146a201b2db716e8b7845624d76b02bbf07c08d Reviewed-on: http://git.am.freescale.net:8181/567 Reviewed-by: Phillips Kim-R1AAHA <Kim.Phillips@freescale.com> Reviewed-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com> Tested-by: Fleming Andrew-AFLEMING <AFLEMING@freescale.com>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/devicetree/bindings/powerpc/fsl/rman.txt178
1 files changed, 178 insertions, 0 deletions
diff --git a/Documentation/devicetree/bindings/powerpc/fsl/rman.txt b/Documentation/devicetree/bindings/powerpc/fsl/rman.txt
new file mode 100644
index 0000000..76a86fd
--- /dev/null
+++ b/Documentation/devicetree/bindings/powerpc/fsl/rman.txt
@@ -0,0 +1,178 @@
+=================================================================================
+Freescale RapidIO Message Manager Device Bindings
+Copyright 2013 Freescale Semiconductor Inc.
+
+CONTENTS
+ - RMan Node
+ - RMan Inbound Block Node
+ - RMan Global CFG Node
+ - Example
+
+NOTE: The bindings described in this document are preliminary and subject to
+change.
+
+=================================================================================
+RMan Node
+
+DESCRIPTION
+
+The RapidIO message manager (RMan) supports a message passing programming model
+for inter-processor and inter-device communication. Due to the fact RMan has
+multiple inbound blocks, the RMan node will have child nodes for each block.
+The RMan's revision information can be get from IPBRRO and IPBRR1 registers.
+
+PROPERTIES
+
+ - compatible
+ Usage: required
+ Value type: <string>
+ Definition: Must include "fsl,rman".
+ Definition: Must include "fsl,rman" for IP blocks with IP Block
+ Revision Register (SRIO IPBRR1) Major ID equal to 0x0a20.
+
+ Optionally, a compatiable string of "fsl,rman-vX.Y" where X is Major
+ version in IP Block Revision Register and Y is Minor version. If this
+ compatiable is provided it should be ordered before "fsl,rman".
+
+ - #address-cells
+ Usage: required
+ Value type: <u32>
+ Definition: A standard property. Defines the number of cells for
+ representing physical addresses in child nodes. Must have a
+ value of 1.
+
+ - #size-cells
+ Usage: required
+ Value type: <u32>
+ Definition: A standard property. Defines the number of cells for
+ representing the size of physical addresses in child nodes.
+ Must have a value of 1.
+
+ - reg
+ Usage: required
+ Value type: <prop-encoded-array>
+ Definition: A standard property. Specifies the physical address and
+ length of the RMan configuration registers within the CCSR
+ address space.
+
+ - ranges
+ Usage: required
+ Value type: <prop-encoded-array>
+ Definition: A standard property. Specifies the physical address and=
+ length of the RMan memory space.
+
+ - interrupts:
+ Usage: required
+ Value type: <prop-encoded-array>
+ Definition: Interrupt mapping for RMAN error IRQ.
+
+ - fsl,qman-channels-id
+ Usage: required
+ Value type: <prop-encoded-array>
+ Definition: This property represents the ID value for the specific QMan
+ dequeue channel(s) asssociate with RMan. Typically there is a
+ dequeue channel per RapidIO port.
+
+=================================================================================
+RMan Inbound Block Node
+
+DESCRIPTION
+
+RMan has multiple inbound blocks. Each inbound block has eight classification
+units.
+
+PROPERTIES
+
+ - compatible
+ Usage: required
+ Value type: <string>
+ Definition: A standard property. Must include "fsl,rman-inbound-block".
+
+ - reg
+ Usage: required
+ Value type: <prop-encoded-array>
+ Definition: A standard property. Specifies the physical address offset
+ and length of the RMan inbound block configuration registers
+ within the RMan node's address space.
+
+ - fsl,liodn
+ Usage: see definition
+ Value type: <u32>
+ Definition: The logical I/O device number (LIODN) for this device. The
+ LIODN is a number expressed by this device and used to perform
+ look-ups in the IOMMU (PAMU) address table when performing DMAs.
+ This property is required if the PAMU is enabled.
+
+Example
+
+inbound-block@0 {
+ fsl,liodn = <203>;
+ compatible = "fsl,rman-inbound-block";
+ reg = <0x0 0x800>;
+};
+
+=================================================================================
+RMan Global CFG Node
+
+DESCRIPTION
+
+This node describes the RMan global registers located within the first 4K bytes
+resource block.
+
+PROPERTIES
+
+ - compatible
+ Usage: required
+ Value type: <string>
+ Definition: A standard property. Must include "fsl,rman-global-cfg".
+
+ - reg
+ Usage: required
+ Value type: <prop-encoded-array>
+ Definition: A standard property. Specifies the physical address offset
+ and length of the RMan global configuration registers within the
+ RMan node's address space.
+
+Example
+
+global-cfg@b00 {
+ compatible = "fsl,rman-global-cfg";
+ reg = <0xb00 0x500>;
+};
+
+=================================================================================
+Example
+
+rman: rman@1e0000 {
+ compatible = "fsl,rman";
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges = <0x0 0x1e0000 0x20000>;
+ reg = <0x1e0000 0x20000>;
+ interrupts = <16 2 1 11>; /* err_irq */
+ fsl,qman-channels-id = <0x62 0x63>;
+ inbound-block@0 {
+ fsl,liodn = <203>;
+ compatible = "fsl,rman-inbound-block";
+ reg = <0x0 0x800>;
+ };
+ global-cfg@b00 {
+ compatible = "fsl,rman-global-cfg";
+ reg = <0xb00 0x500>;
+ };
+ inbound-block@1000 {
+ fsl,liodn = <204>;
+ compatible = "fsl,rman-inbound-block";
+ reg = <0x1000 0x800>;
+ };
+ inbound-block@2000 {
+ fsl,liodn = <205>;
+ compatible = "fsl,rman-inbound-block";
+ reg = <0x2000 0x800>;
+ };
+ inbound-block@3000 {
+ fsl,liodn = <206>;
+ compatible = "fsl,rman-inbound-block";
+ reg = <0x3000 0x800>;
+ };
+};