- Jul 27, 2022
-
-
Aleksa Savic authored
Extend aquacomputer_d5next driver to expose hardware temperature sensors and fans of the Aquacomputer Quadro fan controller, which communicates through a proprietary USB HID protocol. Implemented by Jack Doan [1]. Four temperature sensors and PWM controllable fans are available. The liquid flow sensor is also exposed, implemented by Leonard Anderweit [2]. Additionally, serial number, firmware version and power-on count are exposed through debugfs. This driver has been tested on x86_64. [1] https://github.com/aleksamagicka/aquacomputer_d5next-hwmon/pull/5 [2] https://github.com/aleksamagicka/aquacomputer_d5next-hwmon/pull/9 Originally-from: Jack Doan <me@jackdoan.com> Originally-from: Leonard Anderweit <leonard.anderweit@gmail.com> Signed-off-by:
Aleksa Savic <savicaleksa83@gmail.com> Link: https://lore.kernel.org/r/20220727100606.9328-1-savicaleksa83@gmail.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Armin Wolf authored
Notify users of this driver that each pwmX attribute controls fan number X, meaning that probing of pwm channels is unnecessary. Signed-off-by:
Armin Wolf <W_Armin@gmx.de> Link: https://lore.kernel.org/r/20220727083004.5684-1-W_Armin@gmx.de Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Robert Schmidt authored
Add ASUS TUF GAMING B550-PLUS WIFI II to the WMI monitoring list to enable support for HW monitoring on that board. Signed-off-by:
Robert Schmidt <r-schmidt@web.de> Link: https://lore.kernel.org/r/YuBZodZHOnDll5zy@hydra Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
- Jul 26, 2022
-
-
Andy Shevchenko authored
printf()-like functions in the kernel have extensions, such as %*phN to dump small pieces of memory as hex bytes. Replace custom approach with the direct use of %*phN. Signed-off-by:
Andy Shevchenko <andriy.shevchenko@linux.intel.com> Link: https://lore.kernel.org/r/20220726143110.4809-1-andriy.shevchenko@linux.intel.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Uwe Kleine-König authored
Taking a lock at the beginning of .remove() doesn't prevent new readers. With the existing approach it can happen, that a read occurs just when the lock was taken blocking the reader until the lock is released at the end of the remove callback which then accessed *data that is already freed then. To actually fix this problem the hwmon core needs some adaption. Until this is implemented take the optimistic approach of assuming that all readers are gone after hwmon_device_unregister() and sysfs_remove_group() as most other drivers do. (And once the core implements that, taking the lock would deadlock.) So drop the lock, move the reset to after device unregistration to keep the device in a workable state until it's deregistered. Also add a error message in case the reset fails and return 0 anyhow. (Returning an error code, doesn't stop the platform device unregistration and only results in a little helpful error message before the devm cleanup handlers are called.) Signed-off-by:
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Link: https://lore.kernel.org/r/20220725194344.150098-1-u.kleine-koenig@pengutronix.de Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Aleksa Savic authored
Add support for reading the +12V voltage that the D5 Next pump receives. Signed-off-by:
Aleksa Savic <savicaleksa83@gmail.com> Link: https://lore.kernel.org/r/20220726120203.33773-1-savicaleksa83@gmail.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
- Jul 21, 2022
-
-
Alexandru Gagniuc authored
Trying to use this driver on a big-endian machine results in garbage values for voltage and current. The tps23861 registers are little- endian, and regmap_read_bulk() does not do byte order conversion. Thus on BE machines, the most significant bytes got modified, and were trimmed by the VOLTAGE_CURRENT_MASK. To resolve this use uint16_t values, and convert them to host byte order using le16_to_cpu(). This results in correct readings on MIPS. Signed-off-by:
Alexandru Gagniuc <mr.nuke.me@gmail.com> Link: https://lore.kernel.org/r/20220721032255.2850647-1-mr.nuke.me@gmail.com [groeck: Use __le16 instead of uint16_t] Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Paul Fertser authored
The old value allows measuring fan speeds down to about 970 RPM and gives timeout for anything less than that. It is problematic because it can also be used as an indicator for fan failure or absence. Despite having read the relevant section of "ASPEED AST2500/AST2520 A2 Datasheet – V1.7" multiple times I wasn't able to figure out what exactly "fan tach period" and "fan tach falling point of period" mean (both are set by the driver from the constant this patch is amending). Experimentation with a Tioga Pass OCP board (AST2500 BMC) showed that value of 0x0108 gives time outs for speeds below 1500 RPM and the value offered by the patch is good for at least 750 RPM (the fans can't spin any slower so the lower bound is unknown). Measuring with the fans spinning takes about 30 ms, sometimes down to 18 ms, so about the same as with the previous value. This constant was last changed with commit 762b1e88 ("hwmon: (aspeed-pwm-tacho) increase fan tach period") Signed-off-by:
Paul Fertser <fercerpav@gmail.com> Link: https://lore.kernel.org/r/20220714142344.27071-1-fercerpav@gmail.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Aleksa Savic authored
Define pump and fan speed register offsets in D5 Next control report, as well as its size, to expose PWM fan control. Originally-from: Jack Doan <me@jackdoan.com> Signed-off-by:
Aleksa Savic <savicaleksa83@gmail.com> Link: https://lore.kernel.org/r/20220717171412.11142-1-savicaleksa83@gmail.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
- Jul 16, 2022
-
-
Marc Ferland authored
This driver is currently broken, it does not show the in0_input sysfs file and also returns the following message on startup: hwmon_device_register() is deprecated. Please convert the driver to use hwmon_device_register_with_info(). This patch converts the driver and also cleans up the 'read' function. Signed-off-by:
Marc Ferland <ferlandm@amotus.ca> Link: https://lore.kernel.org/r/20220712193504.1374656-1-ferlandm@amotus.ca Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
- Jul 13, 2022
-
-
Urs Schroffenegger authored
Add definitions for ROG ZENITH II EXTREME and some unknown yet temperature sensors in the second EC bank. Details are available at [1, 2]. [1] https://github.com/zeule/asus-ec-sensors/pull/26 [2] https://github.com/zeule/asus-ec-sensors/issues/16 Signed-off-by:
Urs Schroffenegger <nabajour@lampshade.ch> Signed-off-by:
Eugene Shalygin <eugene.shalygin@gmail.com> Link: https://lore.kernel.org/r/20220710202639.1812058-2-eugene.shalygin@gmail.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Aleksa Savic authored
As preparation for adding support for more devices in upcoming patches, move device-specific data, such as number of fans, temperature sensors, register offsets etc. to struct aqc_data. This is made possible by the fact that the supported Aquacomputer devices share the same layouts of sensor substructures. This allows aqc_raw_event() and others to stay general and not be cluttered with similar loops for each device. Signed-off-by:
Jack Doan <me@jackdoan.com> Signed-off-by:
Aleksa Savic <savicaleksa83@gmail.com> Link: https://lore.kernel.org/r/20220707115050.90021-1-savicaleksa83@gmail.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Eugene Shalygin authored
VRM and chipset temperature for ROG STRIX X570-I GAMING were missing according to a user contribution to the LHM project [1]. [1] https://github.com/LibreHardwareMonitor/LibreHardwareMonitor/pull/767 Signed-off-by:
Eugene Shalygin <eugene.shalygin@gmail.com> Link: https://lore.kernel.org/r/20220710085539.1682869-1-eugene.shalygin@gmail.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Linus Walleij authored
Adding a MODULE_ALIAS() to drivetemp will make the driver easier for modprobe to autoprobe. Signed-off-by:
Linus Walleij <linus.walleij@linaro.org> Link: https://lore.kernel.org/r/20220712214624.1845158-1-linus.walleij@linaro.org Fixes: 5b46903d ("hwmon: Driver for disk and solid state drives with temperature sensors") Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Christophe JAILLET authored
The first 'for' loop of asus_wmi_configure_sensor_setup() only computes the number and type of sensors that exist in the system. Here, the 'temp_sensor' structure is only used to store the data collected by asus_wmi_sensor_info(). There is no point in using a devm_ variant for this allocation. This wastes some memory for no good reason. Use the stack instead. Signed-off-by:
Christophe JAILLET <christophe.jaillet@wanadoo.fr> Link: https://lore.kernel.org/r/e23cea6c489fabb109a61e8a33d146a6b74c0529.1656741926.git.christophe.jaillet@wanadoo.fr Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Guenter Roeck authored
Reporting alarms using hwmon_notify_event() may result in a callback from the thermal subsystem. This means that such notifications must not hold the update lock to avoid a deadlock. To avoid this situation, use a worker to handle notifications. Reported-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Tested-by:
Dmitry Osipenko <dmitry.osipenko@collabora.com> Fixes: f6d07751 ("hwmon: (lm90) Rework alarm/status handling") Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Michael Carns authored
Add definitions for ROG MAXIMUS XI HERO and ROG MAXIMUS XI HERO (WI-FI) boards. Signed-off-by:
Michael Carns <mike@carns.com> Signed-off-by:
Eugene Shalygin <eugene.shalygin@gmail.com> Link: https://lore.kernel.org/r/20220627225437.87462-1-eugene.shalygin@gmail.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Armin Wolf authored
The new assembly code works on both 32 bit and 64 bit cpus and allows for more compiler optimisations. Since clang runs out of registers on 32 bit x86 when using CC_OUT, we need to execute "setc" ourself. Also modify the debug message so we can still see the result (eax) when the carry flag was set. Tested with 32 bit and 64 bit kernels on a Dell Inspiron 3505. Signed-off-by:
Armin Wolf <W_Armin@gmx.de> Link: https://lore.kernel.org/r/20220220190851.17965-1-W_Armin@gmx.de [groeck: Rebased to v5.19-rc3] Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Mårten Lindahl authored
The LTC2977 regulator does not set the regulator_desc .n_voltages value which is needed in order to let the regulator core list the regulator voltage range. This patch defines a regulator_desc with a voltage range, and uses it for defining voltage resolution for regulators LTC2972/LTC2974/LTC2975/ LTC2977/LTC2978/LTC2979/LTC2980/LTM2987 based on that they all have a 16 bit ADC with the same stepwise 122.07uV resolution. It also scales the resolution to a 1mV resolution which is easier to handle. Signed-off-by:
Mårten Lindahl <marten.lindahl@axis.com> Link: https://lore.kernel.org/r/20220614095144.3472305-1-marten.lindahl@axis.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Mårten Lindahl authored
When checking if a regulator supports a voltage range, the regulator needs to have a list_voltage callback set to the regulator_ops or else -EINVAL will be returned. This support does not exist for the pmbus regulators, so this patch adds pmbus_regulator_list_voltage to the pmbus_regulator_ops. Signed-off-by:
Mårten Lindahl <marten.lindahl@axis.com> Link: https://lore.kernel.org/r/20220614093856.3470672-3-marten.lindahl@axis.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Mårten Lindahl authored
When setting a new voltage the voltage boundaries are read every time to check that the new voltage is within the proper range. Checking these voltage boundaries consists of reading one of PMBUS_MFR_VOUT_MIN/ PMBUS_VOUT_MARGIN_LOW registers and then PMBUS_MFR_VOUT_MAX/ PMBUS_VOUT_MARGIN_HIGH together with writing the PMBUS_CLEAR_FAULTS register. Since these boundaries are never being changed, it can be cached and thus saving unnecessary smbus transmissions. Signed-off-by:
Mårten Lindahl <marten.lindahl@axis.com> Link: https://lore.kernel.org/r/20220614093856.3470672-2-marten.lindahl@axis.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Liang He authored
In gsc_hwmon_get_devtree_pdata(), of_find_compatible_node() will return a node pointer with refcount incremented. We should use of_node_put() in fail path or when it is not used anymore. Signed-off-by:
Liang He <windhl@126.com> Link: https://lore.kernel.org/r/20220616114024.3985770-1-windhl@126.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Armin Wolf authored
According to Bug 215983 at bugzilla.kernel.org, the Dell G5 5590 supports the SMM interface and can thus be loaded with ignore_dmi being set. Add the model the DMI table to allow for automatic loadig on this model. Compile-tested only. Signed-off-by:
Armin Wolf <W_Armin@gmx.de> Acked-by:
Pali Rohár <pali@kernel.org> Link: https://lore.kernel.org/r/20220612232208.27901-1-W_Armin@gmx.de Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Armin Wolf authored
A user reported that the program dell-bios-fan-control worked on his Dell XPS 13 7390 to switch off automatic fan control. Since it uses the same mechanism as the dell_smm_hwmon module, add this model to the fan control whitelist. Compile-tested only. Signed-off-by:
Armin Wolf <W_Armin@gmx.de> Acked-by:
Pali Rohár <pali@kernel.org> Link: https://lore.kernel.org/r/20220612041806.11367-1-W_Armin@gmx.de Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Andy Shevchenko authored
Since platform_device_unregister() is NULL-aware, we don't need to duplicate this check. Remove it and fold the rest of the code. Signed-off-by:
Andy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by:
Zev Weiss <zev@bewilderbeest.net> Link: https://lore.kernel.org/r/20220610103324.87483-1-andriy.shevchenko@linux.intel.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Ren Zhijie authored
If CONFIG_PMBUS is y and CONFIG_DEBUG_FS is not set. make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu-, will be failed, like this: drivers/hwmon/pmbus/pmbus_core.c:593:13: error: ‘pmbus_check_block_register’ defined but not used [-Werror=unused-function] static bool pmbus_check_block_register(struct i2c_client *client, int page, ^~~~~~~~~~~~~~~~~~~~~~~~~~ cc1: all warnings being treated as errors make[3]: *** [drivers/hwmon/pmbus/pmbus_core.o] Error 1 make[2]: *** [drivers/hwmon/pmbus] Error 2 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [drivers/hwmon] Error 2 make[1]: *** Waiting for unfinished jobs.... make: *** [drivers] Error 2 To fix building warning, use __maybe_unused to attach this func. Reported-by:Hulk Robot <hulkci@huawei.com> Fixes: c3ffc3a1ff83("hwmon: (pmbus) add a function to check the presence of a block register") Signed-off-by:
Ren Zhijie <renzhijie2@huawei.com> Link: https://lore.kernel.org/r/20220609120448.139907-1-renzhijie2@huawei.com [groeck: Fixed continuation line alignment] Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Slawomir Stepien authored
Try to read the channel's temperature offset from device-tree. Having offset in device-tree node is not mandatory. The offset can only be set for remote channels. Signed-off-by:
Slawomir Stepien <slawomir.stepien@nokia.com> Link: https://lore.kernel.org/r/20220607063504.1287855-3-sst@poczta.fm Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Slawomir Stepien authored
The ADT7481 have LM90_HAVE_TEMP3 and LM90_HAVE_OFFSET flags, but the support of second remote channel's offset is missing. Add that implementation. Signed-off-by:
Slawomir Stepien <slawomir.stepien@nokia.com> Link: https://lore.kernel.org/r/20220607063504.1287855-2-sst@poczta.fm Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Ziyang Xuan authored
kvfree(NULL) is safe. NULL check before kvfree() is not needed. Delete them to simplify the code. Generated by coccinelle script: scripts/coccinelle/free/ifnullfree.cocci Signed-off-by:
Ziyang Xuan <william.xuanziyang@huawei.com> Reviewed-by:
Eddie James <eajames@linux.ibm.com> Link: https://lore.kernel.org/r/20220606131401.4053036-1-william.xuanziyang@huawei.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Slawomir Stepien authored
Try to read the channel's label from device-tree. Having label in device-tree node is not mandatory. Signed-off-by:
Slawomir Stepien <slawomir.stepien@nokia.com> Link: https://lore.kernel.org/r/20220525073657.573327-7-sst@poczta.fm Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Slawomir Stepien authored
Use this define in all the places where literal '3' was used in this context. Signed-off-by:
Slawomir Stepien <slawomir.stepien@nokia.com> Link: https://lore.kernel.org/r/20220525073657.573327-6-sst@poczta.fm Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Slawomir Stepien authored
This will allow binding the driver with the device from the device tree. Signed-off-by:
Slawomir Stepien <slawomir.stepien@nokia.com> Link: https://lore.kernel.org/r/20220525073657.573327-4-sst@poczta.fm Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Slawomir Stepien authored
Add binding description for temperature channels. Currently, support for label and temperature-offset-millicelsius is implemented. Signed-off-by:
Slawomir Stepien <slawomir.stepien@nokia.com> Reviewed-by:
Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20220525073657.573327-3-sst@poczta.fm Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Slawomir Stepien authored
This will allow binding the driver with the device from the device tree. This device can work in extended temperature measurement mode, so add it also to the list of devices that support 'ti,extended-range-enable'. Signed-off-by:
Slawomir Stepien <slawomir.stepien@nokia.com> Acked-by:
Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20220525073657.573327-2-sst@poczta.fm Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Uwe Kleine-König authored
The two drivers compile just fine on ARCH=arm. Allow to select these drivers if COMPILE_TEST is enabled. Signed-off-by:
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Reviewed-by:
Jean Delvare <jdelvare@suse.de> Link: https://lore.kernel.org/r/20220527153445.1871086-1-u.kleine-koenig@pengutronix.de Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Adam Wujek authored
Add registers to debugfs: PMBUS_MFR_ID PMBUS_MFR_MODEL PMBUS_MFR_REVISION PMBUS_MFR_LOCATION PMBUS_MFR_DATE PMBUS_MFR_SERIAL To reduce the number of debugfs entries, only values from page 0 are reported. It is assumed that values of these registers are the same for all pages. Please note that the PMBUS standard allows added registers to be page-specific. Signed-off-by:
Adam Wujek <dev_public@wujek.eu> Link: https://lore.kernel.org/r/20220601013232.801133-2-dev_public@wujek.eu Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Adam Wujek authored
Other functions (like pmbus_check_byte_register) cannot be used to check the presence of a block register, because it will generate error when PEC is used. Signed-off-by:
Adam Wujek <dev_public@wujek.eu> Link: https://lore.kernel.org/r/20220601013232.801133-1-dev_public@wujek.eu Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Shady Nawara authored
adds T_Sensor and VRM Temp sensors for the Asus Strix z690-a D4 motherboard Signed-off-by:
Shady Nawara <shady.nawara@outlook.com> Signed-off-by:
Eugene Shalygin <eugene.shalygin@gmail.com> Link: https://lore.kernel.org/r/20220603122758.1561064-1-eugene.shalygin@gmail.com Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Armin Wolf authored
Some devices like the Fujitsu Celsius W380 do contain a working sch56xx hardware monitoring device, but do not contain the necessary DMI onboard device. Do not check for the presence of an suitable onboard device on these machines. The list of affected machines was created using data collected by the Linux Hardware Project. Tested on a Fujitsu Esprimo P720, but sadly not on a affected machine. Fixes: 393935ba (hwmon: (sch56xx-common) Add automatic module loading on supported devices) Signed-off-by:
Armin Wolf <W_Armin@gmx.de> Reviewed-by:
Hans de Goede <hdegoede@redhat.com> Link: https://lore.kernel.org/r/20220604220200.2567-1-W_Armin@gmx.de Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-
Christophe JAILLET authored
When kernel.h is used in the headers it adds a lot into dependency hell, especially when there are circular dependencies are involved. Replace kernel.h inclusion with the list of what is really being used. Signed-off-by:
Christophe JAILLET <christophe.jaillet@wanadoo.fr> Link: https://lore.kernel.org/r/4e07ed43274ad912d4efcfc04f673f25e8f89fdc.1654289489.git.christophe.jaillet@wanadoo.fr Signed-off-by:
Guenter Roeck <linux@roeck-us.net>
-