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

   - PMBus driver for MPS Multi-phase mp5023

   - PMBus driver for Delta AHE-50DC fan control module

   - Driver for NZXT RGB&Fan Controller/Smart Device v2

   - Driver for Texas Instruments INA238

   - Driver to support X370 Asus WMI

   - Driver to support B550 Asus WMI

  Other notable changes:

   - Cleanup of ntc_thermistor driver, and added support for Samsung
     1404-001221 NTC

   - Improve detection of LM84, MAX1617, and MAX1617A in adm1021 driver

   - Clean up tmp401 driver, and convert to with_info API

   - Add support for regulators and IR38060, IR38164 IR38263 to ir38064
     PMBus driver

   - Add support for AMD Family 19h Models 10h-1Fh and A0h-AFh to
     k10temp driver

   - Add support for F81966 to f71882fg driver

   - Add support for ONSEMI N34TS04 to jc42 driver

   - Clean up and simplify dell-smm driver

   - Add support for ROG STRIX B550-A/X570-I GAMING to nct6775 driver

  And various other minor improvements and fixes"

* tag 'hwmon-for-v5.17' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (49 commits)
  hwmon: (nzxt-smart2) make array detect_fans_report static const
  hwmon: (xgene-hwmon) Add free before exiting xgene_hwmon_probe
  hwmon: (nzxt-smart2) Fix "unused function" warning
  hwmon: (dell-smm) Pack the whole smm_regs struct
  hwmon: (nct6775) Additional check for ChipID before ASUS WMI usage
  hwmon: (mr75203) fix wrong power-up delay value
  hwmon/pmbus: (ir38064) Fix spelling mistake "comaptible" -> "compatible"
  hwmon/pmbus: (ir38064) Expose a regulator
  hwmon/pmbus: (ir38064) Add of_match_table
  hwmon/pmbus: (ir38064) Add support for IR38060, IR38164 IR38263
  hwmon: add driver for NZXT RGB&Fan Controller/Smart Device v2.
  hwmon: (nct6775) add ROG STRIX B550-A/X570-I GAMING
  hwmon: (pmbus) Add support for MPS Multi-phase mp5023
  dt-bindings: add Delta AHE-50DC fan control module
  hwmon: (pmbus) Add Delta AHE-50DC fan control module driver
  hwmon: prefix kernel-doc comments for structs with struct
  hwmon: (ntc_thermistor) Add Samsung 1404-001221 NTC
  hwmon: (ntc_thermistor) Drop OF dependency
  hwmon: (dell-smm) Unify i8k_ioctl() and i8k_ioctl_unlocked()
  hwmon: (dell-smm) Simplify ioctl handler
  ...
parents 5c947d0d 00f5117c
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -76,6 +76,7 @@ properties:
      - const: murata,ncp15wl333
      - const: murata,ncp03wf104
      - const: murata,ncp15xh103
      - const: samsung,1404-001221
      # Deprecated "ntp," compatible strings
      - const: ntc,ncp15wb473
        deprecated: true
+22 −0
Original line number Diff line number Diff line
@@ -26,6 +26,7 @@ properties:
      - ti,ina226
      - ti,ina230
      - ti,ina231
      - ti,ina238

  reg:
    maxItems: 1
@@ -35,6 +36,27 @@ properties:
      Shunt resistor value in micro-Ohm.
    $ref: /schemas/types.yaml#/definitions/uint32

  ti,shunt-gain:
    description: |
      Programmable gain divisor for the shunt voltage accuracy and range. This
      property only applies to devices that have configurable PGA/ADCRANGE. The
      gain value is used configure the gain and to convert the shunt voltage,
      current and power register values when reading measurements from the
      device.

      For devices that have a configurable PGA (e.g. INA209, INA219, INA220),
      the gain value maps directly with the PG bits of the config register.

      For devices that have ADCRANGE configuration (e.g. INA238) a shunt-gain
      value of 1 maps to ADCRANGE=1 where no gain divisor is applied to the
      shunt voltage, and a value of 4 maps to ADCRANGE=0 such that a wider
      voltage range is used.

      The default value is device dependent, and is defined by the reset value
      of PGA/ADCRANGE in the respective configuration registers.
    $ref: /schemas/types.yaml#/definitions/uint32
    enum: [1, 2, 4, 8]

required:
  - compatible
  - reg
+8 −0
Original line number Diff line number Diff line
@@ -73,6 +73,8 @@ properties:
          - dallas,ds4510
            # Digital Thermometer and Thermostat
          - dallas,ds75
            # Delta AHE-50DC Open19 power shelf fan control module
          - delta,ahe50dc-fan
            # Delta Electronics DPS-650-AB power supply
          - delta,dps650ab
          # Delta Electronics DPS920AB 920W 54V Power Supply
@@ -121,8 +123,14 @@ properties:
          - ibm,cffps2
            # Infineon IR36021 digital POL buck controller
          - infineon,ir36021
          # Infineon IR38060 Voltage Regulator
          - infineon,ir38060
            # Infineon IR38064 Voltage Regulator
          - infineon,ir38064
          # Infineon IR38164 Voltage Regulator
          - infineon,ir38164
          # Infineon IR38263 Voltage Regulator
          - infineon,ir38263
            # Infineon SLB9635 (Soft-) I2C TPM (old protocol, max 100khz)
          - infineon,slb9635tt
            # Infineon SLB9645 I2C TPM (new protocol, max 400khz)
+38 −0
Original line number Diff line number Diff line
.. SPDX-License-Identifier: GPL-2.0-or-later

Kernel driver asus_wmi_ec_sensors
=================================

Supported boards:
 * PRIME X570-PRO,
 * Pro WS X570-ACE,
 * ROG CROSSHAIR VIII DARK HERO,
 * ROG CROSSHAIR VIII FORMULA,
 * ROG CROSSHAIR VIII HERO,
 * ROG STRIX B550-E GAMING,
 * ROG STRIX B550-I GAMING,
 * ROG STRIX X570-E GAMING.

Authors:
    - Eugene Shalygin <eugene.shalygin@gmail.com>

Description:
------------
ASUS mainboards publish hardware monitoring information via Super I/O
chip and the ACPI embedded controller (EC) registers. Some of the sensors
are only available via the EC.

ASUS WMI interface provides a method (BREC) to read data from EC registers,
which is utilized by this driver to publish those sensor readings to the
HWMON system. The driver is aware of and reads the following sensors:

1. Chipset (PCH) temperature
2. CPU package temperature
3. Motherboard temperature
4. Readings from the T_Sensor header
5. VRM temperature
6. CPU_Opt fan RPM
7. Chipset fan RPM
8. Readings from the "Water flow meter" header (RPM)
9. Readings from the "Water In" and "Water Out" temperature headers
10. CPU current
+78 −0
Original line number Diff line number Diff line
.. SPDX-License-Identifier: GPL-2.0-or-later

Kernel driver asus_wmi_sensors
=================================

Supported boards:
 * PRIME X399-A,
 * PRIME X470-PRO,
 * ROG CROSSHAIR VI EXTREME,
 * ROG CROSSHAIR VI HERO,
 * ROG CROSSHAIR VI HERO (WI-FI AC),
 * ROG CROSSHAIR VII HERO,
 * ROG CROSSHAIR VII HERO (WI-FI),
 * ROG STRIX B450-E GAMING,
 * ROG STRIX B450-F GAMING,
 * ROG STRIX B450-I GAMING,
 * ROG STRIX X399-E GAMING,
 * ROG STRIX X470-F GAMING,
 * ROG STRIX X470-I GAMING,
 * ROG ZENITH EXTREME,
 * ROG ZENITH EXTREME ALPHA.

Authors:
    - Ed Brindley <kernel@maidavale.org>

Description:
------------
ASUS mainboards publish hardware monitoring information via WMI interface.

ASUS WMI interface provides a methods to get list of sensors and values of
such, which is utilized by this driver to publish those sensor readings to the
HWMON system.

The driver is aware of and reads the following sensors:
 * CPU Core Voltage,
 * CPU SOC Voltage,
 * DRAM Voltage,
 * VDDP Voltage,
 * 1.8V PLL Voltage,
 * +12V Voltage,
 * +5V Voltage,
 * 3VSB Voltage,
 * VBAT Voltage,
 * AVCC3 Voltage,
 * SB 1.05V Voltage,
 * CPU Core Voltage,
 * CPU SOC Voltage,
 * DRAM Voltage,
 * CPU Fan RPM,
 * Chassis Fan 1 RPM,
 * Chassis Fan 2 RPM,
 * Chassis Fan 3 RPM,
 * HAMP Fan RPM,
 * Water Pump RPM,
 * CPU OPT RPM,
 * Water Flow RPM,
 * AIO Pump RPM,
 * CPU Temperature,
 * CPU Socket Temperature,
 * Motherboard Temperature,
 * Chipset Temperature,
 * Tsensor 1 Temperature,
 * CPU VRM Temperature,
 * Water In,
 * Water Out,
 * CPU VRM Output Current.

Known Issues:
 * The WMI implementation in some of Asus' BIOSes is buggy. This can result in
   fans stopping, fans getting stuck at max speed, or temperature readouts
   getting stuck. This is not an issue with the driver, but the BIOS. The Prime
   X470 Pro seems particularly bad for this. The more frequently the WMI
   interface is polled the greater the potential for this to happen. Until you
   have subjected your computer to an extended soak test while polling the
   sensors frequently, don't leave you computer unattended. Upgrading to new
   BIOS version with method version greater than or equal to two should
   rectify the issue.
 * A few boards report 12v voltages to be ~10v.
Loading