On Thu, Oct 13, 2022 at 11:48:36AM +0200, Naresh Solanki wrote: > 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# > > Signed-off-by: Naresh Solanki <Naresh.Solanki@xxxxxxxxxxxxx> > --- > .../devicetree/bindings/hwmon/fan-common.yaml | 48 +++++++++++++++++++ > 1 file changed, 48 insertions(+) > create mode 100644 Documentation/devicetree/bindings/hwmon/fan-common.yaml > > diff --git a/Documentation/devicetree/bindings/hwmon/fan-common.yaml b/Documentation/devicetree/bindings/hwmon/fan-common.yaml > new file mode 100644 > index 000000000000..224f5013c93f > --- /dev/null > +++ b/Documentation/devicetree/bindings/hwmon/fan-common.yaml > @@ -0,0 +1,48 @@ > +# SPDX-License-Identifier: GPL-2.0-or-later 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@xxxxxxxxxxxxx> > + > +properties: > + max-rpm: > + description: > + Max RPM supported by fan. > + $ref: /schemas/types.yaml#/definitions/uint32 > + > + pulses-per-revolution: > + description: > + The number of pulse from fan sensor per revolution. > + $ref: /schemas/types.yaml#/definitions/uint32 > + > + default-rpm: > + description: > + Target RPM the fan should be configured during driver probe. So if we unload and reload the driver module, it should go back to the default? I think it is really, 'target RPM if not already configured' which could be keep the setting from a register (e.g. what the bootloader set) or perhaps you already have temperature information to use... > + $ref: /schemas/types.yaml#/definitions/uint32 > + pwm-frequency: > + description: > + PWM frequency for fan in Hertz(Hz). > + $ref: /schemas/types.yaml#/definitions/uint32 > + > + pwm-polarity-inverse: > + description: > + Inverse PWM polarity for fan. > + type: boolean As I said before, the PWM binding handles these 2 settings. Use it. Yes, it's a bit of an overkill when the child is the consumer of the parent. Until some 'clever' h/w engineer decides to use one of the PWMs for something else like a backlight. Rob