1Message unit node: 2 3For SRIO controllers that implement the message unit as part of the controller 4this node is required. For devices with RMAN this node should NOT exist. The 5node is composed of three types of sub-nodes ("fsl-srio-msg-unit", 6"fsl-srio-dbell-unit" and "fsl-srio-port-write-unit"). 7 8See srio.txt for more details about generic SRIO controller details. 9 10 - compatible 11 Usage: required 12 Value type: <string> 13 Definition: Must include "fsl,srio-rmu-vX.Y", "fsl,srio-rmu". 14 15 The version X.Y should match the general SRIO controller's IP Block 16 revision register's Major(X) and Minor (Y) value. 17 18 - reg 19 Usage: required 20 Value type: <prop-encoded-array> 21 Definition: A standard property. Specifies the physical address and 22 length of the SRIO configuration registers for message units 23 and doorbell units. 24 25 - fsl,liodn 26 Usage: optional-but-recommended (for devices with PAMU) 27 Value type: <prop-encoded-array> 28 Definition: The logical I/O device number for the PAMU (IOMMU) to be 29 correctly configured for SRIO accesses. The property should 30 not exist on devices that do not support PAMU. 31 32 The LIODN value is associated with all RMU transactions 33 (msg-unit, doorbell, port-write). 34 35Sub-Nodes for RMU: The RMU node is composed of multiple sub-nodes that 36correspond to the actual sub-controllers in the RMU. The manual for a given 37SoC will detail which and how many of these sub-controllers are implemented. 38 39Message Unit: 40 41 - compatible 42 Usage: required 43 Value type: <string> 44 Definition: Must include "fsl,srio-msg-unit-vX.Y", "fsl,srio-msg-unit". 45 46 The version X.Y should match the general SRIO controller's IP Block 47 revision register's Major(X) and Minor (Y) value. 48 49 - reg 50 Usage: required 51 Value type: <prop-encoded-array> 52 Definition: A standard property. Specifies the physical address and 53 length of the SRIO configuration registers for message units 54 and doorbell units. 55 56 - interrupts 57 Usage: required 58 Value type: <prop_encoded-array> 59 Definition: Specifies the interrupts generated by this device. The 60 value of the interrupts property consists of one interrupt 61 specifier. The format of the specifier is defined by the 62 binding document describing the node's interrupt parent. 63 64 A pair of IRQs are specified in this property. The first 65 element is associated with the transmit (TX) interrupt and the 66 second element is associated with the receive (RX) interrupt. 67 68Doorbell Unit: 69 70 - compatible 71 Usage: required 72 Value type: <string> 73 Definition: Must include: 74 "fsl,srio-dbell-unit-vX.Y", "fsl,srio-dbell-unit" 75 76 The version X.Y should match the general SRIO controller's IP Block 77 revision register's Major(X) and Minor (Y) value. 78 79 - reg 80 Usage: required 81 Value type: <prop-encoded-array> 82 Definition: A standard property. Specifies the physical address and 83 length of the SRIO configuration registers for message units 84 and doorbell units. 85 86 - interrupts 87 Usage: required 88 Value type: <prop_encoded-array> 89 Definition: Specifies the interrupts generated by this device. The 90 value of the interrupts property consists of one interrupt 91 specifier. The format of the specifier is defined by the 92 binding document describing the node's interrupt parent. 93 94 A pair of IRQs are specified in this property. The first 95 element is associated with the transmit (TX) interrupt and the 96 second element is associated with the receive (RX) interrupt. 97 98Port-Write Unit: 99 100 - compatible 101 Usage: required 102 Value type: <string> 103 Definition: Must include: 104 "fsl,srio-port-write-unit-vX.Y", "fsl,srio-port-write-unit" 105 106 The version X.Y should match the general SRIO controller's IP Block 107 revision register's Major(X) and Minor (Y) value. 108 109 - reg 110 Usage: required 111 Value type: <prop-encoded-array> 112 Definition: A standard property. Specifies the physical address and 113 length of the SRIO configuration registers for message units 114 and doorbell units. 115 116 - interrupts 117 Usage: required 118 Value type: <prop_encoded-array> 119 Definition: Specifies the interrupts generated by this device. The 120 value of the interrupts property consists of one interrupt 121 specifier. The format of the specifier is defined by the 122 binding document describing the node's interrupt parent. 123 124 A single IRQ that handles port-write conditions is 125 specified by this property. (Typically shared with error). 126 127 Note: All other standard properties (see the Devicetree Specification) 128 are allowed but are optional. 129 130Example: 131 rmu: rmu@d3000 { 132 compatible = "fsl,srio-rmu"; 133 reg = <0xd3000 0x400>; 134 ranges = <0x0 0xd3000 0x400>; 135 fsl,liodn = <0xc8>; 136 137 message-unit@0 { 138 compatible = "fsl,srio-msg-unit"; 139 reg = <0x0 0x100>; 140 interrupts = < 141 60 2 0 0 /* msg1_tx_irq */ 142 61 2 0 0>;/* msg1_rx_irq */ 143 }; 144 message-unit@100 { 145 compatible = "fsl,srio-msg-unit"; 146 reg = <0x100 0x100>; 147 interrupts = < 148 62 2 0 0 /* msg2_tx_irq */ 149 63 2 0 0>;/* msg2_rx_irq */ 150 }; 151 doorbell-unit@400 { 152 compatible = "fsl,srio-dbell-unit"; 153 reg = <0x400 0x80>; 154 interrupts = < 155 56 2 0 0 /* bell_outb_irq */ 156 57 2 0 0>;/* bell_inb_irq */ 157 }; 158 port-write-unit@4e0 { 159 compatible = "fsl,srio-port-write-unit"; 160 reg = <0x4e0 0x20>; 161 interrupts = <16 2 1 11>; 162 }; 163 }; 164