Back to home page

OSCL-LXR

 
 

    


0001 Texas Instruments' Message Manager Driver
0002 ========================================
0003 
0004 The Texas Instruments' Message Manager is a mailbox controller that has
0005 configurable queues selectable at SoC(System on Chip) integration. The Message
0006 manager is broken up into queues in different address regions that are called
0007 "proxies" - each instance is unidirectional and is instantiated at SoC
0008 integration level to indicate receive or transmit path.
0009 
0010 Message Manager Device Node:
0011 ===========================
0012 Required properties:
0013 --------------------
0014 - compatible:           Shall be: "ti,k2g-message-manager"
0015 - reg-names             queue_proxy_region - Map the queue proxy region.
0016                         queue_state_debug_region - Map the queue state debug
0017                         region.
0018 - reg:                  Contains the register map per reg-names.
0019 - #mbox-cells           Shall be 2. Contains the queue ID and proxy ID in that
0020                         order referring to the transfer path.
0021 - interrupt-names:      Contains interrupt names matching the rx transfer path
0022                         for a given SoC. Receive interrupts shall be of the
0023                         format: "rx_<QID>".
0024                         For ti,k2g-message-manager, this shall contain:
0025                                 "rx_005", "rx_057"
0026 - interrupts:           Contains the interrupt information corresponding to
0027                         interrupt-names property.
0028 
0029 Example(K2G):
0030 ------------
0031 
0032         msgmgr: msgmgr@2a00000 {
0033                 compatible = "ti,k2g-message-manager";
0034                 #mbox-cells = <2>;
0035                 reg-names = "queue_proxy_region", "queue_state_debug_region";
0036                 reg = <0x02a00000 0x400000>, <0x028c3400 0x400>;
0037                 interrupt-names = "rx_005", "rx_057";
0038                 interrupts = <GIC_SPI 324 IRQ_TYPE_LEVEL_HIGH>,
0039                              <GIC_SPI 327 IRQ_TYPE_LEVEL_HIGH>;
0040         };
0041 
0042         pmmc: pmmc {
0043                 [...]
0044                 mbox-names = "rx", "tx";
0045                 # RX queue ID is 5, proxy ID is 2
0046                 # TX queue ID is 0, proxy ID is 0
0047                 mboxes= <&msgmgr 5 2>,
0048                         <&msgmgr 0 0>;
0049                 [...]
0050         };