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