cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

xlnx,zynqmp-ipi-mailbox.yaml (4029B)


      1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
      2%YAML 1.2
      3---
      4$id: "http://devicetree.org/schemas/mailbox/xlnx,zynqmp-ipi-mailbox.yaml#"
      5$schema: "http://devicetree.org/meta-schemas/core.yaml#"
      6
      7title: Xilinx IPI(Inter Processor Interrupt) mailbox controller
      8
      9description: |
     10  The Xilinx IPI(Inter Processor Interrupt) mailbox controller is to manage
     11  messaging between two Xilinx Zynq UltraScale+ MPSoC IPI agents. Each IPI
     12  agent owns registers used for notification and buffers for message.
     13
     14               +-------------------------------------+
     15               | Xilinx ZynqMP IPI Controller        |
     16               +-------------------------------------+
     17    +--------------------------------------------------+
     18  TF-A                   |                     |
     19                         |                     |
     20                         |                     |
     21    +--------------------------+               |
     22                         |                     |
     23                         |                     |
     24    +--------------------------------------------------+
     25              +------------------------------------------+
     26              |  +----------------+   +----------------+ |
     27  Hardware    |  |  IPI Agent     |   |  IPI Buffers   | |
     28              |  |  Registers     |   |                | |
     29              |  |                |   |                | |
     30              |  +----------------+   +----------------+ |
     31              |                                          |
     32              | Xilinx IPI Agent Block                   |
     33              +------------------------------------------+
     34
     35maintainers:
     36  - Shubhrajyoti Datta <shubhrajyoti.datta@xilinx.com>
     37
     38properties:
     39  compatible:
     40    const: xlnx,zynqmp-ipi-mailbox
     41
     42  method:
     43    description: |
     44      The method of calling the PM-API firmware layer.
     45      Permitted values are.
     46      - "smc" : SMC #0, following the SMCCC
     47      - "hvc" : HVC #0, following the SMCCC
     48
     49    $ref: /schemas/types.yaml#/definitions/string
     50    enum:
     51      - smc
     52      - hvc
     53    default: smc
     54
     55  '#address-cells':
     56    const: 2
     57
     58  '#size-cells':
     59    const: 2
     60
     61  xlnx,ipi-id:
     62    description: |
     63      Remote Xilinx IPI agent ID of which the mailbox is connected to.
     64    $ref: /schemas/types.yaml#/definitions/uint32
     65
     66  interrupts:
     67    maxItems: 1
     68
     69  ranges: true
     70
     71patternProperties:
     72  '^mailbox@[0-9a-f]+$':
     73    description: Internal ipi mailbox node
     74    type: object  # DT nodes are json objects
     75    properties:
     76      xlnx,ipi-id:
     77        description:
     78          Remote Xilinx IPI agent ID of which the mailbox is connected to.
     79        $ref: /schemas/types.yaml#/definitions/uint32
     80
     81      '#mbox-cells':
     82        const: 1
     83        description:
     84          It contains tx(0) or rx(1) channel IPI id number.
     85
     86      reg:
     87        maxItems: 4
     88
     89      reg-names:
     90        items:
     91          - const: local_request_region
     92          - const: local_response_region
     93          - const: remote_request_region
     94          - const: remote_response_region
     95
     96    required:
     97      - reg
     98      - reg-names
     99      - "#mbox-cells"
    100
    101additionalProperties: false
    102
    103required:
    104  - compatible
    105  - interrupts
    106  - '#address-cells'
    107  - '#size-cells'
    108  - xlnx,ipi-id
    109
    110examples:
    111  - |
    112    #include<dt-bindings/interrupt-controller/arm-gic.h>
    113
    114    amba {
    115      #address-cells = <0x2>;
    116      #size-cells = <0x2>;
    117      zynqmp-mailbox {
    118        compatible = "xlnx,zynqmp-ipi-mailbox";
    119        interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>;
    120        xlnx,ipi-id = <0>;
    121        #address-cells = <2>;
    122        #size-cells = <2>;
    123        ranges;
    124
    125        mailbox: mailbox@ff9905c0 {
    126          reg = <0x0 0xff9905c0 0x0 0x20>,
    127                <0x0 0xff9905e0 0x0 0x20>,
    128                <0x0 0xff990e80 0x0 0x20>,
    129                <0x0 0xff990ea0 0x0 0x20>;
    130          reg-names = "local_request_region",
    131                      "local_response_region",
    132                      "remote_request_region",
    133                      "remote_response_region";
    134          #mbox-cells = <1>;
    135          xlnx,ipi-id = <4>;
    136        };
    137      };
    138    };
    139
    140...