1140 Commits
Author SHA1 Message Date
Chen-Shi-HongandGuenter Roeck 51f57607e3 docs: hwmon: sy7636a: fix temperature sysfs attribute name
The hwmon sysfs naming convention uses
temp[1-*]_input for temperature channels.

Documentation/hwmon/sy7636a-hwmon.rst currently documents
temp0_input, while the driver uses the standard hwmon
temperature channel interface.

Update the documentation to use temp1_input.

Signed-off-by: Chen-Shi-Hong <eric039eric@gmail.com>
Link: https://lore.kernel.org/r/20260514154108.1937-1-eric039eric@gmail.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-05-14 15:48:57 -07:00
Ninad NaikandGuenter Roeck 5ed26ffe57 Documentation: hwmon: fix link to ideapad-laptop.c file
The ideapad-laptop.c file now exists inside drivers/platform/x86/lenovo/
directory. Updating the GitHub link to the correct path.

Signed-off-by: Ninad Naik <ninadnaik07@gmail.com>
Link: https://lore.kernel.org/r/20260417191411.713958-1-ninadnaik07@gmail.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-04-30 10:56:49 -07:00
Victor DuicuandGuenter Roeck e2fe950f34 hwmon: add support for MCP998X
Add driver for Microchip MCP998X/33 and MCP998XD/33D
Multichannel Automotive Temperature Monitor Family.

Signed-off-by: Victor Duicu <victor.duicu@microchip.com>
Link: https://lore.kernel.org/r/20260403-add-mcp9982-hwmon-v12-2-b3bfb26ff136@microchip.com
[groeck: Add missing break; to avoid build warning]
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-04-11 00:02:13 -07:00
Chris PackhamandGuenter Roeck a2981c20ad hwmon: pmbus: Add support for Sony APS-379
Add pmbus support for Sony APS-379 power supplies. There are a few PMBUS
commands that return data that is undocumented/invalid so these need to
be rejected with -ENXIO. The READ_VOUT command returns data in linear11
format instead of linear16 so we need to workaround this.

Signed-off-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
Link: https://lore.kernel.org/r/20260410012414.2818829-3-chris.packham@alliedtelesis.co.nz
[groeck: Dropped empty line from documentation; added module name to Kconfig]
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-04-10 08:26:36 -07:00
Randy DunlapandGuenter Roeck 0b30c1037a hwmon: (yogafan) various markup improvements
There are several places in yogafan.rst where it appears that lines
are meant to be presented on their own but instead they are strung
together due to the lack of markups. Fix these issues by:

- using bullets where needed
- indenting continuation lines of bulleted items
- using a table where appropriate
- using a literal block where appropriate

Fixes: c67c248ca4 ("hwmon: (yogafan) Add support for Lenovo Yoga/Legion fan monitoring")
Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Link: https://lore.kernel.org/r/20260407052317.2097791-1-rdunlap@infradead.org
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-04-07 06:53:03 -07:00
Flaviu NistorandGuenter Roeck 92842776cc hwmon: (tmp102) add support for update interval
Since the sensor supports different sampling intervals via
bits CR0 and CR1 from the CONFIG register, add support in
order for the conversion rate to be changed from user space.
Default is 4 conv/sec.

Signed-off-by: Flaviu Nistor <flaviu.nistor@gmail.com>
Link: https://lore.kernel.org/r/20260403140654.10368-1-flaviu.nistor@gmail.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-04-03 11:10:05 -07:00
Randy DunlapandGuenter Roeck 6d50ae2566 hwmon: (yogafan) fix markup warning
Add a blank line between the License and heading lines to prevent a
documentation build warning:

Documentation/hwmon/yogafan.rst:2: WARNING: Explicit markup ends without
  a blank line; unexpected unindent. [docutils]

Fixes: c67c248ca4 ("hwmon: (yogafan) Add support for Lenovo Yoga/Legion fan monitoring")
Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Link: https://lore.kernel.org/r/20260330214624.3781789-1-rdunlap@infradead.org
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-04-03 11:10:00 -07:00
Sergio MelasandGuenter Roeck c67c248ca4 hwmon: (yogafan) Add support for Lenovo Yoga/Legion fan monitoring
This driver provides fan speed monitoring for Lenovo Yoga, Legion, and
IdeaPad laptops by interfacing with the Embedded Controller (EC) via ACPI.

To address low-resolution sampling in Lenovo EC firmware, a Rate-Limited
Lag (RLLag) filter is implemented. The filter ensures a consistent physical
curve regardless of userspace polling frequency.

Hardware identification is performed via DMI-based quirk tables, which
map specific ACPI object paths and register widths (8-bit vs 16-bit)
deterministically.

Signed-off-by: Sergio Melas <sergiomelas@gmail.com>
Link: https://lore.kernel.org/r/20260327221602.18832-1-sergiomelas@gmail.com
[groeck: Dropped double empty line in Kconfig]
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-04-03 11:09:09 -07:00
Dawei LiuandGuenter Roeck 7c760db74c hwmon: (pmbus/isl68137) Add support for Renesas RAA228942 and RAA228943
Add I2C device IDs for Renesas RAA228942 and RAA228943.

At the Linux PMBus hwmon interface level currently supported by this
driver, these devices are compatible with the existing 2-rail non-TC
controllers, so devicetree will use fallback compatibles and no
dedicated OF match entries are needed.

Signed-off-by: Dawei Liu <dawei.liu.jy@renesas.com>
Link: https://lore.kernel.org/r/20260325090208.857-3-dawei.liu.jy@renesas.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-03-30 19:45:06 -07:00
Markus HoffmannandGuenter Roeck 66b8eaf8de hwmon: (it87) Add support for IT8689E
Add support for the ITE IT8689E Super I/O chip. The IT8689E supports
newer autopwm, 12mV ADC, 16-bit fans, six fans, six PWM channels,
PWM frequency 2, six temperature inputs, AVCC3, temperature offset,
and fan on/off control.

Give it8689 its own GPIO configuration block in it87_find() rather
than sharing the it8620/it8628 block. The shared block reads
IT87_SIO_PINX2_REG and either marks IN3 as internal AVCC or skips
IN9. Because it8689 declares FEAT_AVCC3, IN9 is already marked as
always-internal before the GPIO block is reached; applying the PINX2
check would either create duplicate AVCC labels on IN3 and IN9 or
incorrectly skip IN9.

Also update Documentation/hwmon/it87.rst and drivers/hwmon/Kconfig to
document the newly supported chip.

Signed-off-by: Markus Hoffmann <markus@thehoffs.at>
Link: https://lore.kernel.org/r/20260322103301.18112-1-markus@thehoffs.at
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-03-30 19:45:06 -07:00
Nuno SáandGuenter Roeck d782715ae7 docs: hwmon: ltc4282: Fix scanned addresses
The LTC4282 driver does not implement an I2C .detect() callback, meaning no
I2C address scanning is performed. Update the documentation to
reflect this by replacing the listed I2C address ranges with "-".

Signed-off-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20260304-hwmon-ltc4282-minor-improvs-v1-1-344622924d3a@analog.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-03-30 19:45:05 -07:00
Mariano AbadandGuenter Roeck a28b088ede hwmon: Add LattePanda Sigma EC driver
Add hardware monitoring support for the LattePanda Sigma SBC
(DFRobot, ITE IT8613E EC). The driver reads fan speed and
temperatures via direct port I/O, as the BIOS disables the
ACPI EC interface.

Signed-off-by: Mariano Abad <weimaraner@gmail.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-03-30 19:45:05 -07:00
Flaviu NistorandGuenter Roeck 0600919f8c hwmon: tmp102: Add support for TMP110 and TMP113 devices
TMP110 and TMP113 temperature sensors are software compatible
with TMP102 sensor but have different accuracy (maximum error).

Signed-off-by: Flaviu Nistor <flaviu.nistor@gmail.com>
Link: https://lore.kernel.org/r/20260225095132.29954-1-flaviu.nistor@gmail.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-03-30 19:45:05 -07:00
Volodimir BuchakchiyskiyandGuenter Roeck 03f40ff2a0 hwmon: (asus-ec-sensors) add ROG STRIX Z790-H GAMING WIFI
Add limited support for ROG STRIX Z790-H GAMING WIFI (VRM temp and
T_Sensor only).

Signed-off-by: Volodimir Buchakchiyskiy <vladimirbuchakchiiskiy@gmail.com>
Signed-off-by: Eugene Shalygin <eugene.shalygin@gmail.com>
Link: https://lore.kernel.org/r/20260228114412.358148-1-eugene.shalygin@gmail.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-03-30 19:45:05 -07:00
Ian RayandGuenter Roeck 88a928eebc hwmon: (ina2xx) Add support for INA234
INA234 is register compatible to INA226 (excepting manufacturer and die
or device id registers) but has different scaling.

Signed-off-by: Ian Ray <ian.ray@gehealthcare.com>
Reviewed-by: Bence Csókás <bence98@sch.bme.hu> # v2
Tested-by: Jens Almer <bagawk@gmail.com>
Tested-by: Jonas Rebmann <jre@pengutronix.de>
Link: https://lore.kernel.org/r/20260220112024.97446-4-ian.ray@gehealthcare.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-03-30 19:45:04 -07:00
Ian RayandGuenter Roeck f6e14b5bca hwmon: (ina2xx) Make it easier to add more devices
* Make sysfs entries documentation easier to maintain.
* Use multi-line enum.
* Correct "has_power_average" comment.

Create a new "has_update_interval" member for chips which support
averaging.

Signed-off-by: Ian Ray <ian.ray@gehealthcare.com>
Reviewed-by: Bence Csókás <bence98@sch.bme.hu> # v2
Tested-by: Jens Almer <bagawk@gmail.com>
Link: https://lore.kernel.org/r/20260220112024.97446-3-ian.ray@gehealthcare.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-03-30 19:45:04 -07:00
Varasina FarmadaniandGuenter Roeck 940c92c40e hwmon: (asus-ec-sensors) add ROG STRIX X470-F GAMING
Add support for ROG STRIX X470-F GAMING

Signed-off-by: Varasina Farmadani <sina@sinanonym.my.id>
Signed-off-by: Eugene Shalygin <eugene.shalygin@gmail.com>
Link: https://lore.kernel.org/r/20260215151743.20138-4-eugene.shalygin@gmail.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-03-30 19:45:04 -07:00
Timothy C. Sweeney-FanelliandGuenter Roeck ab4b7071ae hwmon: (asus-ec-sensors )add ROG CROSSHAIR X670E EXTREME
Add support for ROG CROSSHAIR X670E EXTREME

Signed-off-by: Timothy C. Sweeney-Fanelli <tim@zerobytellc.com>
Signed-off-by: Eugene Shalygin <eugene.shalygin@gmail.com>
Link: https://lore.kernel.org/r/20260215151743.20138-3-eugene.shalygin@gmail.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-03-30 19:45:04 -07:00
Andy ShevchenkoandGuenter Roeck 7c3a3b29de hwmon: (bt1-pvt) Remove not-going-to-be-supported code for Baikal SoC
As noticed in the discussion [1] the Baikal SoC and platforms
are not going to be finalized, hence remove stale code.

Link: https://lore.kernel.org/lkml/22b92ddf-6321-41b5-8073-f9c7064d3432@infradead.org/ [1]
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Link: https://lore.kernel.org/r/20260220143500.2401057-1-andriy.shevchenko@linux.intel.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-03-30 19:45:04 -07:00
Sanman PradhanandGuenter Roeck bf08749a6a hwmon: (adm1177) fix sysfs ABI violation and current unit conversion
The adm1177 driver exposes the current alert threshold through
hwmon_curr_max_alarm. This violates the hwmon sysfs ABI, where
*_alarm attributes are read-only status flags and writable thresholds
must use currN_max.

The driver also stores the threshold internally in microamps, while
currN_max is defined in milliamps. Convert the threshold accordingly
on both the read and write paths.

Widen the cached threshold and related calculations to 64 bits so
that small shunt resistor values do not cause truncation or overflow.
Also use 64-bit arithmetic for the mA/uA conversions, clamp writes
to the range the hardware can represent, and propagate failures from
adm1177_write_alert_thr() instead of silently ignoring them.

Update the hwmon documentation to reflect the attribute rename and
the correct units returned by the driver.

Fixes: 09b08ac9e8 ("hwmon: (adm1177) Add ADM1177 Hot Swap Controller and Digital Power Monitor driver")
Signed-off-by: Sanman Pradhan <psanman@juniper.net>
Acked-by: Nuno Sá <nuno.sa@analog.com>
Link: https://lore.kernel.org/r/20260325051246.28262-1-sanman.pradhan@hpe.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-03-25 06:50:13 -07:00
Sanman PradhanandGuenter Roeck 0adc752b4f hwmon: (peci/cputemp) Fix crit_hyst returning delta instead of absolute temperature
The hwmon sysfs ABI expects tempN_crit_hyst to report the temperature at
which the critical condition clears, not the hysteresis delta from the
critical limit.

The peci cputemp driver currently returns tjmax - tcontrol for
crit_hyst_type, which is the hysteresis margin rather than the
corresponding absolute temperature.

Return tcontrol directly, and update the documentation accordingly.

Fixes: bf3608f338 ("hwmon: peci: Add cputemp driver")
Cc: stable@vger.kernel.org
Signed-off-by: Sanman Pradhan <psanman@juniper.net>
Link: https://lore.kernel.org/r/20260323002352.93417-2-sanman.pradhan@hpe.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-03-24 07:55:34 -07:00
Michael WalleandGuenter Roeck e710b22837 Revert "hwmon: add SMARC-sAM67 support"
This reverts commit 443b39c82c.

I was just informed that this product is discontinued (without being
ever released to the market). Pull the plug and let's not waste any more
maintainers time.

Signed-off-by: Michael Walle <mwalle@kernel.org>
Link: https://lore.kernel.org/r/20260223100459.844967-4-mwalle@kernel.org
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-02-24 07:25:26 -08:00
Randy DunlapandGuenter Roeck ac209a7d81 hwmon: (emc1403) correct a malformed email address
Add a closing '>' to Kalhan's emaill address.

line 60:  Kalhan Trisal <kalhan.trisal@intel.com

Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Link: https://lore.kernel.org/r/20260215010327.1687304-1-rdunlap@infradead.org
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-02-22 15:48:30 -08:00
Linus Torvalds 532355a756 Merge tag 'hwmon-for-v7.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
Pull hwmon updates from Guenter Roeck:
 "New PMBus drivers:

   - HiTRON HAC300S power supply

   - Monolithic MP5926 Hot-Swap Controller

   - STEF48H28 hot-swap controller

  Support for new chips in existing drivers

   - Support for Pro WS TRX50-SAGE WIFI A and ROG MAXIMUS X HERO
     (asus-ec-sensors)

   - Support for Dell OptiPlex 7080 (dell-smm)

   - Support for F81968 (f71882fg)

   - Support for Micro PC 2 (gpd-fan)

   - New customer ID for ASRock Z590 Taichi (nct6683)

   - Support for ASUS Pro WS WRX90E-SAGE SE (nct6775)

   - Support for SHT85 (sht3x)

   - Support for P3T1035 and P3T2030 (tmp108)

  Bug fixes:

   - Revert "fix" for UAF which didn't fix a UAF but introduced a race
     condition resulting in a NULL pointer crash (ibmpex)

   - Fix failure to instantiate driver if the chip is configured for VID
     mode (pmbus/mpq8785)

   - Use READ/WRITE_ONCE to avoid compiler optimization induced race
     (max16065)

   - Resource leak fixes (nct7363, emc2305)

  Other notable changes:

   - Support for temperature limit thresholds (cros_ec)

   - Add TjMax for Silvermont through Tremont Atoms (coretemp)

  Various other minor improvements"

* tag 'hwmon-for-v7.0-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (42 commits)
  hwmon: (pmbus/mpq8785) fix VOUT_MODE mismatch during identification
  Revert "hwmon: (ibmpex) fix use-after-free in high/low store"
  hwmon: (max16065) Use READ/WRITE_ONCE to avoid compiler optimization induced race
  hwmon: (nct6775) use sysfs_emit instead of sprintf
  hwmon: pmbus: fix table in STEF48H28 documentation
  hwmon: Add support for HiTRON HAC300S PSU
  dt-bindings: trivial-devices: Add hitron,hac300s
  hwmon: (cros_ec) Add support for temperature thresholds
  hwmon: (cros_ec) Move temperature channel params to a macro
  hwmon: (cros_ec) Add support for fan target speed
  hwmon: (cros_ec) Split up supported features in the documentation
  hwmon: (tmp108) Add P3T1035 and P3T2030 support
  hwmon: (tmp108) Add support for P3T1035 and P3T2030
  dt-bindings: hwmon: ti,tmp108: Add P3T1035,P3T2030
  hwmon: pmbus: add support for STEF48H28
  dt-bindings: hwmon: add STEF48H28
  hwmon: (nct7363) Fix a resource leak in nct7363_present_pwm_fanin
  hwmon: (emc2305) Fix a resource leak in emc2305_of_parse_pwm_child
  hwmon: (gpd-fan) add support for Micro PC 2
  hwmon: (coretemp) Add TjMax for Silvermont through Tremont Atoms
  ...
2026-02-11 11:00:19 -08:00
Randy DunlapandGuenter Roeck eaeb29ce7c hwmon: pmbus: fix table in STEF48H28 documentation
"make htmldocs" reports build errors/warnings:

Documentation/hwmon/stef48h28.rst:45: ERROR: Missing matching underline for section title overline.
=========================================================
in1_label               "vin".
in1_input               Measured voltage. From READ_VIN register. [docutils]
Documentation/hwmon/stef48h28.rst:73: WARNING: Title underline too short.
temp2_input             Measured temperature. From READ_TEMPERATURE_2 register.
========================================================= [docutils]

Fix the table overline/underline line lengths and convert it to
a 2-column table.

Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Link: https://lore.kernel.org/r/20260128002200.1665941-1-rdunlap@infradead.org
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2026-02-07 09:33:00 -08:00