* [PATCH v3] RFC: dt-bindings: Create DT bindings for SATA controllers
@ 2020-01-10 8:17 Linus Walleij
2020-01-11 15:29 ` Sergei Shtylyov
0 siblings, 1 reply; 2+ messages in thread
From: Linus Walleij @ 2020-01-10 8:17 UTC (permalink / raw)
To: Rob Herring, devicetree, Jens Axboe; +Cc: linux-ide, Linus Walleij
I need to create subnodes for drives connected to SATA
host controllers, and this needs to be supported
generally, so create a common YAML binding for
"sata" that will support subnodes with ports.
This has been designed as a subset of
ata/ahci-platform.txt with the bare essentials and
should be possible to extend or superset to cover the
common bindings.
Cc: Rob Herring <robh+dt@kernel.org>
Cc: devicetree@vger.kernel.org
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
---
ChangeLog v2->v3:
- Split off into its own RFC patch
- Only support sata-port@ in this binding
- Opt to support devices 0..14 on the sata-port in
line with ahci-platforn.txt not modeling the port
multiplier in the device tree at all.
ChangeLog v1->v2:
- Use ide@ and sata@ as node names.
- Use ide-port@ and sata-port@ for the ports toward the
drives, rather than letting the subnodes be the drives
themselves.
---
.../devicetree/bindings/ata/sata-common.yaml | 51 +++++++++++++++++++
1 file changed, 51 insertions(+)
create mode 100644 Documentation/devicetree/bindings/ata/sata-common.yaml
diff --git a/Documentation/devicetree/bindings/ata/sata-common.yaml b/Documentation/devicetree/bindings/ata/sata-common.yaml
new file mode 100644
index 000000000000..9f6718a69dfd
--- /dev/null
+++ b/Documentation/devicetree/bindings/ata/sata-common.yaml
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/ata/sata-common.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Common Properties for Serial AT attachment (SATA) controllers
+
+maintainers:
+ - Linus Walleij <linus.walleij@linaro.org>
+
+description: |
+ This document defines device tree properties common to most Serial
+ AT attachment (SATA) storage devices. It doesn't constitue a device tree
+ binding specification by itself but is meant to be referenced by device
+ tree bindings.
+
+ The SATA controller-specific device tree bindings are responsible for
+ defining whether each property is required or optional.
+
+properties:
+ $nodename:
+ pattern: "^sata(@.*)?$"
+ description:
+ Specifies the host controller node. SATA host controller nodes are named
+ "sata"
+
+ "#address-cells":
+ const: 1
+
+ "#size-cells":
+ const: 0
+
+patternProperties:
+ "^sata-port@[0-1]$":
+ description: |
+ DT nodes for ports connected on the SATA host. The master drive will have
+ ID number 0 and the slave drive will have ID number 1. The SATA port
+ nodes will be named "sata-port".
+ type: object
+
+ properties:
+ reg:
+ minimum: 0
+ maximum: 14
+ description:
+ The ID number of the drive port SATA can potentially use a port
+ multiplier making it possible to connect up to 15 disks to a single
+ SATA port.
+
+...
--
2.21.0
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH v3] RFC: dt-bindings: Create DT bindings for SATA controllers
2020-01-10 8:17 [PATCH v3] RFC: dt-bindings: Create DT bindings for SATA controllers Linus Walleij
@ 2020-01-11 15:29 ` Sergei Shtylyov
0 siblings, 0 replies; 2+ messages in thread
From: Sergei Shtylyov @ 2020-01-11 15:29 UTC (permalink / raw)
To: Linus Walleij, Rob Herring, devicetree, Jens Axboe; +Cc: linux-ide
On 01/10/2020 11:17 AM, Linus Walleij wrote:
> I need to create subnodes for drives connected to SATA
> host controllers, and this needs to be supported
> generally, so create a common YAML binding for
> "sata" that will support subnodes with ports.
>
> This has been designed as a subset of
> ata/ahci-platform.txt with the bare essentials and
> should be possible to extend or superset to cover the
> common bindings.
>
> Cc: Rob Herring <robh+dt@kernel.org>
> Cc: devicetree@vger.kernel.org
> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
> ---
> ChangeLog v2->v3:
> - Split off into its own RFC patch
> - Only support sata-port@ in this binding
> - Opt to support devices 0..14 on the sata-port in
> line with ahci-platforn.txt not modeling the port
> multiplier in the device tree at all.
> ChangeLog v1->v2:
> - Use ide@ and sata@ as node names.
> - Use ide-port@ and sata-port@ for the ports toward the
> drives, rather than letting the subnodes be the drives
> themselves.
> ---
> .../devicetree/bindings/ata/sata-common.yaml | 51 +++++++++++++++++++
> 1 file changed, 51 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/ata/sata-common.yaml
>
> diff --git a/Documentation/devicetree/bindings/ata/sata-common.yaml b/Documentation/devicetree/bindings/ata/sata-common.yaml
> new file mode 100644
> index 000000000000..9f6718a69dfd
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/ata/sata-common.yaml
> @@ -0,0 +1,51 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/ata/sata-common.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Common Properties for Serial AT attachment (SATA) controllers
> +
> +maintainers:
> + - Linus Walleij <linus.walleij@linaro.org>
> +
> +description: |
> + This document defines device tree properties common to most Serial
> + AT attachment (SATA) storage devices. It doesn't constitue a device tree
> + binding specification by itself but is meant to be referenced by device
> + tree bindings.
> +
> + The SATA controller-specific device tree bindings are responsible for
> + defining whether each property is required or optional.
> +
> +properties:
> + $nodename:
> + pattern: "^sata(@.*)?$"
> + description:
> + Specifies the host controller node. SATA host controller nodes are named
> + "sata"
> +
> + "#address-cells":
> + const: 1
> +
> + "#size-cells":
> + const: 0
> +
> +patternProperties:
> + "^sata-port@[0-1]$":
> + description: |
> + DT nodes for ports connected on the SATA host. The master drive will have
> + ID number 0 and the slave drive will have ID number 1. The SATA port
Mhm... SATA doesn't have master/slave drives, there's only 1 drive pert port, IIRC.
> + nodes will be named "sata-port".
> + type: object
> +
> + properties:
> + reg:
> + minimum: 0
> + maximum: 14
> + description:
> + The ID number of the drive port SATA can potentially use a port
> + multiplier making it possible to connect up to 15 disks to a single
> + SATA port.
> +
> +...
MBR, Sergei
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-01-11 15:29 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-01-10 8:17 [PATCH v3] RFC: dt-bindings: Create DT bindings for SATA controllers Linus Walleij
2020-01-11 15:29 ` Sergei Shtylyov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).