| ARM MHU Mailbox Driver |
| ====================== |
| |
| The ARM's Message-Handling-Unit (MHU) is a mailbox controller that has |
| 3 independent channels/links to communicate with remote processor(s). |
| MHU links are hardwired on a platform. A link raises interrupt for any |
| received data. However, there is no specified way of knowing if the sent |
| data has been read by the remote. This driver assumes the sender polls |
| STAT register and the remote clears it after having read the data. |
| The last channel is specified to be a 'Secure' resource, hence can't be |
| used by Linux running NS. |
| |
| Mailbox Device Node: |
| ==================== |
| |
| Required properties: |
| -------------------- |
| - compatible: Shall be "arm,mhu" & "arm,primecell" |
| - reg: Contains the mailbox register address range (base |
| address and length) |
| - #mbox-cells Shall be 1 - the index of the channel needed. |
| - interrupts: Contains the interrupt information corresponding to |
| each of the 3 links of MHU. |
| |
| Example: |
| -------- |
| |
| mhu: mailbox@2b1f0000 { |
| #mbox-cells = <1>; |
| compatible = "arm,mhu", "arm,primecell"; |
| reg = <0 0x2b1f0000 0x1000>; |
| interrupts = <0 36 4>, /* LP-NonSecure */ |
| <0 35 4>, /* HP-NonSecure */ |
| <0 37 4>; /* Secure */ |
| clocks = <&clock 0 2 1>; |
| clock-names = "apb_pclk"; |
| }; |
| |
| mhu_client: scb@2e000000 { |
| compatible = "fujitsu,mb86s70-scb-1.0"; |
| reg = <0 0x2e000000 0x4000>; |
| mboxes = <&mhu 1>; /* HP-NonSecure */ |
| }; |