On 3/21/24 15:03, Rob Herring wrote: > On Wed, Mar 20, 2024 at 06:04:58PM +0100, Javier Carrasco wrote: >> Convert existing bindings to dtschema to support validation. >> >> This is a straightforward conversion with no new properties. > > Why the indentation? > Will be fixed for v2 >> >> Signed-off-by: Javier Carrasco <javier.carrasco.cruz@xxxxxxxxx> >> --- >> .../devicetree/bindings/hwmon/max6650.txt | 28 --------- >> .../devicetree/bindings/hwmon/maxim,max6650.yaml | 68 ++++++++++++++++++++++ >> 2 files changed, 68 insertions(+), 28 deletions(-) >> >> diff --git a/Documentation/devicetree/bindings/hwmon/max6650.txt b/Documentation/devicetree/bindings/hwmon/max6650.txt >> deleted file mode 100644 >> index f6bd87d8e284..000000000000 >> --- a/Documentation/devicetree/bindings/hwmon/max6650.txt >> +++ /dev/null >> @@ -1,28 +0,0 @@ >> -Bindings for MAX6651 and MAX6650 I2C fan controllers >> - >> -Reference: >> -[1] https://datasheets.maximintegrated.com/en/ds/MAX6650-MAX6651.pdf >> - >> -Required properties: >> -- compatible : One of "maxim,max6650" or "maxim,max6651" >> -- reg : I2C address, one of 0x1b, 0x1f, 0x4b, 0x48. >> - >> -Optional properties, default is to retain the chip's current setting: >> -- maxim,fan-microvolt : The supply voltage of the fan, either 5000000 uV or >> - 12000000 uV. >> -- maxim,fan-prescale : Pre-scaling value, as per datasheet [1]. Lower values >> - allow more fine-grained control of slower fans. >> - Valid: 1, 2, 4, 8, 16. >> -- maxim,fan-target-rpm: Initial requested fan rotation speed. If specified, the >> - driver selects closed-loop mode and the requested speed. >> - This ensures the fan is already running before userspace >> - takes over. >> - >> -Example: >> - fan-max6650: max6650@1b { >> - reg = <0x1b>; >> - compatible = "maxim,max6650"; >> - maxim,fan-microvolt = <12000000>; >> - maxim,fan-prescale = <4>; >> - maxim,fan-target-rpm = <1200>; >> - }; >> diff --git a/Documentation/devicetree/bindings/hwmon/maxim,max6650.yaml b/Documentation/devicetree/bindings/hwmon/maxim,max6650.yaml >> new file mode 100644 >> index 000000000000..1b33b5fb606d >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/hwmon/maxim,max6650.yaml >> @@ -0,0 +1,68 @@ >> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> + >> +$id: http://devicetree.org/schemas/hwmon/maxim,max6650.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: Maxim MAX6650 and MAX6651 I2C Fan Controllers >> + >> +maintainers: >> + - Javier Carrasco <javier.carrasco.cruz@xxxxxxxxx> >> + >> +description: | >> + The MAX6650 and MAX6651 regulate and monitor the speed >> + of 5VDC/12VDC burshless fans with built-in tachometers. >> + >> + Datasheets: >> + https://datasheets.maximintegrated.com/en/ds/MAX6650-MAX6651.pdf >> + >> +properties: >> + compatible: >> + enum: >> + - maxim,max6650 >> + - maxim,max6651 >> + >> + reg: >> + maxItems: 1 >> + >> + maxim,fan-microvolt: >> + description: >> + The supply voltage of the fan, either 5000000 uV or >> + 12000000 uV. > > Looks like constraints. Please add them. > Will add enum: [5000000, 12000000] >> + >> + maxim,fan-prescale: >> + description: >> + Pre-scaling value, as per datasheet. Lower values >> + allow more fine-grained control of slower fans. >> + $ref: /schemas/types.yaml#/definitions/uint32 >> + enum: [1, 2, 4, 8, 16] >> + >> + maxim,fan-target-rpm: >> + description: >> + Initial requested fan rotation speed. If specified, the >> + driver selects closed-loop mode and the requested speed. >> + This ensures the fan is already running before userspace >> + takes over. >> + $ref: /schemas/types.yaml#/definitions/uint32 > > Constraints? I'm sure no fan RPM is higher than 10000 and probably much > less than that. > > Rob According to the datasheet (page 9, table 3. Fan Speed), the highest fan speed that can be achieved is 30000 RPM (which does not mean that fans actually reach that speed). I could use that as the maximum value, though. Thanks for the review and best regards, Javier Carrasco