Message ID | 20200226180901.89940-7-andre.przywara@arm.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | arm: calxeda: update DTS, bindings and MAINTAINERS | expand |
On Wed, Feb 26, 2020 at 06:08:54PM +0000, Andre Przywara wrote: > Convert the Calxeda Highbank SATA controller binding to DT schema format > using json-schema. > > Signed-off-by: Andre Przywara <andre.przywara@arm.com> > Cc: Jens Axboe <axboe@kernel.dk> > --- > .../devicetree/bindings/ata/sata_highbank.txt | 44 --------- > .../bindings/ata/sata_highbank.yaml | 96 +++++++++++++++++++ > 2 files changed, 96 insertions(+), 44 deletions(-) > delete mode 100644 Documentation/devicetree/bindings/ata/sata_highbank.txt > create mode 100644 Documentation/devicetree/bindings/ata/sata_highbank.yaml > > diff --git a/Documentation/devicetree/bindings/ata/sata_highbank.txt b/Documentation/devicetree/bindings/ata/sata_highbank.txt > deleted file mode 100644 > index aa83407cb7a4..000000000000 > --- a/Documentation/devicetree/bindings/ata/sata_highbank.txt > +++ /dev/null > @@ -1,44 +0,0 @@ > -* Calxeda AHCI SATA Controller > - > -SATA nodes are defined to describe on-chip Serial ATA controllers. > -The Calxeda SATA controller mostly conforms to the AHCI interface > -with some special extensions to add functionality. > -Each SATA controller should have its own node. > - > -Required properties: > -- compatible : compatible list, contains "calxeda,hb-ahci" > -- interrupts : <interrupt mapping for SATA IRQ> > -- reg : <registers mapping> > - > -Optional properties: > -- dma-coherent : Present if dma operations are coherent > -- calxeda,port-phys : phandle-combophy and lane assignment, which maps each > - SATA port to a combophy and a lane within that > - combophy > -- calxeda,sgpio-gpio: phandle-gpio bank, bit offset, and default on or off, > - which indicates that the driver supports SGPIO > - indicator lights using the indicated GPIOs > -- calxeda,led-order : a u32 array that map port numbers to offsets within the > - SGPIO bitstream. > -- calxeda,tx-atten : a u32 array that contains TX attenuation override > - codes, one per port. The upper 3 bytes are always > - 0 and thus ignored. > -- calxeda,pre-clocks : a u32 that indicates the number of additional clock > - cycles to transmit before sending an SGPIO pattern > -- calxeda,post-clocks: a u32 that indicates the number of additional clock > - cycles to transmit after sending an SGPIO pattern > - > -Example: > - sata@ffe08000 { > - compatible = "calxeda,hb-ahci"; > - reg = <0xffe08000 0x1000>; > - interrupts = <115>; > - dma-coherent; > - calxeda,port-phys = <&combophy5 0 &combophy0 0 &combophy0 1 > - &combophy0 2 &combophy0 3>; > - calxeda,sgpio-gpio =<&gpioh 5 1 &gpioh 6 1 &gpioh 7 1>; > - calxeda,led-order = <4 0 1 2 3>; > - calxeda,tx-atten = <0xff 22 0xff 0xff 23>; > - calxeda,pre-clocks = <10>; > - calxeda,post-clocks = <0>; > - }; > diff --git a/Documentation/devicetree/bindings/ata/sata_highbank.yaml b/Documentation/devicetree/bindings/ata/sata_highbank.yaml > new file mode 100644 > index 000000000000..392a3efc9833 > --- /dev/null > +++ b/Documentation/devicetree/bindings/ata/sata_highbank.yaml > @@ -0,0 +1,96 @@ > +# SPDX-License-Identifier: GPL-2.0 > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/ata/sata_highbank.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Calxeda AHCI SATA Controller > + > +description: | > + The Calxeda SATA controller mostly conforms to the AHCI interface > + with some special extensions to add functionality, to map GPIOs for > + activity LEDs and for mapping the ComboPHYs. > + > +maintainers: > + - Andre Przywara <andre.przywara@arm.com> > + > +properties: > + compatible: > + const: calxeda,hb-ahci > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + > + dma-coherent: true > + > + calxeda,pre-clocks: > + $ref: /schemas/types.yaml#/definitions/uint32 > + description: | > + Indicates the number of additional clock cycles to transmit before > + sending an SGPIO pattern. > + > + calxeda,post-clocks: > + $ref: /schemas/types.yaml#/definitions/uint32 > + description: | > + Indicates the number of additional clock cycles to transmit after > + sending an SGPIO pattern. > + > + calxeda,led-order: > + description: Maps port numbers to offsets within the SGPIO bitstream. > + allOf: > + - $ref: /schemas/types.yaml#/definitions/uint32-array > + - minItems: 1 > + maxItems: 8 > + > + calxeda,port-phys: > + description: | > + phandle-combophy and lane assignment, which maps each SATA port to a > + combophy and a lane within that combophy > + allOf: > + - $ref: /schemas/types.yaml#/definitions/phandle-array > + - minItems: 1 > + maxItems: 8 > + > + calxeda,tx-atten: > + description: | > + Contains TX attenuation override codes, one per port. > + The upper 24 bits of each entry are always 0 and thus ignored. > + allOf: > + - $ref: /schemas/types.yaml#/definitions/uint32-array > + - minItems: 1 > + maxItems: 8 > + > + calxeda,sgpio-gpio: > + $ref: /schemas/types.yaml#/definitions/phandle-array > + description: | > + phandle-gpio bank, bit offset, and default on or off, which indicates > + that the driver supports SGPIO indicator lights using the indicated > + GPIOs. Ditto, this is being checked already: https://github.com/devicetree-org/dt-schema/blob/master/schemas/gpio/gpio.yaml#L37 -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#1463): https://linux.kernel.org/g/patchwork-soc/message/1463 Mute This Topic: https://linux.kernel.org/mt/71570405/1554929 Group Owner: patchwork-soc+owner@linux.kernel.org Unsubscribe: https://linux.kernel.org/g/patchwork-soc/unsub [patchwork-linux-kernel-org@patchwork.kernel.org] -=-=-=-=-=-=-=-=-=-=-=-
diff --git a/Documentation/devicetree/bindings/ata/sata_highbank.txt b/Documentation/devicetree/bindings/ata/sata_highbank.txt deleted file mode 100644 index aa83407cb7a4..000000000000 --- a/Documentation/devicetree/bindings/ata/sata_highbank.txt +++ /dev/null @@ -1,44 +0,0 @@ -* Calxeda AHCI SATA Controller - -SATA nodes are defined to describe on-chip Serial ATA controllers. -The Calxeda SATA controller mostly conforms to the AHCI interface -with some special extensions to add functionality. -Each SATA controller should have its own node. - -Required properties: -- compatible : compatible list, contains "calxeda,hb-ahci" -- interrupts : <interrupt mapping for SATA IRQ> -- reg : <registers mapping> - -Optional properties: -- dma-coherent : Present if dma operations are coherent -- calxeda,port-phys : phandle-combophy and lane assignment, which maps each - SATA port to a combophy and a lane within that - combophy -- calxeda,sgpio-gpio: phandle-gpio bank, bit offset, and default on or off, - which indicates that the driver supports SGPIO - indicator lights using the indicated GPIOs -- calxeda,led-order : a u32 array that map port numbers to offsets within the - SGPIO bitstream. -- calxeda,tx-atten : a u32 array that contains TX attenuation override - codes, one per port. The upper 3 bytes are always - 0 and thus ignored. -- calxeda,pre-clocks : a u32 that indicates the number of additional clock - cycles to transmit before sending an SGPIO pattern -- calxeda,post-clocks: a u32 that indicates the number of additional clock - cycles to transmit after sending an SGPIO pattern - -Example: - sata@ffe08000 { - compatible = "calxeda,hb-ahci"; - reg = <0xffe08000 0x1000>; - interrupts = <115>; - dma-coherent; - calxeda,port-phys = <&combophy5 0 &combophy0 0 &combophy0 1 - &combophy0 2 &combophy0 3>; - calxeda,sgpio-gpio =<&gpioh 5 1 &gpioh 6 1 &gpioh 7 1>; - calxeda,led-order = <4 0 1 2 3>; - calxeda,tx-atten = <0xff 22 0xff 0xff 23>; - calxeda,pre-clocks = <10>; - calxeda,post-clocks = <0>; - }; diff --git a/Documentation/devicetree/bindings/ata/sata_highbank.yaml b/Documentation/devicetree/bindings/ata/sata_highbank.yaml new file mode 100644 index 000000000000..392a3efc9833 --- /dev/null +++ b/Documentation/devicetree/bindings/ata/sata_highbank.yaml @@ -0,0 +1,96 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/ata/sata_highbank.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Calxeda AHCI SATA Controller + +description: | + The Calxeda SATA controller mostly conforms to the AHCI interface + with some special extensions to add functionality, to map GPIOs for + activity LEDs and for mapping the ComboPHYs. + +maintainers: + - Andre Przywara <andre.przywara@arm.com> + +properties: + compatible: + const: calxeda,hb-ahci + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + dma-coherent: true + + calxeda,pre-clocks: + $ref: /schemas/types.yaml#/definitions/uint32 + description: | + Indicates the number of additional clock cycles to transmit before + sending an SGPIO pattern. + + calxeda,post-clocks: + $ref: /schemas/types.yaml#/definitions/uint32 + description: | + Indicates the number of additional clock cycles to transmit after + sending an SGPIO pattern. + + calxeda,led-order: + description: Maps port numbers to offsets within the SGPIO bitstream. + allOf: + - $ref: /schemas/types.yaml#/definitions/uint32-array + - minItems: 1 + maxItems: 8 + + calxeda,port-phys: + description: | + phandle-combophy and lane assignment, which maps each SATA port to a + combophy and a lane within that combophy + allOf: + - $ref: /schemas/types.yaml#/definitions/phandle-array + - minItems: 1 + maxItems: 8 + + calxeda,tx-atten: + description: | + Contains TX attenuation override codes, one per port. + The upper 24 bits of each entry are always 0 and thus ignored. + allOf: + - $ref: /schemas/types.yaml#/definitions/uint32-array + - minItems: 1 + maxItems: 8 + + calxeda,sgpio-gpio: + $ref: /schemas/types.yaml#/definitions/phandle-array + description: | + phandle-gpio bank, bit offset, and default on or off, which indicates + that the driver supports SGPIO indicator lights using the indicated + GPIOs. + +required: + - compatible + - reg + - interrupts + +additionalProperties: false + +examples: + - | + sata@ffe08000 { + compatible = "calxeda,hb-ahci"; + reg = <0xffe08000 0x1000>; + interrupts = <115>; + dma-coherent; + calxeda,port-phys = <&combophy5 0 &combophy0 0 &combophy0 1 + &combophy0 2 &combophy0 3>; + calxeda,sgpio-gpio =<&gpioh 5 1 &gpioh 6 1 &gpioh 7 1>; + calxeda,led-order = <4 0 1 2 3>; + calxeda,tx-atten = <0xff 22 0xff 0xff 23>; + calxeda,pre-clocks = <10>; + calxeda,post-clocks = <0>; + }; + +...
Convert the Calxeda Highbank SATA controller binding to DT schema format using json-schema. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Cc: Jens Axboe <axboe@kernel.dk> --- .../devicetree/bindings/ata/sata_highbank.txt | 44 --------- .../bindings/ata/sata_highbank.yaml | 96 +++++++++++++++++++ 2 files changed, 96 insertions(+), 44 deletions(-) delete mode 100644 Documentation/devicetree/bindings/ata/sata_highbank.txt create mode 100644 Documentation/devicetree/bindings/ata/sata_highbank.yaml