Commit 3b0ac1f9 authored by Naresh Solanki's avatar Naresh Solanki Committed by Guenter Roeck
Browse files

dt-bindings: hwmon: fan: Add fan binding to schema



Add common fan properties bindings to a schema.

Bindings for fan controllers can reference the common schema for the
fan

child nodes:

  patternProperties:
    "^fan@[0-2]":
      type: object
      $ref: fan-common.yaml#
      unevaluatedProperties: false

Reviewed-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarNaresh Solanki <naresh.solanki@9elements.com>
Signed-off-by: default avatarBilly Tsai <billy_tsai@aspeedtech.com>
Link: https://lore.kernel.org/r/20240221104025.1306227-2-billy_tsai@aspeedtech.com


Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent c71d2502
Loading
Loading
Loading
Loading
+79 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
%YAML 1.2
---
$id: http://devicetree.org/schemas/hwmon/fan-common.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Common Fan Properties

maintainers:
  - Naresh Solanki <naresh.solanki@9elements.com>
  - Billy Tsai <billy_tsai@aspeedtech.com>

properties:
  max-rpm:
    description:
      Max RPM supported by fan.
    $ref: /schemas/types.yaml#/definitions/uint32
    maximum: 100000

  min-rpm:
    description:
      Min RPM supported by fan.
    $ref: /schemas/types.yaml#/definitions/uint32
    maximum: 1000

  pulses-per-revolution:
    description:
      The number of pulse from fan sensor per revolution.
    $ref: /schemas/types.yaml#/definitions/uint32
    maximum: 4

  tach-div:
    description:
      Divisor for the tach sampling clock, which determines the sensitivity of the tach pin.
    $ref: /schemas/types.yaml#/definitions/uint32

  target-rpm:
    description:
      The default desired fan speed in RPM.
    $ref: /schemas/types.yaml#/definitions/uint32

  fan-driving-mode:
    description:
      Select the driving mode of the fan.(DC, PWM and so on)
    $ref: /schemas/types.yaml#/definitions/string
    enum: [ dc, pwm ]

  pwms:
    description:
      PWM provider.
    maxItems: 1

  "#cooling-cells":
    const: 2

  cooling-levels:
    description:
      The control value which correspond to thermal cooling states.
    $ref: /schemas/types.yaml#/definitions/uint32-array

  tach-ch:
    description:
      The tach channel used for the fan.
    $ref: /schemas/types.yaml#/definitions/uint8-array

  label:
    description:
      Optional fan label

  fan-supply:
    description:
      Power supply for fan.

  reg:
    maxItems: 1

additionalProperties: true

...