Commit 0baf6dcc authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull hwmon updates from Guenter Roeck:
 "New drivers:

   - Driver for MAX31760 fan speed controller

   - Driver for TEXAS TPS546D24 Buck Converter

   - Driver for EMC2301/2/3/5 RPM-based PWM Fan Speed Controller

  Removed drivers:

   - Drop obsolete asus_wmi_ec_sensors driver

  Cleanups, affecting various drivers:

   - Use DEFINE_SIMPLE_DEV_PM_OPS where appropriate

   - Remove forward declarations

   - Move from strlcpy with unused retval to strscpy

   - Make use of devm_clk_get_enabled()

   - Drop devm_of_pwm_get()

  Other notable cleanup and improvements:

   - Support for additional USB devide ID and support for reporting of
     rail mode via debugfs added to corsair-psu driver

   - Support for aditional USB ID in nzxt-smart2 driver

   - Support for Aquacomputer High Flow Next in aquacomputer_d5next
     driver

   - Major cleanup of pwm-fan driver

   - Major cleanup of mr75203 driver, and added support for new device
     revision

  And various other minor fixes and cleanups"

* tag 'hwmon-for-v6.1' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (86 commits)
  hwmon: (corsair-psu) add USB id of new revision of the HX1000i psu
  hwmon: (pmbus/mp2888) Fix sensors readouts for MPS Multi-phase mp2888 controller
  dt-bindings: hwmon: sensirion,shtc1: Clean up spelling mistakes and grammar
  hwmon: (nct6683) remove unused variable in nct6683_create_attr_group
  hwmon: w83627hf: Reorder symbols to get rid of a few forward declarations
  hwmon: (ina3221) Use DEFINE_RUNTIME_DEV_PM_OPS() and pm_ptr()
  hwmon: (w83627ehf) Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
  hwmon: (tmp108) Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
  hwmon: (tmp103) Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
  hwmon: (tmp102) Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
  hwmon: (pwm-fan) Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
  hwmon: (nct6775) Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
  hwmon: (max6639) Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
  hwmon: (max31730) witch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
  hwmon: (max31722) Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
  hwmon: (ltc2947) Switch to EXPORT_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
  hwmon: (lm90) Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
  hwmon: (it87) Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
  hwmon: (gpio-fan) Switch to DEFINE_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
  hwmon: (adt7x10) Switch to EXPORT_SIMPLE_DEV_PM_OPS() and pm_sleep_ptr()
  ...
parents b86406d4 0cf46a65
Loading
Loading
Loading
Loading
+42 −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/adi,max31760.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Analog Devices MAX31760 Fan-Speed Controller

maintainers:
  - Ibrahim Tilki <Ibrahim.Tilki@analog.com>

description: |
  Analog Devices MAX31760 Fan-Speed Controller
  https://datasheets.maximintegrated.com/en/ds/MAX31760.pdf

properties:
  compatible:
    enum:
      - adi,max31760

  reg:
    description: I2C address of slave device.
    minimum: 0x50
    maximum: 0x57

required:
  - compatible
  - reg

additionalProperties: false

examples:
  - |
    i2c {
        #address-cells = <1>;
        #size-cells = <0>;

        fan-controller@50 {
            reg = <0x50>;
            compatible = "adi,max31760";
        };
    };
+2 −2
Original line number Diff line number Diff line
@@ -22,7 +22,7 @@ properties:

  clocks:
    items:
      - description: AHB reference clock
      - description: System reference clock

  '#thermal-sensor-cells':
    const: 0
@@ -40,5 +40,5 @@ examples:
        compatible = "microchip,sparx5-temp";
        reg = <0x10508110 0xc>;
        #thermal-sensor-cells = <0>;
        clocks = <&ahb_clk>;
        clocks = <&sys_clk>;
    };
+95 −1
Original line number Diff line number Diff line
@@ -9,6 +9,32 @@ title: Moortec Semiconductor MR75203 PVT Controller bindings
maintainers:
  - Rahul Tanwar <rtanwar@maxlinear.com>

description: |
  A Moortec PVT (Process, Voltage, Temperature) monitoring logic design can
  include many different units.
  Such a design will usually consists of several Moortec's embedded analog IPs,
  and a single Moortec controller (mr75203) to configure and control the IPs.

  Some of the Moortec's analog hard IPs that can be used in a design:
  *) Temperature Sensor (TS) - used to monitor core temperature (e.g. mr74137).
  *) Voltage Monitor (VM) - used to monitor voltage levels (e.g. mr74138).
  *) Process Detector (PD) - used to assess silicon speed (e.g. mr74139).
  *) Delay Chain - ring oscillator connected to the PD, used to measure IO
     based transistors (e.g. mr76008 ring oscillator at 1.1V, mr76007 ring
     oscillator at 1.8V).
  *) Pre Scaler - provides divide-by-X scaling of input voltage, which can then
     be presented for VM for measurement within its range (e.g. mr76006 -
     divide by 2 pre-scaler).

  TS, VM & PD also include a digital interface, which consists of configuration
  inputs and measurement outputs.

  Some of the units have number of series, each series can have slightly
  different characteristics.

  The mr75203 binding describes configuration for the controller unit, but also
  for some of the analog IPs.

properties:
  compatible:
    const: moortec,mr75203
@@ -44,12 +70,76 @@ properties:
  "#thermal-sensor-cells":
    const: 1

  moortec,vm-active-channels:
    description:
      Defines the number of channels per VM that are actually used and are
      connected to some input source.
      Maximum number of items - number of VMs.
      Maximum value of each item - number of channels.
      Minimum value of each item - 0 (which means entire VM sensor is not used).
    $ref: /schemas/types.yaml#/definitions/uint8-array

  moortec,vm-pre-scaler-x2:
    description:
      Defines the channels that use a mr76006 pre-scaler to divide the input
      source by 2.
      The pre-scaler is used for input sources that exceed the VM input range.
      The driver uses this information to present to the user with the actual
      value of the voltage source.
      For channels that are not listed, no pre-scaler is assumed.
      Maximum number of items - total number of channels in all VMs.
      Each channel should not appear more than once.
    $ref: /schemas/types.yaml#/definitions/uint8-array

  moortec,ts-series:
    description:
      Definition of the temperature equation and coefficients that shall be
      used to convert the digital output to value in milli-Celsius.
    minimum: 5
    maximum: 6
    default: 5
    $ref: /schemas/types.yaml#/definitions/uint32

  moortec,ts-coeff-g:
    description:
      G coefficient for temperature equation.
      Default for series 5 = 60000
      Default for series 6 = 57400
    multipleOf: 1000
    minimum: 1000
    $ref: /schemas/types.yaml#/definitions/uint32

  moortec,ts-coeff-h:
    description:
      H coefficient for temperature equation.
      Default for series 5 = 200000
      Default for series 6 = 249400
    multipleOf: 1000
    minimum: 1000
    $ref: /schemas/types.yaml#/definitions/uint32

  moortec,ts-coeff-cal5:
    description:
      cal5 coefficient for temperature equation.
      Default for series 5 = 4094
      Default for series 6 = 4096
    minimum: 1
    $ref: /schemas/types.yaml#/definitions/uint32

  moortec,ts-coeff-j:
    description:
      J coefficient for temperature equation.
      Default for series 5 = -100
      Default for series 6 = 0
    multipleOf: 1000
    maximum: 0
    $ref: /schemas/types.yaml#/definitions/int32

required:
  - compatible
  - reg
  - reg-names
  - clocks
  - resets
  - "#thermal-sensor-cells"

additionalProperties: false
@@ -66,5 +156,9 @@ examples:
        intel,vm-map = [03 01 04 ff ff];
        clocks = <&osc0>;
        resets = <&rcu0 0x40 7>;
        moortec,vm-active-channels = /bits/ 8 <0x10 0x05>;
        moortec,vm-pre-scaler-x2 = /bits/ 8 <5 6 20>;
        moortec,ts-coeff-g = <61400>;
        moortec,ts-coeff-h = <253700>;
        #thermal-sensor-cells = <1>;
    };
+4 −4
Original line number Diff line number Diff line
@@ -10,7 +10,7 @@ maintainers:
  - Christopher Ruehl chris.ruehl@gtsys.com.hk

description: |
  The SHTC1, SHTW1 and SHTC3 are digital humidity and temperature sensor
  The SHTC1, SHTW1 and SHTC3 are digital humidity and temperature sensors
  designed especially for battery-driven high-volume consumer electronics
  applications.
  For further information refere to Documentation/hwmon/shtc1.rst
@@ -31,13 +31,13 @@ properties:
  sensirion,blocking-io:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      If set, the driver hold the i2c bus until measurement is finished.
      If set, the driver holds the i2c bus until the measurement is finished.

  sensirion,low-precision:
    $ref: /schemas/types.yaml#/definitions/flag
    description:
      If set, the sensor aquire data with low precision (not recommended).
      The driver aquire data with high precision by default.
      If set, the sensor acquires data with low precision (not recommended).
      The driver acquires data with high precision by default.

required:
  - compatible
+2 −0
Original line number Diff line number Diff line
@@ -819,6 +819,8 @@ patternProperties:
    description: MNT Research GmbH
  "^modtronix,.*":
    description: Modtronix Engineering
  "^moortec,.*":
    description: Moortec Semiconductor Ltd.
  "^mosaixtech,.*":
    description: Mosaix Technologies, Inc.
  "^motorola,.*":
Loading