Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: sata: Convert Calxeda SATA controller to json-schema

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>
Signed-off-by: Rob Herring <robh@kernel.org>

authored by

Andre Przywara and committed by
Rob Herring
5918410d 958ba5c2

+95 -44
-44
Documentation/devicetree/bindings/ata/sata_highbank.txt
··· 1 - * Calxeda AHCI SATA Controller 2 - 3 - SATA nodes are defined to describe on-chip Serial ATA controllers. 4 - The Calxeda SATA controller mostly conforms to the AHCI interface 5 - with some special extensions to add functionality. 6 - Each SATA controller should have its own node. 7 - 8 - Required properties: 9 - - compatible : compatible list, contains "calxeda,hb-ahci" 10 - - interrupts : <interrupt mapping for SATA IRQ> 11 - - reg : <registers mapping> 12 - 13 - Optional properties: 14 - - dma-coherent : Present if dma operations are coherent 15 - - calxeda,port-phys : phandle-combophy and lane assignment, which maps each 16 - SATA port to a combophy and a lane within that 17 - combophy 18 - - calxeda,sgpio-gpio: phandle-gpio bank, bit offset, and default on or off, 19 - which indicates that the driver supports SGPIO 20 - indicator lights using the indicated GPIOs 21 - - calxeda,led-order : a u32 array that map port numbers to offsets within the 22 - SGPIO bitstream. 23 - - calxeda,tx-atten : a u32 array that contains TX attenuation override 24 - codes, one per port. The upper 3 bytes are always 25 - 0 and thus ignored. 26 - - calxeda,pre-clocks : a u32 that indicates the number of additional clock 27 - cycles to transmit before sending an SGPIO pattern 28 - - calxeda,post-clocks: a u32 that indicates the number of additional clock 29 - cycles to transmit after sending an SGPIO pattern 30 - 31 - Example: 32 - sata@ffe08000 { 33 - compatible = "calxeda,hb-ahci"; 34 - reg = <0xffe08000 0x1000>; 35 - interrupts = <115>; 36 - dma-coherent; 37 - calxeda,port-phys = <&combophy5 0 &combophy0 0 &combophy0 1 38 - &combophy0 2 &combophy0 3>; 39 - calxeda,sgpio-gpio =<&gpioh 5 1 &gpioh 6 1 &gpioh 7 1>; 40 - calxeda,led-order = <4 0 1 2 3>; 41 - calxeda,tx-atten = <0xff 22 0xff 0xff 23>; 42 - calxeda,pre-clocks = <10>; 43 - calxeda,post-clocks = <0>; 44 - };
+95
Documentation/devicetree/bindings/ata/sata_highbank.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/ata/sata_highbank.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Calxeda AHCI SATA Controller 8 + 9 + description: | 10 + The Calxeda SATA controller mostly conforms to the AHCI interface 11 + with some special extensions to add functionality, to map GPIOs for 12 + activity LEDs and for mapping the ComboPHYs. 13 + 14 + maintainers: 15 + - Andre Przywara <andre.przywara@arm.com> 16 + 17 + properties: 18 + compatible: 19 + const: calxeda,hb-ahci 20 + 21 + reg: 22 + maxItems: 1 23 + 24 + interrupts: 25 + maxItems: 1 26 + 27 + dma-coherent: true 28 + 29 + calxeda,pre-clocks: 30 + $ref: /schemas/types.yaml#/definitions/uint32 31 + description: | 32 + Indicates the number of additional clock cycles to transmit before 33 + sending an SGPIO pattern. 34 + 35 + calxeda,post-clocks: 36 + $ref: /schemas/types.yaml#/definitions/uint32 37 + description: | 38 + Indicates the number of additional clock cycles to transmit after 39 + sending an SGPIO pattern. 40 + 41 + calxeda,led-order: 42 + description: Maps port numbers to offsets within the SGPIO bitstream. 43 + allOf: 44 + - $ref: /schemas/types.yaml#/definitions/uint32-array 45 + - minItems: 1 46 + maxItems: 8 47 + 48 + calxeda,port-phys: 49 + description: | 50 + phandle-combophy and lane assignment, which maps each SATA port to a 51 + combophy and a lane within that combophy 52 + allOf: 53 + - $ref: /schemas/types.yaml#/definitions/phandle-array 54 + - minItems: 1 55 + maxItems: 8 56 + 57 + calxeda,tx-atten: 58 + description: | 59 + Contains TX attenuation override codes, one per port. 60 + The upper 24 bits of each entry are always 0 and thus ignored. 61 + allOf: 62 + - $ref: /schemas/types.yaml#/definitions/uint32-array 63 + - minItems: 1 64 + maxItems: 8 65 + 66 + calxeda,sgpio-gpio: 67 + description: | 68 + phandle-gpio bank, bit offset, and default on or off, which indicates 69 + that the driver supports SGPIO indicator lights using the indicated 70 + GPIOs. 71 + 72 + required: 73 + - compatible 74 + - reg 75 + - interrupts 76 + 77 + additionalProperties: false 78 + 79 + examples: 80 + - | 81 + sata@ffe08000 { 82 + compatible = "calxeda,hb-ahci"; 83 + reg = <0xffe08000 0x1000>; 84 + interrupts = <115>; 85 + dma-coherent; 86 + calxeda,port-phys = <&combophy5 0>, <&combophy0 0>, <&combophy0 1>, 87 + <&combophy0 2>, <&combophy0 3>; 88 + calxeda,sgpio-gpio =<&gpioh 5 1>, <&gpioh 6 1>, <&gpioh 7 1>; 89 + calxeda,led-order = <4 0 1 2 3>; 90 + calxeda,tx-atten = <0xff 22 0xff 0xff 23>; 91 + calxeda,pre-clocks = <10>; 92 + calxeda,post-clocks = <0>; 93 + }; 94 + 95 + ...