Back to home page

OSCL-LXR

 
 

    


0001 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
0002 %YAML 1.2
0003 ---
0004 $id: "http://devicetree.org/schemas/mailbox/st,stm32-ipcc.yaml#"
0005 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
0006 
0007 title: STMicroelectronics STM32 IPC controller bindings
0008 
0009 description:
0010   The IPCC block provides a non blocking signaling mechanism to post and
0011   retrieve messages in an atomic way between two processors.
0012   It provides the signaling for N bidirectionnal channels. The number of
0013   channels (N) can be read from a dedicated register.
0014 
0015 maintainers:
0016   - Fabien Dessenne <fabien.dessenne@foss.st.com>
0017   - Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
0018 
0019 properties:
0020   compatible:
0021     const: st,stm32mp1-ipcc
0022 
0023   reg:
0024     maxItems: 1
0025 
0026   clocks:
0027     maxItems: 1
0028 
0029   interrupts:
0030     items:
0031       - description: rx channel occupied
0032       - description: tx channel free
0033 
0034   interrupt-names:
0035     items:
0036       - const: rx
0037       - const: tx
0038 
0039   wakeup-source: true
0040 
0041   "#mbox-cells":
0042     const: 1
0043 
0044   st,proc-id:
0045     description: Processor id using the mailbox (0 or 1)
0046     $ref: /schemas/types.yaml#/definitions/uint32
0047     enum: [0, 1]
0048 
0049 required:
0050   - compatible
0051   - reg
0052   - st,proc-id
0053   - clocks
0054   - interrupt-names
0055   - "#mbox-cells"
0056   - interrupts
0057 
0058 additionalProperties: false
0059 
0060 examples:
0061   - |
0062     #include <dt-bindings/interrupt-controller/arm-gic.h>
0063     #include <dt-bindings/clock/stm32mp1-clks.h>
0064     ipcc: mailbox@4c001000 {
0065       compatible = "st,stm32mp1-ipcc";
0066       #mbox-cells = <1>;
0067       reg = <0x4c001000 0x400>;
0068       st,proc-id = <0>;
0069       interrupts-extended = <&exti 61 1>,
0070                             <&intc GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>;
0071       interrupt-names = "rx", "tx";
0072       clocks = <&rcc_clk IPCC>;
0073       wakeup-source;
0074     };
0075 
0076 ...