diff mbox series

[V2] dt-bindings: ata: ahci-ceva: convert to yaml

Message ID 20220613144651.7300-1-piyush.mehta@xilinx.com
State New
Headers show
Series [V2] dt-bindings: ata: ahci-ceva: convert to yaml | expand

Commit Message

Piyush Mehta June 13, 2022, 2:46 p.m. UTC
Convert the ahci-ceva doc to yaml.

Signed-off-by: Piyush Mehta <piyush.mehta@xilinx.com>
---
Changes for V2:
- Corrected the patch --prefix V3 to V2.
- Added Required properties.
---
 .../devicetree/bindings/ata/ahci-ceva.txt     |  63 ------
 .../devicetree/bindings/ata/ahci-ceva.yaml    | 197 ++++++++++++++++++
 2 files changed, 197 insertions(+), 63 deletions(-)
 delete mode 100644 Documentation/devicetree/bindings/ata/ahci-ceva.txt
 create mode 100644 Documentation/devicetree/bindings/ata/ahci-ceva.yaml

Comments

Rob Herring (Arm) June 14, 2022, 5:55 p.m. UTC | #1
On Mon, 13 Jun 2022 20:16:51 +0530, Piyush Mehta wrote:
> Convert the ahci-ceva doc to yaml.
> 
> Signed-off-by: Piyush Mehta <piyush.mehta@xilinx.com>
> ---
> Changes for V2:
> - Corrected the patch --prefix V3 to V2.
> - Added Required properties.
> ---
>  .../devicetree/bindings/ata/ahci-ceva.txt     |  63 ------
>  .../devicetree/bindings/ata/ahci-ceva.yaml    | 197 ++++++++++++++++++
>  2 files changed, 197 insertions(+), 63 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/ata/ahci-ceva.txt
>  create mode 100644 Documentation/devicetree/bindings/ata/ahci-ceva.yaml
> 

Running 'make dtbs_check' with the schema in this patch gives the
following warnings. Consider if they are expected or the schema is
incorrect. These may not be new warnings.

Note that it is not yet a requirement to have 0 warnings for dtbs_check.
This will change in the future.

Full log is available here: https://patchwork.ozlabs.org/patch/


ahci@fd0c0000: 'iommus' does not match any of the regexes: 'pinctrl-[0-9]+'
	arch/arm64/boot/dts/xilinx/avnet-ultra96-rev1.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-sm-k26-revA.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-smk-k26-revA.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zc1232-revA.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zc1254-revA.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zc1275-revA.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zc1751-xm016-dc2.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zc1751-xm018-dc4.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zc1751-xm019-dc5.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zcu100-revC.dtb

ahci@fd0c0000: 'iommus', 'phy-names' do not match any of the regexes: 'pinctrl-[0-9]+'
	arch/arm64/boot/dts/xilinx/zynqmp-zc1751-xm015-dc1.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zc1751-xm017-dc3.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zcu102-rev1.0.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zcu102-rev1.1.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zcu102-revA.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zcu102-revB.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zcu104-revA.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zcu104-revC.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zcu106-revA.dtb
	arch/arm64/boot/dts/xilinx/zynqmp-zcu111-revA.dtb
Rob Herring (Arm) June 14, 2022, 7:48 p.m. UTC | #2
On Mon, Jun 13, 2022 at 08:16:51PM +0530, Piyush Mehta wrote:
> Convert the ahci-ceva doc to yaml.
> 
> Signed-off-by: Piyush Mehta <piyush.mehta@xilinx.com>
> ---
> Changes for V2:
> - Corrected the patch --prefix V3 to V2.
> - Added Required properties.
> ---
>  .../devicetree/bindings/ata/ahci-ceva.txt     |  63 ------
>  .../devicetree/bindings/ata/ahci-ceva.yaml    | 197 ++++++++++++++++++
>  2 files changed, 197 insertions(+), 63 deletions(-)
>  delete mode 100644 Documentation/devicetree/bindings/ata/ahci-ceva.txt
>  create mode 100644 Documentation/devicetree/bindings/ata/ahci-ceva.yaml
> 
> diff --git a/Documentation/devicetree/bindings/ata/ahci-ceva.txt b/Documentation/devicetree/bindings/ata/ahci-ceva.txt
> deleted file mode 100644
> index bfb6da0281ec..000000000000
> --- a/Documentation/devicetree/bindings/ata/ahci-ceva.txt
> +++ /dev/null
> @@ -1,63 +0,0 @@
> -Binding for CEVA AHCI SATA Controller
> -
> -Required properties:
> -  - reg: Physical base address and size of the controller's register area.
> -  - compatible: Compatibility string. Must be 'ceva,ahci-1v84'.
> -  - clocks: Input clock specifier. Refer to common clock bindings.
> -  - interrupts: Interrupt specifier. Refer to interrupt binding.
> -  - ceva,p0-cominit-params: OOB timing value for COMINIT parameter for port 0.
> -  - ceva,p1-cominit-params: OOB timing value for COMINIT parameter for port 1.
> -			The fields for the above parameter must be as shown below:
> -			ceva,pN-cominit-params = /bits/ 8 <CIBGMN CIBGMX CIBGN CINMP>;
> -			CINMP : COMINIT Negate Minimum Period.
> -			CIBGN : COMINIT Burst Gap Nominal.
> -			CIBGMX: COMINIT Burst Gap Maximum.
> -			CIBGMN: COMINIT Burst Gap Minimum.
> -  - ceva,p0-comwake-params: OOB timing value for COMWAKE parameter for port 0.
> -  - ceva,p1-comwake-params: OOB timing value for COMWAKE parameter for port 1.
> -			The fields for the above parameter must be as shown below:
> -			ceva,pN-comwake-params = /bits/ 8 <CWBGMN CWBGMX CWBGN CWNMP>;
> -			CWBGMN: COMWAKE Burst Gap Minimum.
> -			CWBGMX: COMWAKE Burst Gap Maximum.
> -			CWBGN: COMWAKE Burst Gap Nominal.
> -			CWNMP: COMWAKE Negate Minimum Period.
> -  - ceva,p0-burst-params: Burst timing value for COM parameter for port 0.
> -  - ceva,p1-burst-params: Burst timing value for COM parameter for port 1.
> -			The fields for the above parameter must be as shown below:
> -			ceva,pN-burst-params = /bits/ 8 <BMX BNM SFD PTST>;
> -			BMX: COM Burst Maximum.
> -			BNM: COM Burst Nominal.
> -			SFD: Signal Failure Detection value.
> -			PTST: Partial to Slumber timer value.
> -  - ceva,p0-retry-params: Retry interval timing value for port 0.
> -  - ceva,p1-retry-params: Retry interval timing value for port 1.
> -			The fields for the above parameter must be as shown below:
> -			ceva,pN-retry-params = /bits/ 16 <RIT RCT>;
> -			RIT:  Retry Interval Timer.
> -			RCT:  Rate Change Timer.
> -
> -Optional properties:
> -  - ceva,broken-gen2: limit to gen1 speed instead of gen2.
> -  - phys: phandle for the PHY device
> -  - resets: phandle to the reset controller for the SATA IP
> -
> -Examples:
> -	ahci@fd0c0000 {
> -		compatible = "ceva,ahci-1v84";
> -		reg = <0xfd0c0000 0x200>;
> -		interrupt-parent = <&gic>;
> -		interrupts = <0 133 4>;
> -		clocks = <&clkc SATA_CLK_ID>;
> -		ceva,p0-cominit-params = /bits/ 8 <0x0F 0x25 0x18 0x29>;
> -		ceva,p0-comwake-params = /bits/ 8 <0x04 0x0B 0x08 0x0F>;
> -		ceva,p0-burst-params = /bits/ 8 <0x0A 0x08 0x4A 0x06>;
> -		ceva,p0-retry-params = /bits/ 16 <0x0216 0x7F06>;
> -
> -		ceva,p1-cominit-params = /bits/ 8 <0x0F 0x25 0x18 0x29>;
> -		ceva,p1-comwake-params = /bits/ 8 <0x04 0x0B 0x08 0x0F>;
> -		ceva,p1-burst-params = /bits/ 8 <0x0A 0x08 0x4A 0x06>;
> -		ceva,p1-retry-params = /bits/ 16 <0x0216 0x7F06>;
> -		ceva,broken-gen2;
> -		phys = <&psgtr 1 PHY_TYPE_SATA 1 1>;
> -		resets = <&zynqmp_reset ZYNQMP_RESET_SATA>;
> -	};
> diff --git a/Documentation/devicetree/bindings/ata/ahci-ceva.yaml b/Documentation/devicetree/bindings/ata/ahci-ceva.yaml
> new file mode 100644
> index 000000000000..71f9ff0e2844
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/ata/ahci-ceva.yaml
> @@ -0,0 +1,197 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/ata/ahci-ceva.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Ceva AHCI SATA Controller
> +
> +maintainers:
> +  - Piyush Mehta <piyush.mehta@xilinx.com>
> +
> +description: |
> +  The Ceva SATA controller mostly conforms to the AHCI interface with some
> +  special extensions to add functionality, is a high-performance dual-port
> +  SATA host controller with an AHCI compliant command layer which supports
> +  advanced features such as native command queuing and frame information
> +  structure (FIS) based switching for systems employing port multipliers.
> +
> +properties:
> +  compatible:
> +    const: ceva,ahci-1v84
> +
> +  reg:
> +    maxItems: 1
> +
> +  clocks:
> +    maxItems: 1
> +
> +  interrupts:
> +    maxItems: 1
> +
> +  dma-coherent: true
> +
> +  power-domains:
> +    description: |
> +      Specifies a phandle to PM domain provider node.

Don't need generic descriptions for common properties.

> +    maxItems: 1
> +
> +  ceva,p0-cominit-params:
> +    $ref: /schemas/types.yaml#/definitions/uint8-array
> +    minItems: 4
> +    maxItems: 4
> +    description: |
> +      OOB timing value for COMINIT parameter for port 0.
> +      The fields for the above parameter must be as shown below:-
> +      ceva,p0-cominit-params = /bits/ 8 <CIBGMN CIBGMX CIBGN CINMP>;
> +      CINMP  - COMINIT Negate Minimum Period.
> +      CIBGN  - COMINIT Burst Gap Nominal.
> +      CIBGMX - COMINIT Burst Gap Maximum.
> +      CIBGMN - COMINIT Burst Gap Minimum.

Better described something like this:

items:
  - description: CINMP  - COMINIT Negate Minimum Period.
  - description: CIBGN  - COMINIT Burst Gap Nominal.
  - ...
  - ...


> +
> +  ceva,p0-comwake-params:
> +    $ref: /schemas/types.yaml#/definitions/uint8-array
> +    minItems: 4
> +    maxItems: 4
> +    description: |
> +      OOB timing value for COMWAKE parameter for port 0.
> +      The fields for the above parameter must be as shown below:-
> +      ceva,p0-comwake-params = /bits/ 8 <CWBGMN CWBGMX CWBGN CWNMP>;
> +      CWBGMN - COMWAKE Burst Gap Minimum.
> +      CWBGMX - COMWAKE Burst Gap Maximum.
> +      CWBGN  - COMWAKE Burst Gap Nominal.
> +      CWNMP  - COMWAKE Negate Minimum Period.
> +
> +  ceva,p0-burst-params:
> +    $ref: /schemas/types.yaml#/definitions/uint8-array
> +    minItems: 4
> +    maxItems: 4
> +    description: |
> +      Burst timing value for COM parameter for port 0.
> +      The fields for the above parameter must be as shown below:-
> +      ceva,p0-burst-params = /bits/ 8 <BMX BNM SFD PTST>;
> +      BMX  - COM Burst Maximum.
> +      BNM  - COM Burst Nominal.
> +      SFD  - Signal Failure Detection value.
> +      PTST - Partial to Slumber timer value.
> +
> +  ceva,p0-retry-params:
> +    $ref: /schemas/types.yaml#/definitions/uint16-array
> +    minItems: 2
> +    maxItems: 2
> +    description: |
> +      Retry interval timing value for port 0.
> +      The fields for the above parameter must be as shown below:-
> +      ceva,p0-retry-params = /bits/ 16 <RIT RCT>;
> +      RIT - Retry Interval Timer.
> +      RCT - Rate Change Timer.
> +
> +  ceva,p1-cominit-params:
> +    $ref: /schemas/types.yaml#/definitions/uint8-array
> +    minItems: 4
> +    maxItems: 4
> +    description: |
> +      OOB timing value for COMINIT parameter for port 1.
> +      The fields for the above parameter must be as shown below:-
> +      ceva,p1-cominit-params = /bits/ 8 <CIBGMN CIBGMX CIBGN CINMP>;
> +      CINMP  - COMINIT Negate Minimum Period.
> +      CIBGN  - COMINIT Burst Gap Nominal.
> +      CIBGMX - COMINIT Burst Gap Maximum.
> +      CIBGMN - COMINIT Burst Gap Minimum.
> +
> +  ceva,p1-comwake-params:
> +    $ref: /schemas/types.yaml#/definitions/uint8-array
> +    minItems: 4
> +    maxItems: 4
> +    description: |
> +      OOB timing value for COMWAKE parameter for port 1.
> +      The fields for the above parameter must be as shown below:-
> +      ceva,p1-comwake-params = /bits/ 8 <CWBGMN CWBGMX CWBGN CWNMP>;
> +      CWBGMN - COMWAKE Burst Gap Minimum.
> +      CWBGMX - COMWAKE Burst Gap Maximum.
> +      CWBGN  - COMWAKE Burst Gap Nominal.
> +      CWNMP  - COMWAKE Negate Minimum Period.
> +
> +  ceva,p1-burst-params:
> +    $ref: /schemas/types.yaml#/definitions/uint8-array
> +    minItems: 4
> +    maxItems: 4
> +    description: |
> +      Burst timing value for COM parameter for port 1.
> +      The fields for the above parameter must be as shown below:-
> +      ceva,p1-burst-params = /bits/ 8 <BMX BNM SFD PTST>;
> +      BMX  - COM Burst Maximum.
> +      BNM  - COM Burst Nominal.
> +      SFD  - Signal Failure Detection value.
> +      PTST - Partial to Slumber timer value.
> +
> +  ceva,p1-retry-params:
> +    $ref: /schemas/types.yaml#/definitions/uint16-array
> +    minItems: 2
> +    maxItems: 2
> +    description: |
> +      Retry interval timing value for port 1.
> +      The fields for the above parameter must be as shown below:-
> +      ceva,pN-retry-params = /bits/ 16 <RIT RCT>;
> +      RIT - Retry Interval Timer.
> +      RCT - Rate Change Timer.
> +
> +  ceva,broken-gen2:
> +    $ref: /schemas/types.yaml#/definitions/flag
> +    description: |
> +      limit to gen1 speed instead of gen2.
> +
> +  phys:
> +    description: |
> +      Phandle for the PHY device.

Drop

> +    maxItems: 1
> +
> +  resets:
> +    maxItems: 1
> +
> +  '#stream-id-cells':
> +    const: 4

? Deprecated and not in any dts file. Drop


> +
> +required:
> +  - compatible
> +  - reg
> +  - clocks
> +  - interrupts
> +  - ceva,p0-cominit-params
> +  - ceva,p0-comwake-params
> +  - ceva,p0-burst-params
> +  - ceva,p0-retry-params
> +  - ceva,p1-cominit-params
> +  - ceva,p1-comwake-params
> +  - ceva,p1-burst-params
> +  - ceva,p1-retry-params
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/clock/xlnx-zynqmp-clk.h>
> +    #include <dt-bindings/interrupt-controller/irq.h>
> +    #include <dt-bindings/power/xlnx-zynqmp-power.h>
> +    #include <dt-bindings/reset/xlnx-zynqmp-resets.h>
> +    #include <dt-bindings/clock/xlnx-zynqmp-clk.h>
> +    #include <dt-bindings/phy/phy.h>
> +
> +    sata: ahci@fd0c0000 {
> +        compatible = "ceva,ahci-1v84";
> +        reg = <0xfd0c0000 0x200>;
> +        interrupt-parent = <&gic>;
> +        interrupts = <0 133 IRQ_TYPE_LEVEL_HIGH>;
> +        clocks = <&zynqmp_clk SATA_REF>;
> +        ceva,p0-cominit-params = /bits/ 8 <0x0F 0x25 0x18 0x29>;
> +        ceva,p0-comwake-params = /bits/ 8 <0x04 0x0B 0x08 0x0F>;
> +        ceva,p0-burst-params = /bits/ 8 <0x0A 0x08 0x4A 0x06>;
> +        ceva,p0-retry-params = /bits/ 16 <0x0216 0x7F06>;
> +        ceva,p1-cominit-params = /bits/ 8 <0x0F 0x25 0x18 0x29>;
> +        ceva,p1-comwake-params = /bits/ 8 <0x04 0x0B 0x08 0x0F>;
> +        ceva,p1-burst-params = /bits/ 8 <0x0A 0x08 0x4A 0x06>;
> +        ceva,p1-retry-params = /bits/ 16 <0x0216 0x7F06>;
> +        ceva,broken-gen2;
> +        phys = <&psgtr 1 PHY_TYPE_SATA 1 1>;
> +        resets = <&zynqmp_reset ZYNQMP_RESET_SATA>;
> +    };
> -- 
> 2.17.1
>
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/ata/ahci-ceva.txt b/Documentation/devicetree/bindings/ata/ahci-ceva.txt
deleted file mode 100644
index bfb6da0281ec..000000000000
--- a/Documentation/devicetree/bindings/ata/ahci-ceva.txt
+++ /dev/null
@@ -1,63 +0,0 @@ 
-Binding for CEVA AHCI SATA Controller
-
-Required properties:
-  - reg: Physical base address and size of the controller's register area.
-  - compatible: Compatibility string. Must be 'ceva,ahci-1v84'.
-  - clocks: Input clock specifier. Refer to common clock bindings.
-  - interrupts: Interrupt specifier. Refer to interrupt binding.
-  - ceva,p0-cominit-params: OOB timing value for COMINIT parameter for port 0.
-  - ceva,p1-cominit-params: OOB timing value for COMINIT parameter for port 1.
-			The fields for the above parameter must be as shown below:
-			ceva,pN-cominit-params = /bits/ 8 <CIBGMN CIBGMX CIBGN CINMP>;
-			CINMP : COMINIT Negate Minimum Period.
-			CIBGN : COMINIT Burst Gap Nominal.
-			CIBGMX: COMINIT Burst Gap Maximum.
-			CIBGMN: COMINIT Burst Gap Minimum.
-  - ceva,p0-comwake-params: OOB timing value for COMWAKE parameter for port 0.
-  - ceva,p1-comwake-params: OOB timing value for COMWAKE parameter for port 1.
-			The fields for the above parameter must be as shown below:
-			ceva,pN-comwake-params = /bits/ 8 <CWBGMN CWBGMX CWBGN CWNMP>;
-			CWBGMN: COMWAKE Burst Gap Minimum.
-			CWBGMX: COMWAKE Burst Gap Maximum.
-			CWBGN: COMWAKE Burst Gap Nominal.
-			CWNMP: COMWAKE Negate Minimum Period.
-  - ceva,p0-burst-params: Burst timing value for COM parameter for port 0.
-  - ceva,p1-burst-params: Burst timing value for COM parameter for port 1.
-			The fields for the above parameter must be as shown below:
-			ceva,pN-burst-params = /bits/ 8 <BMX BNM SFD PTST>;
-			BMX: COM Burst Maximum.
-			BNM: COM Burst Nominal.
-			SFD: Signal Failure Detection value.
-			PTST: Partial to Slumber timer value.
-  - ceva,p0-retry-params: Retry interval timing value for port 0.
-  - ceva,p1-retry-params: Retry interval timing value for port 1.
-			The fields for the above parameter must be as shown below:
-			ceva,pN-retry-params = /bits/ 16 <RIT RCT>;
-			RIT:  Retry Interval Timer.
-			RCT:  Rate Change Timer.
-
-Optional properties:
-  - ceva,broken-gen2: limit to gen1 speed instead of gen2.
-  - phys: phandle for the PHY device
-  - resets: phandle to the reset controller for the SATA IP
-
-Examples:
-	ahci@fd0c0000 {
-		compatible = "ceva,ahci-1v84";
-		reg = <0xfd0c0000 0x200>;
-		interrupt-parent = <&gic>;
-		interrupts = <0 133 4>;
-		clocks = <&clkc SATA_CLK_ID>;
-		ceva,p0-cominit-params = /bits/ 8 <0x0F 0x25 0x18 0x29>;
-		ceva,p0-comwake-params = /bits/ 8 <0x04 0x0B 0x08 0x0F>;
-		ceva,p0-burst-params = /bits/ 8 <0x0A 0x08 0x4A 0x06>;
-		ceva,p0-retry-params = /bits/ 16 <0x0216 0x7F06>;
-
-		ceva,p1-cominit-params = /bits/ 8 <0x0F 0x25 0x18 0x29>;
-		ceva,p1-comwake-params = /bits/ 8 <0x04 0x0B 0x08 0x0F>;
-		ceva,p1-burst-params = /bits/ 8 <0x0A 0x08 0x4A 0x06>;
-		ceva,p1-retry-params = /bits/ 16 <0x0216 0x7F06>;
-		ceva,broken-gen2;
-		phys = <&psgtr 1 PHY_TYPE_SATA 1 1>;
-		resets = <&zynqmp_reset ZYNQMP_RESET_SATA>;
-	};
diff --git a/Documentation/devicetree/bindings/ata/ahci-ceva.yaml b/Documentation/devicetree/bindings/ata/ahci-ceva.yaml
new file mode 100644
index 000000000000..71f9ff0e2844
--- /dev/null
+++ b/Documentation/devicetree/bindings/ata/ahci-ceva.yaml
@@ -0,0 +1,197 @@ 
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/ata/ahci-ceva.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Ceva AHCI SATA Controller
+
+maintainers:
+  - Piyush Mehta <piyush.mehta@xilinx.com>
+
+description: |
+  The Ceva SATA controller mostly conforms to the AHCI interface with some
+  special extensions to add functionality, is a high-performance dual-port
+  SATA host controller with an AHCI compliant command layer which supports
+  advanced features such as native command queuing and frame information
+  structure (FIS) based switching for systems employing port multipliers.
+
+properties:
+  compatible:
+    const: ceva,ahci-1v84
+
+  reg:
+    maxItems: 1
+
+  clocks:
+    maxItems: 1
+
+  interrupts:
+    maxItems: 1
+
+  dma-coherent: true
+
+  power-domains:
+    description: |
+      Specifies a phandle to PM domain provider node.
+    maxItems: 1
+
+  ceva,p0-cominit-params:
+    $ref: /schemas/types.yaml#/definitions/uint8-array
+    minItems: 4
+    maxItems: 4
+    description: |
+      OOB timing value for COMINIT parameter for port 0.
+      The fields for the above parameter must be as shown below:-
+      ceva,p0-cominit-params = /bits/ 8 <CIBGMN CIBGMX CIBGN CINMP>;
+      CINMP  - COMINIT Negate Minimum Period.
+      CIBGN  - COMINIT Burst Gap Nominal.
+      CIBGMX - COMINIT Burst Gap Maximum.
+      CIBGMN - COMINIT Burst Gap Minimum.
+
+  ceva,p0-comwake-params:
+    $ref: /schemas/types.yaml#/definitions/uint8-array
+    minItems: 4
+    maxItems: 4
+    description: |
+      OOB timing value for COMWAKE parameter for port 0.
+      The fields for the above parameter must be as shown below:-
+      ceva,p0-comwake-params = /bits/ 8 <CWBGMN CWBGMX CWBGN CWNMP>;
+      CWBGMN - COMWAKE Burst Gap Minimum.
+      CWBGMX - COMWAKE Burst Gap Maximum.
+      CWBGN  - COMWAKE Burst Gap Nominal.
+      CWNMP  - COMWAKE Negate Minimum Period.
+
+  ceva,p0-burst-params:
+    $ref: /schemas/types.yaml#/definitions/uint8-array
+    minItems: 4
+    maxItems: 4
+    description: |
+      Burst timing value for COM parameter for port 0.
+      The fields for the above parameter must be as shown below:-
+      ceva,p0-burst-params = /bits/ 8 <BMX BNM SFD PTST>;
+      BMX  - COM Burst Maximum.
+      BNM  - COM Burst Nominal.
+      SFD  - Signal Failure Detection value.
+      PTST - Partial to Slumber timer value.
+
+  ceva,p0-retry-params:
+    $ref: /schemas/types.yaml#/definitions/uint16-array
+    minItems: 2
+    maxItems: 2
+    description: |
+      Retry interval timing value for port 0.
+      The fields for the above parameter must be as shown below:-
+      ceva,p0-retry-params = /bits/ 16 <RIT RCT>;
+      RIT - Retry Interval Timer.
+      RCT - Rate Change Timer.
+
+  ceva,p1-cominit-params:
+    $ref: /schemas/types.yaml#/definitions/uint8-array
+    minItems: 4
+    maxItems: 4
+    description: |
+      OOB timing value for COMINIT parameter for port 1.
+      The fields for the above parameter must be as shown below:-
+      ceva,p1-cominit-params = /bits/ 8 <CIBGMN CIBGMX CIBGN CINMP>;
+      CINMP  - COMINIT Negate Minimum Period.
+      CIBGN  - COMINIT Burst Gap Nominal.
+      CIBGMX - COMINIT Burst Gap Maximum.
+      CIBGMN - COMINIT Burst Gap Minimum.
+
+  ceva,p1-comwake-params:
+    $ref: /schemas/types.yaml#/definitions/uint8-array
+    minItems: 4
+    maxItems: 4
+    description: |
+      OOB timing value for COMWAKE parameter for port 1.
+      The fields for the above parameter must be as shown below:-
+      ceva,p1-comwake-params = /bits/ 8 <CWBGMN CWBGMX CWBGN CWNMP>;
+      CWBGMN - COMWAKE Burst Gap Minimum.
+      CWBGMX - COMWAKE Burst Gap Maximum.
+      CWBGN  - COMWAKE Burst Gap Nominal.
+      CWNMP  - COMWAKE Negate Minimum Period.
+
+  ceva,p1-burst-params:
+    $ref: /schemas/types.yaml#/definitions/uint8-array
+    minItems: 4
+    maxItems: 4
+    description: |
+      Burst timing value for COM parameter for port 1.
+      The fields for the above parameter must be as shown below:-
+      ceva,p1-burst-params = /bits/ 8 <BMX BNM SFD PTST>;
+      BMX  - COM Burst Maximum.
+      BNM  - COM Burst Nominal.
+      SFD  - Signal Failure Detection value.
+      PTST - Partial to Slumber timer value.
+
+  ceva,p1-retry-params:
+    $ref: /schemas/types.yaml#/definitions/uint16-array
+    minItems: 2
+    maxItems: 2
+    description: |
+      Retry interval timing value for port 1.
+      The fields for the above parameter must be as shown below:-
+      ceva,pN-retry-params = /bits/ 16 <RIT RCT>;
+      RIT - Retry Interval Timer.
+      RCT - Rate Change Timer.
+
+  ceva,broken-gen2:
+    $ref: /schemas/types.yaml#/definitions/flag
+    description: |
+      limit to gen1 speed instead of gen2.
+
+  phys:
+    description: |
+      Phandle for the PHY device.
+    maxItems: 1
+
+  resets:
+    maxItems: 1
+
+  '#stream-id-cells':
+    const: 4
+
+required:
+  - compatible
+  - reg
+  - clocks
+  - interrupts
+  - ceva,p0-cominit-params
+  - ceva,p0-comwake-params
+  - ceva,p0-burst-params
+  - ceva,p0-retry-params
+  - ceva,p1-cominit-params
+  - ceva,p1-comwake-params
+  - ceva,p1-burst-params
+  - ceva,p1-retry-params
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/clock/xlnx-zynqmp-clk.h>
+    #include <dt-bindings/interrupt-controller/irq.h>
+    #include <dt-bindings/power/xlnx-zynqmp-power.h>
+    #include <dt-bindings/reset/xlnx-zynqmp-resets.h>
+    #include <dt-bindings/clock/xlnx-zynqmp-clk.h>
+    #include <dt-bindings/phy/phy.h>
+
+    sata: ahci@fd0c0000 {
+        compatible = "ceva,ahci-1v84";
+        reg = <0xfd0c0000 0x200>;
+        interrupt-parent = <&gic>;
+        interrupts = <0 133 IRQ_TYPE_LEVEL_HIGH>;
+        clocks = <&zynqmp_clk SATA_REF>;
+        ceva,p0-cominit-params = /bits/ 8 <0x0F 0x25 0x18 0x29>;
+        ceva,p0-comwake-params = /bits/ 8 <0x04 0x0B 0x08 0x0F>;
+        ceva,p0-burst-params = /bits/ 8 <0x0A 0x08 0x4A 0x06>;
+        ceva,p0-retry-params = /bits/ 16 <0x0216 0x7F06>;
+        ceva,p1-cominit-params = /bits/ 8 <0x0F 0x25 0x18 0x29>;
+        ceva,p1-comwake-params = /bits/ 8 <0x04 0x0B 0x08 0x0F>;
+        ceva,p1-burst-params = /bits/ 8 <0x0A 0x08 0x4A 0x06>;
+        ceva,p1-retry-params = /bits/ 16 <0x0216 0x7F06>;
+        ceva,broken-gen2;
+        phys = <&psgtr 1 PHY_TYPE_SATA 1 1>;
+        resets = <&zynqmp_reset ZYNQMP_RESET_SATA>;
+    };