xref: /freebsd/sys/contrib/device-tree/Bindings/ata/snps,dwc-ahci-common.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-common.yaml#
57ef62cebSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
67ef62cebSEmmanuel Vadot
77ef62cebSEmmanuel Vadottitle: Synopsys DWC AHCI SATA controller properties
87ef62cebSEmmanuel Vadot
97ef62cebSEmmanuel Vadotmaintainers:
107ef62cebSEmmanuel Vadot  - Serge Semin <fancer.lancer@gmail.com>
117ef62cebSEmmanuel Vadot
127ef62cebSEmmanuel Vadotdescription:
137ef62cebSEmmanuel Vadot  This document defines device tree schema for the generic Synopsys DWC
147ef62cebSEmmanuel Vadot  AHCI controller properties.
157ef62cebSEmmanuel Vadot
167ef62cebSEmmanuel Vadotselect: false
177ef62cebSEmmanuel Vadot
187ef62cebSEmmanuel VadotallOf:
197ef62cebSEmmanuel Vadot  - $ref: ahci-common.yaml#
207ef62cebSEmmanuel Vadot
217ef62cebSEmmanuel Vadotproperties:
227ef62cebSEmmanuel Vadot  reg:
237ef62cebSEmmanuel Vadot    maxItems: 1
247ef62cebSEmmanuel Vadot
257ef62cebSEmmanuel Vadot  interrupts:
267ef62cebSEmmanuel Vadot    maxItems: 1
277ef62cebSEmmanuel Vadot
287ef62cebSEmmanuel Vadot  clocks:
297ef62cebSEmmanuel Vadot    description:
307ef62cebSEmmanuel Vadot      Basic DWC AHCI SATA clock sources like application AXI/AHB BIU clock,
317ef62cebSEmmanuel Vadot      PM-alive clock, RxOOB detection clock, embedded PHYs reference (Rx/Tx)
327ef62cebSEmmanuel Vadot      clock, etc.
337ef62cebSEmmanuel Vadot    minItems: 1
34*f126890aSEmmanuel Vadot    maxItems: 6
357ef62cebSEmmanuel Vadot
367ef62cebSEmmanuel Vadot  clock-names:
377ef62cebSEmmanuel Vadot    minItems: 1
38*f126890aSEmmanuel Vadot    maxItems: 6
397ef62cebSEmmanuel Vadot    items:
407ef62cebSEmmanuel Vadot      oneOf:
417ef62cebSEmmanuel Vadot        - description: Application APB/AHB/AXI BIU clock
427ef62cebSEmmanuel Vadot          enum:
437ef62cebSEmmanuel Vadot            - pclk
447ef62cebSEmmanuel Vadot            - aclk
457ef62cebSEmmanuel Vadot            - hclk
467ef62cebSEmmanuel Vadot            - sata
477ef62cebSEmmanuel Vadot        - description: Power Module keep-alive clock
487ef62cebSEmmanuel Vadot          const: pmalive
497ef62cebSEmmanuel Vadot        - description: RxOOB detection clock
507ef62cebSEmmanuel Vadot          const: rxoob
51*f126890aSEmmanuel Vadot        - description: PHY Transmit Clock
52*f126890aSEmmanuel Vadot          const: asic
53*f126890aSEmmanuel Vadot        - description: PHY Receive Clock
54*f126890aSEmmanuel Vadot          const: rbc
557ef62cebSEmmanuel Vadot        - description: SATA Ports reference clock
567ef62cebSEmmanuel Vadot          const: ref
577ef62cebSEmmanuel Vadot
587ef62cebSEmmanuel Vadot  resets:
597ef62cebSEmmanuel Vadot    description:
607ef62cebSEmmanuel Vadot      At least basic application and reference clock domains resets are
617ef62cebSEmmanuel Vadot      normally supported by the DWC AHCI SATA controller.
627ef62cebSEmmanuel Vadot    minItems: 1
637ef62cebSEmmanuel Vadot    maxItems: 4
647ef62cebSEmmanuel Vadot
657ef62cebSEmmanuel Vadot  reset-names:
667ef62cebSEmmanuel Vadot    minItems: 1
677ef62cebSEmmanuel Vadot    maxItems: 4
687ef62cebSEmmanuel Vadot    items:
697ef62cebSEmmanuel Vadot      oneOf:
707ef62cebSEmmanuel Vadot        - description: Application AHB/AXI BIU clock domain reset control
717ef62cebSEmmanuel Vadot          enum:
727ef62cebSEmmanuel Vadot            - arst
737ef62cebSEmmanuel Vadot            - hrst
747ef62cebSEmmanuel Vadot        - description: Power Module keep-alive clock domain reset control
757ef62cebSEmmanuel Vadot          const: pmalive
767ef62cebSEmmanuel Vadot        - description: RxOOB detection clock domain reset control
777ef62cebSEmmanuel Vadot          const: rxoob
787ef62cebSEmmanuel Vadot        - description: Reference clock domain reset control
797ef62cebSEmmanuel Vadot          const: ref
807ef62cebSEmmanuel Vadot
817ef62cebSEmmanuel VadotpatternProperties:
827ef62cebSEmmanuel Vadot  "^sata-port@[0-9a-e]$":
837ef62cebSEmmanuel Vadot    $ref: '#/$defs/dwc-ahci-port'
847ef62cebSEmmanuel Vadot
857ef62cebSEmmanuel VadotadditionalProperties: true
867ef62cebSEmmanuel Vadot
877ef62cebSEmmanuel Vadot$defs:
887ef62cebSEmmanuel Vadot  dwc-ahci-port:
897ef62cebSEmmanuel Vadot    $ref: /schemas/ata/ahci-common.yaml#/$defs/ahci-port
907ef62cebSEmmanuel Vadot
917ef62cebSEmmanuel Vadot    properties:
927ef62cebSEmmanuel Vadot      reg:
937ef62cebSEmmanuel Vadot        minimum: 0
947ef62cebSEmmanuel Vadot        maximum: 7
957ef62cebSEmmanuel Vadot
967ef62cebSEmmanuel Vadot      snps,tx-ts-max:
977ef62cebSEmmanuel Vadot        $ref: /schemas/types.yaml#/definitions/uint32
987ef62cebSEmmanuel Vadot        description: Maximal size of Tx DMA transactions in FIFO words
997ef62cebSEmmanuel Vadot        enum: [ 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024 ]
1007ef62cebSEmmanuel Vadot
1017ef62cebSEmmanuel Vadot      snps,rx-ts-max:
1027ef62cebSEmmanuel Vadot        $ref: /schemas/types.yaml#/definitions/uint32
1037ef62cebSEmmanuel Vadot        description: Maximal size of Rx DMA transactions in FIFO words
1047ef62cebSEmmanuel Vadot        enum: [ 1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024 ]
1057ef62cebSEmmanuel Vadot
1067ef62cebSEmmanuel Vadot...
107