75 lines · plain
1Hisilicon Hi6220 Mailbox Driver2===============================3 4Hisilicon Hi6220 mailbox supports up to 32 channels. Each channel5is unidirectional with a maximum message size of 8 words. I/O is6performed using register access (there is no DMA) and the cell7raises an interrupt when messages are received.8 9Mailbox Device Node:10====================11 12Required properties:13--------------------14- compatible: Shall be "hisilicon,hi6220-mbox"15- reg: Contains the mailbox register address range (base16 address and length); the first item is for IPC17 registers, the second item is shared buffer for18 slots.19- #mbox-cells: Common mailbox binding property to identify the number20 of cells required for the mailbox specifier. Must be 3.21 <&phandle slot_id dst_irq ack_irq>22 phandle: Label name of mailbox controller23 slot_id: Slot id used either for TX or RX24 dst_irq: IRQ identifier index number which used by MCU25 ack_irq: IRQ identifier index number with generating a26 TX/RX interrupt to application processor,27 mailbox driver uses it to acknowledge interrupt28- interrupts: Contains the interrupt information for the mailbox29 device. The format is dependent on which interrupt30 controller the SoCs use.31 32Optional Properties:33--------------------34- hi6220,mbox-tx-noirq: Property of MCU firmware's feature, so mailbox driver35 use this flag to ask MCU to enable "automatic idle36 flag" mode or IRQ generated mode to acknowledge a TX37 completion.38 39Example:40--------41 42 mailbox: mailbox@f7510000 {43 compatible = "hisilicon,hi6220-mbox";44 reg = <0x0 0xf7510000 0x0 0x1000>, /* IPC_S */45 <0x0 0x06dff800 0x0 0x0800>; /* Mailbox */46 interrupt-parent = <&gic>;47 interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;48 #mbox-cells = <3>;49 };50 51 52Mailbox client53===============54 55Required properties:56--------------------57- compatible: Many (See the client docs).58- mboxes: Standard property to specify a Mailbox (See ./mailbox.txt)59 Cells must match 'mbox-cells' (See Mailbox Device Node above).60 61Optional Properties:62--------------------63- mbox-names: Name given to channels seen in the 'mboxes' property.64 65Example:66--------67 68 stub_clock: stub_clock {69 compatible = "hisilicon,hi6220-stub-clk";70 hisilicon,hi6220-clk-sram = <&sram>;71 #clock-cells = <1>;72 mbox-names = "mbox-tx", "mbox-rx";73 mboxes = <&mailbox 1 0 11>, <&mailbox 0 1 10>;74 };75