brintos

brintos / linux-shallow public Read only

0
0
Text · 3.5 KiB · a17297c Raw
176 lines · yaml
1# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)2%YAML 1.23---4$id: http://devicetree.org/schemas/ata/nvidia,tegra-ahci.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: Tegra AHCI SATA Controller8 9maintainers:10  - Thierry Reding <thierry.reding@gmail.com>11  - Jonathan Hunter <jonathanh@nvidia.com>12 13properties:14  compatible:15    enum:16      - nvidia,tegra124-ahci17      - nvidia,tegra132-ahci18      - nvidia,tegra210-ahci19      - nvidia,tegra186-ahci20 21  reg:22    minItems: 223    items:24      - description: AHCI registers25      - description: SATA configuration and IPFS registers26      - description: SATA AUX registers27 28  interrupts:29    maxItems: 130 31  clock-names:32    items:33      - const: sata34      - const: sata-oob35 36  clocks:37    maxItems: 238 39  reset-names:40    minItems: 241    items:42      - const: sata43      - const: sata-cold44      - const: sata-oob45 46  resets:47    minItems: 248    maxItems: 349 50  iommus:51    maxItems: 152 53  interconnect-names:54    items:55      - const: dma-mem56      - const: write57 58  interconnects:59    maxItems: 260 61  power-domains:62    items:63      - description: SAX power-domain64 65  phy-names:66    items:67      - const: sata-068 69  phys:70    maxItems: 171 72  hvdd-supply:73    description: SATA HVDD regulator supply.74 75  vddio-supply:76    description: SATA VDDIO regulator supply.77 78  avdd-supply:79    description: SATA AVDD regulator supply.80 81  target-5v-supply:82    description: SATA 5V power regulator supply.83 84  target-12v-supply:85    description: SATA 12V power regulator supply.86 87required:88  - compatible89  - reg90  - interrupts91  - clock-names92  - clocks93  - reset-names94  - resets95 96allOf:97  - if:98      properties:99        compatible:100          contains:101            enum:102              - nvidia,tegra124-ahci103              - nvidia,tegra132-ahci104    then:105      properties:106        reg:107          maxItems: 2108        reset-names:109          minItems: 3110        resets:111          minItems: 3112      required:113        - phys114        - phy-names115        - hvdd-supply116        - vddio-supply117        - avdd-supply118 119  - if:120      properties:121        compatible:122          contains:123            enum:124              - nvidia,tegra210-ahci125    then:126      properties:127        reg:128          minItems: 3129        reset-names:130          minItems: 3131        resets:132          minItems: 3133 134  - if:135      properties:136        compatible:137          contains:138            enum:139              - nvidia,tegra186-ahci140    then:141      properties:142        reg:143          minItems: 3144        reset-names:145          maxItems: 2146        resets:147          maxItems: 2148      required:149        - iommus150        - interconnect-names151        - interconnects152        - power-domains153 154additionalProperties: false155 156examples:157  - |158    #include <dt-bindings/clock/tegra210-car.h>159    #include <dt-bindings/reset/tegra210-car.h>160    #include <dt-bindings/interrupt-controller/arm-gic.h>161 162    sata@70020000 {163            compatible = "nvidia,tegra210-ahci";164            reg = <0x70027000 0x00002000>, /* AHCI */165                  <0x70020000 0x00007000>, /* SATA */166                  <0x70001100 0x00010000>; /* SATA AUX */167            interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>;168            clocks = <&tegra_car TEGRA210_CLK_SATA>,169                     <&tegra_car TEGRA210_CLK_SATA_OOB>;170            clock-names = "sata", "sata-oob";171            resets = <&tegra_car 124>,172                     <&tegra_car 129>,173                     <&tegra_car 123>;174            reset-names = "sata", "sata-cold", "sata-oob";175    };176