0001 * Freescale Serial RapidIO (SRIO) Controller
0002
0003 RapidIO port node:
0004 Properties:
0005 - compatible
0006 Usage: required
0007 Value type: <string>
0008 Definition: Must include "fsl,srio" for IP blocks with IP Block
0009 Revision Register (SRIO IPBRR1) Major ID equal to 0x01c0.
0010
0011 Optionally, a compatible string of "fsl,srio-vX.Y" where X is Major
0012 version in IP Block Revision Register and Y is Minor version. If this
0013 compatible is provided it should be ordered before "fsl,srio".
0014
0015 - reg
0016 Usage: required
0017 Value type: <prop-encoded-array>
0018 Definition: A standard property. Specifies the physical address and
0019 length of the SRIO configuration registers. The size should
0020 be set to 0x11000.
0021
0022 - interrupts
0023 Usage: required
0024 Value type: <prop_encoded-array>
0025 Definition: Specifies the interrupts generated by this device. The
0026 value of the interrupts property consists of one interrupt
0027 specifier. The format of the specifier is defined by the
0028 binding document describing the node's interrupt parent.
0029
0030 A single IRQ that handles error conditions is specified by this
0031 property. (Typically shared with port-write).
0032
0033 - fsl,srio-rmu-handle:
0034 Usage: required if rmu node is defined
0035 Value type: <phandle>
0036 Definition: A single <phandle> value that points to the RMU.
0037 (See srio-rmu.txt for more details on RMU node binding)
0038
0039 Port Child Nodes: There should a port child node for each port that exists in
0040 the controller. The ports are numbered starting at one (1) and should have
0041 the following properties:
0042
0043 - cell-index
0044 Usage: required
0045 Value type: <u32>
0046 Definition: A standard property. Matches the port id.
0047
0048 - ranges
0049 Usage: required if local access windows preset
0050 Value type: <prop-encoded-array>
0051 Definition: A standard property. Utilized to describe the memory mapped
0052 IO space utilized by the controller. This corresponds to the
0053 setting of the local access windows that are targeted to this
0054 SRIO port.
0055
0056 - fsl,liodn
0057 Usage: optional-but-recommended (for devices with PAMU)
0058 Value type: <prop-encoded-array>
0059 Definition: The logical I/O device number for the PAMU (IOMMU) to be
0060 correctly configured for SRIO accesses. The property should
0061 not exist on devices that do not support PAMU.
0062
0063 For HW (ie, the P4080) that only supports a LIODN for both
0064 memory and maintenance transactions then a single LIODN is
0065 represented in the property for both transactions.
0066
0067 For HW (ie, the P304x/P5020, etc) that supports an LIODN for
0068 memory transactions and a unique LIODN for maintenance
0069 transactions then a pair of LIODNs are represented in the
0070 property. Within the pair, the first element represents the
0071 LIODN associated with memory transactions and the second element
0072 represents the LIODN associated with maintenance transactions
0073 for the port.
0074
0075 Note: All other standard properties (see the Devicetree Specification)
0076 are allowed but are optional.
0077
0078 Example:
0079
0080 rapidio: rapidio@ffe0c0000 {
0081 #address-cells = <2>;
0082 #size-cells = <2>;
0083 reg = <0xf 0xfe0c0000 0 0x11000>;
0084 compatible = "fsl,srio";
0085 interrupts = <16 2 1 11>; /* err_irq */
0086 fsl,srio-rmu-handle = <&rmu>;
0087 ranges;
0088
0089 port1 {
0090 cell-index = <1>;
0091 #address-cells = <2>;
0092 #size-cells = <2>;
0093 fsl,liodn = <34>;
0094 ranges = <0 0 0xc 0x20000000 0 0x10000000>;
0095 };
0096
0097 port2 {
0098 cell-index = <2>;
0099 #address-cells = <2>;
0100 #size-cells = <2>;
0101 fsl,liodn = <48>;
0102 ranges = <0 0 0xc 0x30000000 0 0x10000000>;
0103 };
0104 };