Re: [PATCH v4] dt-bindings: ata: Add UniPhier controller binding

From: Damien Le Moal
Date: Sun Mar 05 2023 - 20:22:56 EST


On 2/23/23 00:59, Kunihiko Hayashi wrote:
> Add UniPhier SATA controller compatible string to the platform binding.
> This controller needs three reset controls for Pro4 SoC, or two reset
> controls for PXs2 and PXs3 SoCs.
>
> Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@xxxxxxxxxxxxx>

Rob,

Are you OK with this patch ? I can take it for 6.4.

> ---
> .../bindings/ata/ahci-platform.yaml | 49 +++++++++++++++++--
> 1 file changed, 45 insertions(+), 4 deletions(-)
>
> Changes since v3:
> - Fix the position of resets and allOf properties
> - Add reset descriptions
> - Separate if conditions for two resets, three resets, and others
>
> Changes since v2:
> - Add compatible strings to select property
> - Add minItems and change maxItems for resets
> - Move condition schema under allOf property
> - Change resets to "required" for uniphier-*-ahci
>
> Changes since v1:
> - Restrict resets property changes with compatible strings
> - Fix maxItems from two to three
>
> diff --git a/Documentation/devicetree/bindings/ata/ahci-platform.yaml b/Documentation/devicetree/bindings/ata/ahci-platform.yaml
> index 7dc2a2e8f598..358617115bb8 100644
> --- a/Documentation/devicetree/bindings/ata/ahci-platform.yaml
> +++ b/Documentation/devicetree/bindings/ata/ahci-platform.yaml
> @@ -30,12 +30,12 @@ select:
> - marvell,armada-3700-ahci
> - marvell,armada-8k-ahci
> - marvell,berlin2q-ahci
> + - socionext,uniphier-pro4-ahci
> + - socionext,uniphier-pxs2-ahci
> + - socionext,uniphier-pxs3-ahci
> required:
> - compatible
>
> -allOf:
> - - $ref: "ahci-common.yaml#"
> -
> properties:
> compatible:
> oneOf:
> @@ -45,6 +45,9 @@ properties:
> - marvell,armada-8k-ahci
> - marvell,berlin2-ahci
> - marvell,berlin2q-ahci
> + - socionext,uniphier-pro4-ahci
> + - socionext,uniphier-pxs2-ahci
> + - socionext,uniphier-pxs3-ahci
> - const: generic-ahci
> - enum:
> - cavium,octeon-7130-ahci
> @@ -74,7 +77,8 @@ properties:
> maxItems: 1
>
> resets:
> - maxItems: 1
> + minItems: 1
> + maxItems: 3
>
> patternProperties:
> "^sata-port@[0-9a-f]+$":
> @@ -91,6 +95,43 @@ required:
> - reg
> - interrupts
>
> +allOf:
> + - $ref: ahci-common.yaml#
> + - if:
> + properties:
> + compatible:
> + contains:
> + const: socionext,uniphier-pro4-ahci
> + then:
> + properties:
> + resets:
> + items:
> + - description: reset line for the parent
> + - description: reset line for the glue logic
> + - description: reset line for the controller
> + required:
> + - resets
> + else:
> + if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - socionext,uniphier-pxs2-ahci
> + - socionext,uniphier-pxs3-ahci
> + then:
> + properties:
> + resets:
> + items:
> + - description: reset for the glue logic
> + - description: reset for the controller
> + required:
> + - resets
> + else:
> + properties:
> + resets:
> + maxItems: 1
> +
> unevaluatedProperties: false
>
> examples:

--
Damien Le Moal
Western Digital Research