xref: /freebsd/sys/contrib/device-tree/Bindings/ata/sata-common.yaml (revision a64729f5077d77e13b9497cb33ecb3c82e606ee8)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/ata/sata-common.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Common Properties for Serial AT attachment (SATA) controllers
8
9maintainers:
10  - Linus Walleij <linus.walleij@linaro.org>
11
12description: |
13  This document defines device tree properties common to most Serial
14  AT attachment (SATA) storage devices. It doesn't constitute a device tree
15  binding specification by itself but is meant to be referenced by device
16  tree bindings.
17
18  The SATA controller-specific device tree bindings are responsible for
19  defining whether each property is required or optional.
20
21properties:
22  $nodename:
23    pattern: "^sata(@.*)?$"
24    description:
25      Specifies the host controller node. SATA host controller nodes are named
26      "sata"
27
28  "#address-cells":
29    const: 1
30
31  "#size-cells":
32    const: 0
33
34  dma-coherent: true
35
36patternProperties:
37  "^sata-port@[0-9a-e]$":
38    $ref: '#/$defs/sata-port'
39    description: |
40      DT nodes for ports connected on the SATA host. The SATA port
41      nodes will be named "sata-port".
42
43additionalProperties: true
44
45$defs:
46  sata-port:
47    type: object
48
49    properties:
50      reg:
51        minimum: 0
52        description:
53          The ID number of the SATA port. Aside with being directly used,
54          each port can have a Port Multiplier attached thus allowing to
55          access more than one drive by means of a single SATA port.
56
57...
58