Back to home page

OSCL-LXR

 
 

    


0001 Message unit node:
0002 
0003 For SRIO controllers that implement the message unit as part of the controller
0004 this node is required.  For devices with RMAN this node should NOT exist.  The
0005 node is composed of three types of sub-nodes ("fsl-srio-msg-unit",
0006 "fsl-srio-dbell-unit" and "fsl-srio-port-write-unit").
0007 
0008 See srio.txt for more details about generic SRIO controller details.
0009 
0010    - compatible
0011         Usage: required
0012         Value type: <string>
0013         Definition: Must include "fsl,srio-rmu-vX.Y", "fsl,srio-rmu".
0014 
0015         The version X.Y should match the general SRIO controller's IP Block
0016         revision register's Major(X) and Minor (Y) value.
0017 
0018    - reg
0019         Usage: required
0020         Value type: <prop-encoded-array>
0021         Definition: A standard property.  Specifies the physical address and
0022                 length of the SRIO configuration registers for message units
0023                 and doorbell units.
0024 
0025    - fsl,liodn
0026         Usage: optional-but-recommended (for devices with PAMU)
0027         Value type: <prop-encoded-array>
0028         Definition: The logical I/O device number for the PAMU (IOMMU) to be
0029                 correctly configured for SRIO accesses.  The property should
0030                 not exist on devices that do not support PAMU.
0031 
0032                 The LIODN value is associated with all RMU transactions
0033                 (msg-unit, doorbell, port-write).
0034 
0035 Sub-Nodes for RMU:  The RMU node is composed of multiple sub-nodes that
0036 correspond to the actual sub-controllers in the RMU.  The manual for a given
0037 SoC will detail which and how many of these sub-controllers are implemented.
0038 
0039 Message Unit:
0040 
0041    - compatible
0042         Usage: required
0043         Value type: <string>
0044         Definition: Must include "fsl,srio-msg-unit-vX.Y", "fsl,srio-msg-unit".
0045 
0046         The version X.Y should match the general SRIO controller's IP Block
0047         revision register's Major(X) and Minor (Y) value.
0048 
0049    - reg
0050         Usage: required
0051         Value type: <prop-encoded-array>
0052         Definition: A standard property.  Specifies the physical address and
0053                 length of the SRIO configuration registers for message units
0054                 and doorbell units.
0055 
0056    - interrupts
0057         Usage: required
0058         Value type: <prop_encoded-array>
0059         Definition:  Specifies the interrupts generated by this device.  The
0060                 value of the interrupts property consists of one interrupt
0061                 specifier. The format of the specifier is defined by the
0062                 binding document describing the node's interrupt parent.
0063 
0064                 A pair of IRQs are specified in this property.  The first
0065                 element is associated with the transmit (TX) interrupt and the
0066                 second element is associated with the receive (RX) interrupt.
0067 
0068 Doorbell Unit:
0069 
0070    - compatible
0071         Usage: required
0072         Value type: <string>
0073         Definition: Must include:
0074                 "fsl,srio-dbell-unit-vX.Y", "fsl,srio-dbell-unit"
0075 
0076         The version X.Y should match the general SRIO controller's IP Block
0077         revision register's Major(X) and Minor (Y) value.
0078 
0079    - reg
0080         Usage: required
0081         Value type: <prop-encoded-array>
0082         Definition: A standard property.  Specifies the physical address and
0083                 length of the SRIO configuration registers for message units
0084                 and doorbell units.
0085 
0086    - interrupts
0087         Usage: required
0088         Value type: <prop_encoded-array>
0089         Definition:  Specifies the interrupts generated by this device.  The
0090                 value of the interrupts property consists of one interrupt
0091                 specifier. The format of the specifier is defined by the
0092                 binding document describing the node's interrupt parent.
0093 
0094                 A pair of IRQs are specified in this property.  The first
0095                 element is associated with the transmit (TX) interrupt and the
0096                 second element is associated with the receive (RX) interrupt.
0097 
0098 Port-Write Unit:
0099 
0100    - compatible
0101         Usage: required
0102         Value type: <string>
0103         Definition: Must include:
0104                  "fsl,srio-port-write-unit-vX.Y", "fsl,srio-port-write-unit"
0105 
0106         The version X.Y should match the general SRIO controller's IP Block
0107         revision register's Major(X) and Minor (Y) value.
0108 
0109    - reg
0110         Usage: required
0111         Value type: <prop-encoded-array>
0112         Definition: A standard property.  Specifies the physical address and
0113                 length of the SRIO configuration registers for message units
0114                 and doorbell units.
0115 
0116    - interrupts
0117         Usage: required
0118         Value type: <prop_encoded-array>
0119         Definition:  Specifies the interrupts generated by this device.  The
0120                 value of the interrupts property consists of one interrupt
0121                 specifier. The format of the specifier is defined by the
0122                 binding document describing the node's interrupt parent.
0123 
0124                 A single IRQ that handles port-write conditions is
0125                 specified by this property.  (Typically shared with error).
0126 
0127    Note: All other standard properties (see the Devicetree Specification)
0128    are allowed but are optional.
0129 
0130 Example:
0131         rmu: rmu@d3000 {
0132                 compatible = "fsl,srio-rmu";
0133                 reg = <0xd3000 0x400>;
0134                 ranges = <0x0 0xd3000 0x400>;
0135                 fsl,liodn = <0xc8>;
0136 
0137                 message-unit@0 {
0138                         compatible = "fsl,srio-msg-unit";
0139                         reg = <0x0 0x100>;
0140                         interrupts = <
0141                                 60 2 0 0  /* msg1_tx_irq */
0142                                 61 2 0 0>;/* msg1_rx_irq */
0143                 };
0144                 message-unit@100 {
0145                         compatible = "fsl,srio-msg-unit";
0146                         reg = <0x100 0x100>;
0147                         interrupts = <
0148                                 62 2 0 0  /* msg2_tx_irq */
0149                                 63 2 0 0>;/* msg2_rx_irq */
0150                 };
0151                 doorbell-unit@400 {
0152                         compatible = "fsl,srio-dbell-unit";
0153                         reg = <0x400 0x80>;
0154                         interrupts = <
0155                                 56 2 0 0  /* bell_outb_irq */
0156                                 57 2 0 0>;/* bell_inb_irq */
0157                 };
0158                 port-write-unit@4e0 {
0159                         compatible = "fsl,srio-port-write-unit";
0160                         reg = <0x4e0 0x20>;
0161                         interrupts = <16 2 1 11>;
0162                 };
0163         };