xref: /freebsd/sys/contrib/device-tree/Bindings/ata/snps,dwc-ahci.yaml (revision f126890ac5386406dadf7c4cfa9566cbb56537c5)
17ef62cebSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
27ef62cebSEmmanuel Vadot%YAML 1.2
37ef62cebSEmmanuel Vadot---
47ef62cebSEmmanuel Vadot$id: http://devicetree.org/schemas/ata/snps,dwc-ahci.yaml#
57ef62cebSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
67ef62cebSEmmanuel Vadot
77ef62cebSEmmanuel Vadottitle: Synopsys DWC AHCI SATA controller
87ef62cebSEmmanuel Vadot
97ef62cebSEmmanuel Vadotmaintainers:
107ef62cebSEmmanuel Vadot  - Serge Semin <fancer.lancer@gmail.com>
117ef62cebSEmmanuel Vadot
127ef62cebSEmmanuel Vadotdescription:
137ef62cebSEmmanuel Vadot  This document defines device tree bindings for the generic Synopsys DWC
147ef62cebSEmmanuel Vadot  implementation of the AHCI SATA controller.
157ef62cebSEmmanuel Vadot
16*f126890aSEmmanuel Vadotselect:
17*f126890aSEmmanuel Vadot  properties:
18*f126890aSEmmanuel Vadot    compatible:
19*f126890aSEmmanuel Vadot      enum:
20*f126890aSEmmanuel Vadot        - snps,dwc-ahci
21*f126890aSEmmanuel Vadot        - snps,spear-ahci
22*f126890aSEmmanuel Vadot  required:
23*f126890aSEmmanuel Vadot    - compatible
24*f126890aSEmmanuel Vadot
257ef62cebSEmmanuel VadotallOf:
267ef62cebSEmmanuel Vadot  - $ref: snps,dwc-ahci-common.yaml#
277ef62cebSEmmanuel Vadot
287ef62cebSEmmanuel Vadotproperties:
297ef62cebSEmmanuel Vadot  compatible:
307ef62cebSEmmanuel Vadot    oneOf:
317ef62cebSEmmanuel Vadot      - description: Synopsys AHCI SATA-compatible devices
327ef62cebSEmmanuel Vadot        const: snps,dwc-ahci
337ef62cebSEmmanuel Vadot      - description: SPEAr1340 AHCI SATA device
347ef62cebSEmmanuel Vadot        const: snps,spear-ahci
357ef62cebSEmmanuel Vadot
367ef62cebSEmmanuel VadotpatternProperties:
377ef62cebSEmmanuel Vadot  "^sata-port@[0-9a-e]$":
387ef62cebSEmmanuel Vadot    $ref: /schemas/ata/snps,dwc-ahci-common.yaml#/$defs/dwc-ahci-port
397ef62cebSEmmanuel Vadot
407ef62cebSEmmanuel Vadot    unevaluatedProperties: false
417ef62cebSEmmanuel Vadot
427ef62cebSEmmanuel Vadotrequired:
437ef62cebSEmmanuel Vadot  - compatible
447ef62cebSEmmanuel Vadot  - reg
457ef62cebSEmmanuel Vadot  - interrupts
467ef62cebSEmmanuel Vadot
477ef62cebSEmmanuel VadotunevaluatedProperties: false
487ef62cebSEmmanuel Vadot
497ef62cebSEmmanuel Vadotexamples:
507ef62cebSEmmanuel Vadot  - |
517ef62cebSEmmanuel Vadot    #include <dt-bindings/interrupt-controller/arm-gic.h>
527ef62cebSEmmanuel Vadot    #include <dt-bindings/ata/ahci.h>
537ef62cebSEmmanuel Vadot
547ef62cebSEmmanuel Vadot    sata@122f0000 {
557ef62cebSEmmanuel Vadot      compatible = "snps,dwc-ahci";
567ef62cebSEmmanuel Vadot      reg = <0x122F0000 0x1ff>;
577ef62cebSEmmanuel Vadot      #address-cells = <1>;
587ef62cebSEmmanuel Vadot      #size-cells = <0>;
597ef62cebSEmmanuel Vadot
607ef62cebSEmmanuel Vadot      interrupts = <GIC_SPI 115 IRQ_TYPE_LEVEL_HIGH>;
617ef62cebSEmmanuel Vadot
627ef62cebSEmmanuel Vadot      clocks = <&clock1>, <&clock2>;
637ef62cebSEmmanuel Vadot      clock-names = "aclk", "ref";
647ef62cebSEmmanuel Vadot
657ef62cebSEmmanuel Vadot      phys = <&sata_phy>;
667ef62cebSEmmanuel Vadot      phy-names = "sata-phy";
677ef62cebSEmmanuel Vadot
687ef62cebSEmmanuel Vadot      ports-implemented = <0x1>;
697ef62cebSEmmanuel Vadot
707ef62cebSEmmanuel Vadot      sata-port@0 {
717ef62cebSEmmanuel Vadot        reg = <0>;
727ef62cebSEmmanuel Vadot
737ef62cebSEmmanuel Vadot        hba-port-cap = <HBA_PORT_FBSCP>;
747ef62cebSEmmanuel Vadot
757ef62cebSEmmanuel Vadot        snps,tx-ts-max = <512>;
767ef62cebSEmmanuel Vadot        snps,rx-ts-max = <512>;
777ef62cebSEmmanuel Vadot      };
787ef62cebSEmmanuel Vadot    };
797ef62cebSEmmanuel Vadot
807ef62cebSEmmanuel Vadot...
81