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

apple,nvme-ans.yaml (2457B)


      1# SPDX-License-Identifier: GPL-2.0 OR BSD-2-Clause
      2%YAML 1.2
      3---
      4$id: http://devicetree.org/schemas/nvme/apple,nvme-ans.yaml#
      5$schema: http://devicetree.org/meta-schemas/core.yaml#
      6
      7title: Apple ANS NVM Express host controller
      8
      9maintainers:
     10  - Sven Peter <sven@svenpeter.dev>
     11
     12properties:
     13  compatible:
     14    items:
     15      - enum:
     16          - apple,t8103-nvme-ans2
     17          - apple,t6000-nvme-ans2
     18      - const: apple,nvme-ans2
     19
     20  reg:
     21    items:
     22      - description: NVMe and NVMMU registers
     23      - description: ANS2 co-processor control registers
     24
     25  reg-names:
     26    items:
     27      - const: nvme
     28      - const: ans
     29
     30  resets:
     31    maxItems: 1
     32
     33  power-domains:
     34    # two domains for t8103, three for t6000
     35    minItems: 2
     36    items:
     37      - description: power domain for the NVMe controller.
     38      - description: power domain for the first PCIe bus connecting the NVMe
     39          controller to the storage modules.
     40      - description: optional power domain for the second PCIe bus
     41          connecting the NVMe controller to the storage modules.
     42
     43  power-domain-names:
     44    minItems: 2
     45    items:
     46      - const: ans
     47      - const: apcie0
     48      - const: apcie1
     49
     50  mboxes:
     51    maxItems: 1
     52    description: Mailbox of the ANS2 co-processor
     53
     54  interrupts:
     55    maxItems: 1
     56
     57  apple,sart:
     58    $ref: /schemas/types.yaml#/definitions/phandle
     59    description: |
     60      Reference to the SART address filter.
     61
     62      The SART address filter is documented in iommu/apple,sart.yaml.
     63
     64if:
     65  properties:
     66    compatible:
     67      contains:
     68        const: apple,t8103-nvme-ans2
     69then:
     70  properties:
     71    power-domains:
     72      maxItems: 2
     73    power-domain-names:
     74      maxItems: 2
     75else:
     76  properties:
     77    power-domains:
     78      minItems: 3
     79    power-domain-names:
     80      minItems: 3
     81
     82required:
     83  - compatible
     84  - reg
     85  - reg-names
     86  - resets
     87  - power-domains
     88  - power-domain-names
     89  - mboxes
     90  - interrupts
     91  - apple,sart
     92
     93additionalProperties: false
     94
     95examples:
     96  - |
     97    #include <dt-bindings/interrupt-controller/apple-aic.h>
     98    #include <dt-bindings/interrupt-controller/irq.h>
     99
    100    nvme@7bcc0000 {
    101      compatible = "apple,t8103-nvme-ans2", "apple,nvme-ans2";
    102      reg = <0x7bcc0000 0x40000>, <0x77400000 0x4000>;
    103      reg-names = "nvme", "ans";
    104      interrupts = <AIC_IRQ 590 IRQ_TYPE_LEVEL_HIGH>;
    105      mboxes = <&ans>;
    106      apple,sart = <&sart>;
    107      power-domains = <&ps_ans2>, <&ps_apcie_st>;
    108      power-domain-names = "ans", "apcie0";
    109      resets = <&ps_ans2>;
    110    };