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