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

dt-bindings:iio:resolver:adi,ad2s90: Conversion of binding to yaml.

Simple binding with a good description of why the spi-max-frequency is,
in practice not as high as the datasheet implies. I've set the
maximum as per the value established in the description.

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Rob Herring <robh@kernel.org>
Cc: Matheus Tavares <matheus.bernardino@usp.br>
Cc: Alexandru Ardelean <alexandru.ardelean@analog.com>
Link: https://lore.kernel.org/r/20201031184854.745828-2-jic23@kernel.org

+60 -31
-31
Documentation/devicetree/bindings/iio/resolver/ad2s90.txt
··· 1 - Analog Devices AD2S90 Resolver-to-Digital Converter 2 - 3 - https://www.analog.com/en/products/ad2s90.html 4 - 5 - Required properties: 6 - - compatible: should be "adi,ad2s90" 7 - - reg: SPI chip select number for the device 8 - - spi-max-frequency: set maximum clock frequency, must be 830000 9 - - spi-cpol and spi-cpha: 10 - Either SPI mode (0,0) or (1,1) must be used, so specify none or both of 11 - spi-cpha, spi-cpol. 12 - 13 - See for more details: 14 - Documentation/devicetree/bindings/spi/spi-bus.txt 15 - 16 - Note about max frequency: 17 - Chip's max frequency, as specified in its datasheet, is 2Mhz. But a 600ns 18 - delay is expected between the application of a logic LO to CS and the 19 - application of SCLK, as also specified. And since the delay is not 20 - implemented in the spi code, to satisfy it, SCLK's period should be at most 21 - 2 * 600ns, so the max frequency should be 1 / (2 * 6e-7), which gives 22 - roughly 830000Hz. 23 - 24 - Example: 25 - resolver@0 { 26 - compatible = "adi,ad2s90"; 27 - reg = <0>; 28 - spi-max-frequency = <830000>; 29 - spi-cpol; 30 - spi-cpha; 31 - };
+60
Documentation/devicetree/bindings/iio/resolver/adi,ad2s90.yaml
··· 1 + # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2 + %YAML 1.2 3 + --- 4 + $id: http://devicetree.org/schemas/iio/resolver/adi,ad2s90.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: Analog Devices AD2S90 Resolver-to-Digital Converter 8 + 9 + maintainers: 10 + - Matheus Tavares <matheus.bernardino@usp.br> 11 + 12 + description: | 13 + Datasheet: https://www.analog.com/en/products/ad2s90.html 14 + 15 + properties: 16 + compatible: 17 + const: adi,ad2s90 18 + 19 + reg: 20 + maxItems: 1 21 + 22 + spi-max-frequency: 23 + maximum: 830000 24 + description: | 25 + Chip's max frequency, as specified in its datasheet, is 2Mhz. But a 600ns 26 + delay is expected between the application of a logic LO to CS and the 27 + application of SCLK, as also specified. And since the delay is not 28 + implemented in the spi code, to satisfy it, SCLK's period should be at 29 + most 2 * 600ns, so the max frequency should be 1 / (2 * 6e-7), which gives 30 + roughly 830000Hz. 31 + 32 + spi-cpol: true 33 + 34 + spi-cpha: true 35 + 36 + additionalProperties: false 37 + 38 + required: 39 + - compatible 40 + - reg 41 + 42 + dependencies: 43 + spi-cpol: [ spi-cpha ] 44 + spi-cpha: [ spi-cpol ] 45 + 46 + examples: 47 + - | 48 + spi { 49 + #address-cells = <1>; 50 + #size-cells = <0>; 51 + 52 + resolver@0 { 53 + compatible = "adi,ad2s90"; 54 + reg = <0>; 55 + spi-max-frequency = <830000>; 56 + spi-cpol; 57 + spi-cpha; 58 + }; 59 + }; 60 + ...