Commit c4439713 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull hwmon updates from Guenter Roeck:
 "New driver and chip support:
   - Moortec MR75203 PVT controller
   - MPS Multi-phase mp2975 controller
   - ADM1266
   - Zen3 CPUs
   - Intel MAX 10 BMC

  Enhancements:
   - Support for rated attributes in hwmon core
   - MAX20730:
      - Device monitoring via debugfs
      - VOUT readin adjustment vie devicetree bindings
   - LM75:
      - Devicetree support
      - Regulator support
   - Improved accumulationm logic in amd_energy driver
   - Added fan sensor to gsc-hwmon driver
   - Support for simplified I2C probing

  Various other minor fixes and improvements"

* tag 'hwmon-for-v5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (64 commits)
  hwmon: (pmbus/max20730) adjust the vout reading given voltage divider
  dt-bindings: hwmon: max20730: adding device tree doc for max20730
  hwmon: Add hardware monitoring driver for Moortec MR75203 PVT controller
  hwmon: Add DT bindings schema for PVT controller
  dt-bindings: hwmon: Add the +vs supply to the lm75 bindings
  dt-bindings: hwmon: Convert lm75 bindings to yaml
  docs: hwmon: (ltc2945) update datasheet link
  hwmon: (mlxreg-fan) Fix double "Mellanox"
  hwmon: (pmbus/max20730) add device monitoring via debugfs
  hwmon: (pmbus/max34440) Fix OC fault limits
  hwmon: (bt1-pvt) Wait for the completion with timeout
  hwmon: (bt1-pvt) Cache current update timeout
  hwmon: (bt1-pvt) Test sensor power supply on probe
  hwmon: (lm75) Add regulator support
  hwmon: Add hwmon driver for Intel MAX 10 BMC
  dt-bindings: Add MP2975 voltage regulator device
  hwmon: (pmbus) Add support for MPS Multi-phase mp2975 controller
  hwmon: (tmp513) fix spelling typo in comments
  hwmon: (amd_energy) Update driver documentation
  hwmon: (amd_energy) Improve the accumulation logic
  ...
parents 0486beaf 9b20aec2
Loading
Loading
Loading
Loading
+51 −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,adm1266.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Analog Devices ADM1266 Cascadable Super Sequencer with Margin
  Control and Fault Recording

maintainers:
  - Alexandru Tachici <alexandru.tachici@analog.com>

description: |
  Analog Devices ADM1266 Cascadable Super Sequencer with Margin
  Control and Fault Recording.
  https://www.analog.com/media/en/technical-documentation/data-sheets/ADM1266.pdf

properties:
  compatible:
    enum:
      - adi,adm1266

  reg:
    description: |
      I2C address of slave device.
    items:
      minimum: 0x40
      maximum: 0x4F

  avcc-supply:
    description: |
      Phandle to the Avcc power supply.

required:
  - compatible
  - reg

additionalProperties: false

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

        adm1266@40 {
                compatible = "adi,adm1266";
                reg = <0x40>;
        };
    };
...
+0 −39
Original line number Diff line number Diff line
*LM75 hwmon sensor.

Required properties:
- compatible: manufacturer and chip name, one of
		"adi,adt75",
		"dallas,ds1775",
		"dallas,ds75",
		"dallas,ds7505",
		"gmt,g751",
		"national,lm75",
		"national,lm75a",
		"national,lm75b",
		"maxim,max6625",
		"maxim,max6626",
		"maxim,max31725",
		"maxim,max31726",
		"maxim,mcp980x",
		"nxp,pct2075",
		"st,stds75",
		"st,stlm75",
		"microchip,tcn75",
		"ti,tmp100",
		"ti,tmp101",
		"ti,tmp105",
		"ti,tmp112",
		"ti,tmp175",
		"ti,tmp275",
		"ti,tmp75",
		"ti,tmp75b",
		"ti,tmp75c",

- reg: I2C bus address of the device

Example:

sensor@48 {
	compatible = "st,stlm75";
	reg = <0x48>;
};
+66 −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/lm75.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: LM75 hwmon sensor

maintainers:
  - Jean Delvare <jdelvare@suse.com>
  - Guenter Roeck <linux@roeck-us.net>

properties:
  compatible:
    enum:
      - adi,adt75
      - dallas,ds1775
      - dallas,ds75
      - dallas,ds7505
      - gmt,g751
      - national,lm75
      - national,lm75a
      - national,lm75b
      - maxim,max6625
      - maxim,max6626
      - maxim,max31725
      - maxim,max31726
      - maxim,mcp980x
      - nxp,pct2075
      - st,stds75
      - st,stlm75
      - microchip,tcn75
      - ti,tmp100
      - ti,tmp101
      - ti,tmp105
      - ti,tmp112
      - ti,tmp175
      - ti,tmp275
      - ti,tmp75
      - ti,tmp75b
      - ti,tmp75c

  reg:
    maxItems: 1

  vs-supply:
    description: phandle to the regulator that provides the +VS supply

required:
  - compatible
  - reg

additionalProperties: false

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

      sensor@48 {
        compatible = "st,stlm75";
        reg = <0x48>;
        vs-supply = <&vs>;
      };
    };
+65 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---

$id: http://devicetree.org/schemas/hwmon/maxim,max20730.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Maxim max20730

maintainers:
  - Jean Delvare <jdelvare@suse.com>
  - Guenter Roeck <linux@roeck-us.net>

description: |
  The MAX20730 is a fully integrated, highly efficient switching regulator
  with PMBus for applications operating from 4.5V to 16V and requiring
  up to 25A (max) load. This single-chip regulator provides extremely
  compact, high efficiency power-delivery solutions with high-precision
  output voltages and excellent transient response.

  Datasheets:
    https://datasheets.maximintegrated.com/en/ds/MAX20730.pdf
    https://datasheets.maximintegrated.com/en/ds/MAX20734.pdf
    https://datasheets.maximintegrated.com/en/ds/MAX20743.pdf

properties:
  compatible:
    enum:
      - maxim,max20730
      - maxim,max20734
      - maxim,max20743

  reg:
    maxItems: 1

  vout-voltage-divider:
    description: |
      If voltage divider present at vout, the voltage at voltage sensor pin
      will be scaled. The properties will convert the raw reading to a more
      meaningful number if voltage divider present. It has two numbers,
      the first number is the output resistor, the second number is the total
      resistance. Therefore, the adjusted vout is equal to
      Vout = Vout * output_resistance / total resistance.
    $ref: /schemas/types.yaml#/definitions/uint32-array
    minItems: 2
    maxItems: 2

required:
  - compatible
  - reg

additionalProperties: false

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

      max20730@10 {
        compatible = "maxim,max20730";
        reg = <0x10>;
        vout-voltage-divider = <1000 2000>; // vout would be scaled to 0.5
      };
    };
+71 −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/moortec,mr75203.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Moortec Semiconductor MR75203 PVT Controller bindings

maintainers:
  - Rahul Tanwar <rtanwar@maxlinear.com>

properties:
  compatible:
    const: moortec,mr75203

  reg:
    items:
      - description: PVT common registers
      - description: PVT temprature sensor registers
      - description: PVT process detector registers
      - description: PVT voltage monitor registers

  reg-names:
    items:
      - const: common
      - const: ts
      - const: pd
      - const: vm

  intel,vm-map:
    description:
      PVT controller has 5 VM (voltage monitor) sensors.
      vm-map defines CPU core to VM instance mapping. A
      value of 0xff means that VM sensor is unused.
    $ref: /schemas/types.yaml#definitions/uint8-array
    maxItems: 5

  clocks:
    maxItems: 1

  resets:
    maxItems: 1

  "#thermal-sensor-cells":
    const: 1

required:
  - compatible
  - reg
  - reg-names
  - intel,vm-map
  - clocks
  - resets
  - "#thermal-sensor-cells"

additionalProperties: false

examples:
  - |
    pvt: pvt@e0680000 {
        compatible = "moortec,mr75203";
        reg = <0xe0680000 0x80>,
              <0xe0680080 0x180>,
              <0xe0680200 0x200>,
              <0xe0680400 0xc00>;
        reg-names = "common", "ts", "pd", "vm";
        intel,vm-map = [03 01 04 ff ff];
        clocks = <&osc0>;
        resets = <&rcu0 0x40 7>;
        #thermal-sensor-cells = <1>;
    };
Loading