On Mon, Jan 31, 2022 at 08:14:27AM +0000, Corentin Labbe wrote: > This patch converts ata/cortina,gemini-sata-bridge binding to yaml > > Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx> > Acked-by: Damien Le Moal <damien.lemoal@xxxxxxxxxxxxxxxxxx> > Signed-off-by: Corentin Labbe <clabbe@xxxxxxxxxxxx> > --- > Change since v1: > - fixed cosmetic nits reported by Damien Le Moal > > .../ata/cortina,gemini-sata-bridge.txt | 55 ----------- > .../ata/cortina,gemini-sata-bridge.yaml | 99 +++++++++++++++++++ > 2 files changed, 99 insertions(+), 55 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/ata/cortina,gemini-sata-bridge.txt > create mode 100644 Documentation/devicetree/bindings/ata/cortina,gemini-sata-bridge.yaml > > diff --git a/Documentation/devicetree/bindings/ata/cortina,gemini-sata-bridge.txt b/Documentation/devicetree/bindings/ata/cortina,gemini-sata-bridge.txt > deleted file mode 100644 > index 1c3d3cc70051..000000000000 > --- a/Documentation/devicetree/bindings/ata/cortina,gemini-sata-bridge.txt > +++ /dev/null > @@ -1,55 +0,0 @@ > -* Cortina Systems Gemini SATA Bridge > - > -The Gemini SATA bridge in a SoC-internal PATA to SATA bridge that > -takes two Faraday Technology FTIDE010 PATA controllers and bridges > -them in different configurations to two SATA ports. > - > -Required properties: > -- compatible: should be > - "cortina,gemini-sata-bridge" > -- reg: registers and size for the block > -- resets: phandles to the reset lines for both SATA bridges > -- reset-names: must be "sata0", "sata1" > -- clocks: phandles to the compulsory peripheral clocks > -- clock-names: must be "SATA0_PCLK", "SATA1_PCLK" > -- syscon: a phandle to the global Gemini system controller > -- cortina,gemini-ata-muxmode: tell the desired multiplexing mode for > - the ATA controller and SATA bridges. Values 0..3: > - Mode 0: ata0 master <-> sata0 > - ata1 master <-> sata1 > - ata0 slave interface brought out on IDE pads > - Mode 1: ata0 master <-> sata0 > - ata1 master <-> sata1 > - ata1 slave interface brought out on IDE pads > - Mode 2: ata1 master <-> sata1 > - ata1 slave <-> sata0 > - ata0 master and slave interfaces brought out > - on IDE pads > - Mode 3: ata0 master <-> sata0 > - ata0 slave <-> sata1 > - ata1 master and slave interfaces brought out > - on IDE pads > - > -Optional boolean properties: > -- cortina,gemini-enable-ide-pins: enables the PATA to IDE connection. > - The muxmode setting decides whether ATA0 or ATA1 is brought out, > - and whether master, slave or both interfaces get brought out. > -- cortina,gemini-enable-sata-bridge: enables the PATA to SATA bridge > - inside the Gemnini SoC. The Muxmode decides what PATA blocks will > - be muxed out and how. > - > -Example: > - > -sata: sata@46000000 { > - compatible = "cortina,gemini-sata-bridge"; > - reg = <0x46000000 0x100>; > - resets = <&rcon 26>, <&rcon 27>; > - reset-names = "sata0", "sata1"; > - clocks = <&gcc GEMINI_CLK_GATE_SATA0>, > - <&gcc GEMINI_CLK_GATE_SATA1>; > - clock-names = "SATA0_PCLK", "SATA1_PCLK"; > - syscon = <&syscon>; > - cortina,gemini-ata-muxmode = <3>; > - cortina,gemini-enable-ide-pins; > - cortina,gemini-enable-sata-bridge; > -}; > diff --git a/Documentation/devicetree/bindings/ata/cortina,gemini-sata-bridge.yaml b/Documentation/devicetree/bindings/ata/cortina,gemini-sata-bridge.yaml > new file mode 100644 > index 000000000000..59ccbc83361c > --- /dev/null > +++ b/Documentation/devicetree/bindings/ata/cortina,gemini-sata-bridge.yaml > @@ -0,0 +1,99 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/ata/cortina,gemini-sata-bridge.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Cortina Systems Gemini SATA Bridge > + > +maintainers: > + - Linus Walleij <linus.walleij@xxxxxxxxxx> > + > +description: | > + The Gemini SATA bridge in a SoC-internal PATA to SATA bridge that > + takes two Faraday Technology FTIDE010 PATA controllers and bridges > + them in different configurations to two SATA ports. > + > +properties: > + compatible: > + const: "cortina,gemini-sata-bridge" Don't need quotes. blank line between DT properties. > + reg: > + minItems: 1 > + resets: > + minItems: 2 > + description: phandles to the reset lines for both SATA bridges > + reset-names: > + items: > + - const: "sata0" > + - const: "sata1" > + clocks: > + minItems: 2 > + description: phandles to the compulsory peripheral clocks > + clock-names: > + items: > + - const: "SATA0_PCLK" > + - const: "SATA1_PCLK" > + syscon: > + minItems: 1 > + $ref: /schemas/types.yaml#/definitions/phandle > + description: a phandle to the global Gemini system controller > + cortina,gemini-ata-muxmode: > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: > + - 0 > + - 1 > + - 2 > + - 3 > + description: | > + Tell the desired multiplexing mode for the ATA controller and SATA bridges. Values 0..3: > + Mode 0: ata0 master <-> sata0 > + ata1 master <-> sata1 > + ata0 slave interface brought out on IDE pads > + Mode 1: ata0 master <-> sata0 > + ata1 master <-> sata1 > + ata1 slave interface brought out on IDE pads > + Mode 2: ata1 master <-> sata1 > + ata1 slave <-> sata0 > + ata0 master and slave interfaces brought out on IDE pads > + Mode 3: ata0 master <-> sata0 > + ata0 slave <-> sata1 > + ata1 master and slave interfaces brought out on IDE pads > + > + cortina,gemini-enable-ide-pins: > + type: boolean > + description: Enables the PATA to IDE connection. > + The muxmode setting decides whether ATA0 or ATA1 is brought out, > + and whether master, slave or both interfaces get brought out. Indent 2 spaces more than 'description' > + cortina,gemini-enable-sata-bridge: > + type: boolean > + description: Enables the PATA to SATA bridge inside the Gemnini SoC. > + The Muxmode decides what PATA blocks will be muxed out and how. > + > +required: > + - clocks > + - clock-names > + - cortina,gemini-ata-muxmode > + - resets > + - reset-names > + - compatible > + - reg > + - syscon > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/clock/cortina,gemini-clock.h> > + sata: sata@46000000 { Drop unused labels. > + compatible = "cortina,gemini-sata-bridge"; > + reg = <0x46000000 0x100>; > + resets = <&rcon 26>, <&rcon 27>; > + reset-names = "sata0", "sata1"; > + clocks = <&gcc GEMINI_CLK_GATE_SATA0>, > + <&gcc GEMINI_CLK_GATE_SATA1>; > + clock-names = "SATA0_PCLK", "SATA1_PCLK"; > + syscon = <&syscon>; > + cortina,gemini-ata-muxmode = <3>; > + cortina,gemini-enable-ide-pins; > + cortina,gemini-enable-sata-bridge; > + }; > -- > 2.34.1 > >