| * Freescale Serial RapidIO (SRIO) Controller |
| |
| RapidIO port node: |
| Properties: |
| - compatible |
| Usage: required |
| Value type: <string> |
| Definition: Must include "fsl,srio" for IP blocks with IP Block |
| Revision Register (SRIO IPBRR1) Major ID equal to 0x01c0. |
| |
| Optionally, a compatiable string of "fsl,srio-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,srio". |
| |
| - reg |
| Usage: required |
| Value type: <prop-encoded-array> |
| Definition: A standard property. Specifies the physical address and |
| length of the SRIO configuration registers. The size should |
| be set to 0x11000. |
| |
| - interrupts |
| Usage: required |
| Value type: <prop_encoded-array> |
| Definition: Specifies the interrupts generated by this device. The |
| value of the interrupts property consists of one interrupt |
| specifier. The format of the specifier is defined by the |
| binding document describing the node's interrupt parent. |
| |
| A single IRQ that handles error conditions is specified by this |
| property. (Typically shared with port-write). |
| |
| - fsl,srio-rmu-handle: |
| Usage: required if rmu node is defined |
| Value type: <phandle> |
| Definition: A single <phandle> value that points to the RMU. |
| (See srio-rmu.txt for more details on RMU node binding) |
| |
| Port Child Nodes: There should a port child node for each port that exists in |
| the controller. The ports are numbered starting at one (1) and should have |
| the following properties: |
| |
| - cell-index |
| Usage: required |
| Value type: <u32> |
| Definition: A standard property. Matches the port id. |
| |
| - ranges |
| Usage: required if local access windows preset |
| Value type: <prop-encoded-array> |
| Definition: A standard property. Utilized to describe the memory mapped |
| IO space utilized by the controller. This corresponds to the |
| setting of the local access windows that are targeted to this |
| SRIO port. |
| |
| - fsl,liodn |
| Usage: optional-but-recommended (for devices with PAMU) |
| Value type: <prop-encoded-array> |
| Definition: The logical I/O device number for the PAMU (IOMMU) to be |
| correctly configured for SRIO accesses. The property should |
| not exist on devices that do not support PAMU. |
| |
| For HW (ie, the P4080) that only supports a LIODN for both |
| memory and maintenance transactions then a single LIODN is |
| represented in the property for both transactions. |
| |
| For HW (ie, the P304x/P5020, etc) that supports an LIODN for |
| memory transactions and a unique LIODN for maintenance |
| transactions then a pair of LIODNs are represented in the |
| property. Within the pair, the first element represents the |
| LIODN associated with memory transactions and the second element |
| represents the LIODN associated with maintenance transactions |
| for the port. |
| |
| Note: All other standard properties (see ePAPR) are allowed but are optional. |
| |
| Example: |
| |
| rapidio: rapidio@ffe0c0000 { |
| #address-cells = <2>; |
| #size-cells = <2>; |
| reg = <0xf 0xfe0c0000 0 0x11000>; |
| compatible = "fsl,srio"; |
| interrupts = <16 2 1 11>; /* err_irq */ |
| fsl,srio-rmu-handle = <&rmu>; |
| ranges; |
| |
| port1 { |
| cell-index = <1>; |
| #address-cells = <2>; |
| #size-cells = <2>; |
| fsl,liodn = <34>; |
| ranges = <0 0 0xc 0x20000000 0 0x10000000>; |
| }; |
| |
| port2 { |
| cell-index = <2>; |
| #address-cells = <2>; |
| #size-cells = <2>; |
| fsl,liodn = <48>; |
| ranges = <0 0 0xc 0x30000000 0 0x10000000>; |
| }; |
| }; |