| Message unit node: | 
 |  | 
 | For SRIO controllers that implement the message unit as part of the controller | 
 | this node is required.  For devices with RMAN this node should NOT exist.  The | 
 | node is composed of three types of sub-nodes ("fsl-srio-msg-unit", | 
 | "fsl-srio-dbell-unit" and "fsl-srio-port-write-unit"). | 
 |  | 
 | See srio.txt for more details about generic SRIO controller details. | 
 |  | 
 |    - compatible | 
 | 	Usage: required | 
 | 	Value type: <string> | 
 | 	Definition: Must include "fsl,srio-rmu-vX.Y", "fsl,srio-rmu". | 
 |  | 
 | 	The version X.Y should match the general SRIO controller's IP Block | 
 | 	revision register's Major(X) and Minor (Y) value. | 
 |  | 
 |    - reg | 
 | 	Usage: required | 
 | 	Value type: <prop-encoded-array> | 
 | 	Definition: A standard property.  Specifies the physical address and | 
 | 		length of the SRIO configuration registers for message units | 
 | 		and doorbell units. | 
 |  | 
 |    - 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. | 
 |  | 
 | 		The LIODN value is associated with all RMU transactions | 
 | 		(msg-unit, doorbell, port-write). | 
 |  | 
 | Sub-Nodes for RMU:  The RMU node is composed of multiple sub-nodes that | 
 | correspond to the actual sub-controllers in the RMU.  The manual for a given | 
 | SoC will detail which and how many of these sub-controllers are implemented. | 
 |  | 
 | Message Unit: | 
 |  | 
 |    - compatible | 
 | 	Usage: required | 
 | 	Value type: <string> | 
 | 	Definition: Must include "fsl,srio-msg-unit-vX.Y", "fsl,srio-msg-unit". | 
 |  | 
 | 	The version X.Y should match the general SRIO controller's IP Block | 
 | 	revision register's Major(X) and Minor (Y) value. | 
 |  | 
 |    - reg | 
 | 	Usage: required | 
 | 	Value type: <prop-encoded-array> | 
 | 	Definition: A standard property.  Specifies the physical address and | 
 | 		length of the SRIO configuration registers for message units | 
 | 		and doorbell units. | 
 |  | 
 |    - 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 pair of IRQs are specified in this property.  The first | 
 | 		element is associated with the transmit (TX) interrupt and the | 
 | 		second element is associated with the receive (RX) interrupt. | 
 |  | 
 | Doorbell Unit: | 
 |  | 
 |    - compatible | 
 | 	Usage: required | 
 | 	Value type: <string> | 
 | 	Definition: Must include: | 
 | 		"fsl,srio-dbell-unit-vX.Y", "fsl,srio-dbell-unit" | 
 |  | 
 | 	The version X.Y should match the general SRIO controller's IP Block | 
 | 	revision register's Major(X) and Minor (Y) value. | 
 |  | 
 |    - reg | 
 | 	Usage: required | 
 | 	Value type: <prop-encoded-array> | 
 | 	Definition: A standard property.  Specifies the physical address and | 
 | 		length of the SRIO configuration registers for message units | 
 | 		and doorbell units. | 
 |  | 
 |    - 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 pair of IRQs are specified in this property.  The first | 
 | 		element is associated with the transmit (TX) interrupt and the | 
 | 		second element is associated with the receive (RX) interrupt. | 
 |  | 
 | Port-Write Unit: | 
 |  | 
 |    - compatible | 
 | 	Usage: required | 
 | 	Value type: <string> | 
 | 	Definition: Must include: | 
 | 		 "fsl,srio-port-write-unit-vX.Y", "fsl,srio-port-write-unit" | 
 |  | 
 | 	The version X.Y should match the general SRIO controller's IP Block | 
 | 	revision register's Major(X) and Minor (Y) value. | 
 |  | 
 |    - reg | 
 | 	Usage: required | 
 | 	Value type: <prop-encoded-array> | 
 | 	Definition: A standard property.  Specifies the physical address and | 
 | 		length of the SRIO configuration registers for message units | 
 | 		and doorbell units. | 
 |  | 
 |    - 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 port-write conditions is | 
 | 		specified by this property.  (Typically shared with error). | 
 |  | 
 |    Note: All other standard properties (see the ePAPR) are allowed | 
 |    but are optional. | 
 |  | 
 | Example: | 
 | 	rmu: rmu@d3000 { | 
 | 		compatible = "fsl,srio-rmu"; | 
 | 		reg = <0xd3000 0x400>; | 
 | 		ranges = <0x0 0xd3000 0x400>; | 
 | 		fsl,liodn = <0xc8>; | 
 |  | 
 | 		message-unit@0 { | 
 | 			compatible = "fsl,srio-msg-unit"; | 
 | 			reg = <0x0 0x100>; | 
 | 			interrupts = < | 
 | 				60 2 0 0  /* msg1_tx_irq */ | 
 | 				61 2 0 0>;/* msg1_rx_irq */ | 
 | 		}; | 
 | 		message-unit@100 { | 
 | 			compatible = "fsl,srio-msg-unit"; | 
 | 			reg = <0x100 0x100>; | 
 | 			interrupts = < | 
 | 				62 2 0 0  /* msg2_tx_irq */ | 
 | 				63 2 0 0>;/* msg2_rx_irq */ | 
 | 		}; | 
 | 		doorbell-unit@400 { | 
 | 			compatible = "fsl,srio-dbell-unit"; | 
 | 			reg = <0x400 0x80>; | 
 | 			interrupts = < | 
 | 				56 2 0 0  /* bell_outb_irq */ | 
 | 				57 2 0 0>;/* bell_inb_irq */ | 
 | 		}; | 
 | 		port-write-unit@4e0 { | 
 | 			compatible = "fsl,srio-port-write-unit"; | 
 | 			reg = <0x4e0 0x20>; | 
 | 			interrupts = <16 2 1 11>; | 
 | 		}; | 
 | 	}; |