Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: mailbox: add STMicroelectronics STM32 IPCC binding

Add a binding for the STMicroelectronics STM32 IPCC block exposing a
mailbox mechanism between two processors.

Signed-off-by: Fabien Dessenne <fabien.dessenne@st.com>
Signed-off-by: Ludovic Barre <ludovic.barre@st.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>

authored by

Fabien Dessenne and committed by
Jassi Brar
8f51bb7c 19ed70c0

+47
+47
Documentation/devicetree/bindings/mailbox/stm32-ipcc.txt
··· 1 + * STMicroelectronics STM32 IPCC (Inter-Processor Communication Controller) 2 + 3 + The IPCC block provides a non blocking signaling mechanism to post and 4 + retrieve messages in an atomic way between two processors. 5 + It provides the signaling for N bidirectionnal channels. The number of channels 6 + (N) can be read from a dedicated register. 7 + 8 + Required properties: 9 + - compatible: Must be "st,stm32mp1-ipcc" 10 + - reg: Register address range (base address and length) 11 + - st,proc-id: Processor id using the mailbox (0 or 1) 12 + - clocks: Input clock 13 + - interrupt-names: List of names for the interrupts described by the interrupt 14 + property. Must contain the following entries: 15 + - "rx" 16 + - "tx" 17 + - "wakeup" 18 + - interrupts: Interrupt specifiers for "rx channel occupied", "tx channel 19 + free" and "system wakeup". 20 + - #mbox-cells: Number of cells required for the mailbox specifier. Must be 1. 21 + The data contained in the mbox specifier of the "mboxes" 22 + property in the client node is the mailbox channel index. 23 + 24 + Optional properties: 25 + - wakeup-source: Flag to indicate whether this device can wake up the system 26 + 27 + 28 + 29 + Example: 30 + ipcc: mailbox@4c001000 { 31 + compatible = "st,stm32mp1-ipcc"; 32 + #mbox-cells = <1>; 33 + reg = <0x4c001000 0x400>; 34 + st,proc-id = <0>; 35 + interrupts-extended = <&intc GIC_SPI 100 IRQ_TYPE_NONE>, 36 + <&intc GIC_SPI 101 IRQ_TYPE_NONE>, 37 + <&aiec 62 1>; 38 + interrupt-names = "rx", "tx", "wakeup"; 39 + clocks = <&rcc_clk IPCC>; 40 + wakeup-source; 41 + } 42 + 43 + Client: 44 + mbox_test { 45 + ... 46 + mboxes = <&ipcc 0>, <&ipcc 1>; 47 + };