linux-stable/drivers/hwmon
Guenter Roeck 96d87260d3 hwmon: (max31790) Fix fan speed reporting for fan7..12
[ Upstream commit cbbf244f05 ]

Fans 7..12 do not have their own set of configuration registers.
So far the code ignored that and read beyond the end of the configuration
register range to get the tachometer period. This resulted in more or less
random fan speed values for those fans.

The datasheet is quite vague when it comes to defining the tachometer
period for fans 7..12. Experiments confirm that the period is the same
for both fans associated with a given set of configuration registers.

Fixes: 54187ff9d7 ("hwmon: (max31790) Convert to use new hwmon registration API")
Fixes: 195a4b4298 ("hwmon: Driver for Maxim MAX31790")
Cc: Jan Kundrát <jan.kundrat@cesnet.cz>
Reviewed-by: Jan Kundrát <jan.kundrat@cesnet.cz>
Cc: Václav Kubernát <kubernat@cesnet.cz>
Reviewed-by: Jan Kundrát <jan.kundrat@cesnet.cz>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Link: https://lore.kernel.org/r/20210526154022.3223012-2-linux@roeck-us.net
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-07-20 16:15:48 +02:00
..
pmbus hwmon: (pmbus/max34440) Fix status register reads for MAX344{51,60,61} 2020-10-29 09:55:02 +01:00
ab8500.c
abituguru.c
abituguru3.c
abx500.c
abx500.h
acpi_power_meter.c hwmon: (acpi_power_meter) Fix potential memory leak in acpi_power_meter_add() 2020-07-09 09:37:11 +02:00
ad7314.c hwmon: (ad7314) Convert to devm_hwmon_device_register_with_groups 2016-06-27 18:58:03 -07:00
ad7414.c hwmon: (ad7414) Add OF device ID table 2017-04-02 07:01:53 -07:00
ad7418.c
adc128d818.c hwmon: (adc128d818) constify attribute_group structures. 2017-08-13 08:24:38 -07:00
adcxx.c
adm1021.c hwmon: (adm1021) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
adm1025.c hwmon: (adm1025) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
adm1026.c hwmon: (adm1026) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
adm1029.c
adm1031.c hwmon: (adm1031) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
adm9240.c hwmon: (adm9240) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
ads1015.c hwmon: (ads1015) Convert to using %pOF instead of full_name 2017-08-13 08:24:38 -07:00
ads7828.c hwmon: (ads7828) Accept optional parameters from device tree 2017-04-02 07:01:53 -07:00
ads7871.c hwmon: (ads7871) Convert to devm_hwmon_device_register_with_groups 2016-06-27 18:58:03 -07:00
adt7x10.c hwmon: (adt7x10) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
adt7x10.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
adt7310.c
adt7410.c
adt7411.c hwmon: (adt7411) add min, max and alarm attributes 2017-01-02 10:19:45 -08:00
adt7462.c hwmon: (adt7462) Fix an error return in ADT7462_REG_VOLT() 2020-03-11 14:15:12 +01:00
adt7470.c hwmon: (adt7470) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
adt7475.c hwmon: (adt7475) Make volt2reg return same reg as reg2volt input 2020-01-29 16:43:18 +01:00
amc6821.c hwmon: (amc6821) sign extension temperature 2016-12-02 13:28:04 -08:00
applesmc.c hwmon: (applesmc) check status earlier. 2020-09-09 19:04:23 +02:00
asb100.c hwmon: (asb100) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
asc7621.c hwmon: (asc7621) remove redundant assignment to newval 2017-10-29 18:36:03 -07:00
aspeed-pwm-tacho.c hwmon: (aspeed-pwm-tacho) Avoid possible buffer overflow 2020-07-29 10:16:53 +02:00
asus_atk0110.c hwmon: (asus_atk0110) Make use of device managed memory 2018-06-01 09:38:36 -07:00
atxp1.c hwmon: (atxp1) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
coretemp.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
da9052-hwmon.c hwmon: (da9052) Synchronize access with mfd 2020-05-20 08:18:44 +02:00
da9055-hwmon.c
dell-smm-hwmon.c hwmon: (dell-smm) Disable fan support for Dell XPS13 9333 2018-06-16 16:40:36 -07:00
dme1737.c hwmon: (dme1737) Fix overflows seen when writing into limit attributes 2017-01-10 08:57:55 -08:00
ds620.c hwmon: (ds620) move header file out of I2C realm 2017-06-11 17:08:19 -07:00
ds1621.c hwmon: (ds1621) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
emc6w201.c hwmon: (emcw201) Fix overflows seen when writing into limit attributes 2016-12-12 11:33:44 -08:00
emc1403.c hwmon: Mark expected switch fall-throughs 2018-07-08 20:08:13 -07:00
emc2103.c hwmon: (emc2103) fix unable to change fan pwm1_enable attribute 2020-07-22 09:32:11 +02:00
f71805f.c hwmon: (f71805f) Use request_muxed_region for Super-IO accesses 2019-05-31 06:46:22 -07:00
f71882fg.c hwmon: (f71882fg) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
f75375s.c
fam15h_power.c hwmon: (fam15h_power) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
fschmd.c hwmon: (fschmd) fix typo 'can by' to 'can be' 2018-05-21 07:51:59 -07:00
ftsteutates.c hwmon: (ftsteutates) constify i2c_device_id 2017-08-29 17:44:23 -07:00
g760a.c hwmon: (g760a) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
g762.c hwmon: (g762) handle cleanup with devm_add_action 2018-03-10 19:00:14 -08:00
gl518sm.c hwmon: (gl518sm) Fix overflows seen when writing into limit attributes 2017-01-10 08:58:36 -08:00
gl520sm.c hwmon: (gl520sm) Fix overflows and crash seen when writing into limit attributes 2017-01-10 08:59:35 -08:00
gpio-fan.c treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
hih6130.c hwmon: (hih6130) Fix documentation of struct hih6130 2018-01-02 15:05:34 -08:00
hwmon-vid.c x86/cpu: Rename cpu_data.x86_mask to cpu_data.x86_stepping 2018-02-15 01:15:52 +01:00
hwmon.c hwmon: (core) Do not use device managed functions for memory allocations 2020-01-29 16:43:18 +01:00
i5k_amb.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
i5500_temp.c hwmon: (i5500_temp) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
ibmaem.c
ibmpex.c treewide: kzalloc() -> kcalloc() 2018-06-12 16:19:22 -07:00
ibmpowernv.c hwmon: (ibmpowernv) Remove bogus __init annotations 2018-11-27 16:13:04 +01:00
iio_hwmon.c hwmon: (iio_hwmon) Use devm functions 2018-07-23 11:38:33 -07:00
ina2xx.c hwmon: (ina2xx) Fix current value calculation 2018-12-17 09:24:32 +01:00
ina209.c hwmon: (ina209) Handled signed registers 2017-04-21 12:30:09 -07:00
ina3221.c hwmon: (ina3221) Fix INA3221_CONFIG_MODE macros 2019-11-24 08:21:01 +01:00
it87.c hwmon: (it87) Reapply probe path chip registers settings after resume 2017-08-13 08:24:38 -07:00
jc42.c hwmon: (jc42) Fix name to have no illegal characters 2020-05-02 17:26:00 +02:00
jz4740-hwmon.c hwmon: (jz4740) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
k8temp.c x86/cpu: Rename cpu_data.x86_mask to cpu_data.x86_stepping 2018-02-15 01:15:52 +01:00
k10temp.c hwmon/k10temp, x86/amd_nb: Consolidate shared device IDs 2020-06-22 09:05:23 +02:00
Kconfig hwmon: (w83773g) Select REGMAP_I2C to fix build error 2019-04-17 08:38:47 +02:00
lineage-pem.c
lm63.c hwmon: (lm63) Add OF device ID table 2017-04-02 07:01:53 -07:00
lm70.c hwmon: (lm70) Add support for TI TMP122/124 2017-01-21 12:26:38 -08:00
lm73.c
lm75.c hwmon: (lm75) Fix write operations for negative temperatures 2020-01-27 14:51:08 +01:00
lm75.h
lm77.c
lm78.c hwmon: (lm78) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
lm80.c Revert "hwmon: (lm80) fix a missing check of bus read in lm80 probe" 2021-05-26 11:48:34 +02:00
lm83.c hwmon: (lm83) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
lm85.c hwmon: (lm85) Add OF device ID table 2017-04-02 07:01:53 -07:00
lm87.c hwmon: (lm87) Add OF device ID table 2017-04-13 06:09:26 -07:00
lm90.c hwmon: (lm90) Fix max6658 sporadic wrong temperature reading 2021-03-17 16:43:51 +01:00
lm92.c hwmon: (lm92) Add max6635 to lm92_id[] 2018-03-22 09:33:24 -07:00
lm93.c hwmon: (lm93) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
lm95234.c hwmon: (lm95234) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
lm95241.c hwmon: (lm95241) Update module description to include LM95231 2016-09-13 07:28:01 -07:00
lm95245.c hwmon: (lm95245) Add OF device ID table 2017-04-02 07:01:53 -07:00
ltc2945.c
ltc2990.c hwmon: (ltc2990) support all measurement modes 2018-05-21 07:52:01 -07:00
ltc4151.c hwmon: (ltc4151) Export OF device ID table as module aliases 2017-01-21 08:57:41 -08:00
ltc4215.c
ltc4222.c
ltc4245.c hwmon: (ltc4245) move header file out of I2C realm 2017-06-11 17:08:19 -07:00
ltc4260.c
ltc4261.c
ltq-cputemp.c hwmon: (ltq-cputemp) add cpu temp sensor driver 2017-09-01 07:24:14 -07:00
Makefile ARM: SoC driver updates 2018-08-23 13:52:46 -07:00
max197.c headers: separate linux/mod_devicetable.h from linux/platform_device.h 2018-07-07 17:52:26 +02:00
max1111.c hwmon: (max1111) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
max1619.c hwmon: (max1619) Add dt binding 2017-10-29 18:36:03 -07:00
max1668.c
max6621.c hwmon: (max6621) Inverted if condition in max6621_read() 2017-10-29 18:36:03 -07:00
max6639.c hwmon: (max6639) move header file out of I2C realm 2017-06-11 17:08:19 -07:00
max6642.c
max6650.c hwmon: (max6650) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
max6697.c hwmon: (max6697) Make sure the OVERT mask is set correctly 2020-07-09 09:37:10 +02:00
max16065.c
max31722.c hwmon: (max31722) Remove non-standard ACPI device IDs 2021-07-20 16:15:48 +02:00
max31790.c hwmon: (max31790) Fix fan speed reporting for fan7..12 2021-07-20 16:15:48 +02:00
mc13783-adc.c headers: separate linux/mod_devicetable.h from linux/platform_device.h 2018-07-07 17:52:26 +02:00
mcp3021.c hwmon: (mcp3021) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
menf21bmc_hwmon.c
mlxreg-fan.c hwmon: (mlxreg-fan) Fix macros for tacho fault reading 2018-12-17 09:24:32 +01:00
nct6683.c treewide: devm_kzalloc() -> devm_kcalloc() 2018-06-12 16:19:22 -07:00
nct6775.c hwmon: (nct6775) Fix names of DIMM temperature sources 2019-11-24 08:21:00 +01:00
nct7802.c hwmon: (nct7802) Fix voltage limits to wrong registers 2020-01-29 16:43:21 +01:00
nct7904.c hwmon: (nct7904) Fix UNSPECIFIED_INT warning 2018-07-08 20:08:13 -07:00
npcm750-pwm-fan.c hwmon: (npcm-750-pwm-fan) Change initial pwm target to 255 2019-11-24 08:21:01 +01:00
nsa320-hwmon.c hwmon: (nsa320) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
ntc_thermistor.c hwmon: (ntc_thermistor) Use devm_hwmon_device_register_with_groups 2016-09-08 21:34:15 -07:00
pc87360.c hwmon: (pc87360) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
pc87427.c hwmon: (pc87427) Use request_muxed_region for Super-IO accesses 2019-05-31 06:46:22 -07:00
pcf8591.c hwmon: (pcf8591) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
powr1220.c
pwm-fan.c hwmon: (pwm-fan) Silence error on probe deferral 2019-11-24 08:21:00 +01:00
raspberrypi-hwmon.c hwmon: (raspberrypi) Fix initial notify 2018-12-17 09:24:31 +01:00
s3c-hwmon.c
sch56xx-common.c hwmon: (sch56xx) Remove unneeded linux/miscdevice.h include 2017-01-02 10:19:45 -08:00
sch56xx-common.h
sch5627.c hwmon: (sch5627) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
sch5636.c
scmi-hwmon.c hwmon: (scmi) Fix potential buffer overflow in scmi_hwmon_probe() 2020-07-29 10:16:54 +02:00
scpi-hwmon.c hwmon: (scpi-hwmon) shows the negative temperature properly 2021-06-30 08:48:22 -04:00
sht3x.c hwmon: (sht3x) wait predefined limits loading complete before access 2018-01-12 14:18:39 -08:00
sht15.c hwmon: (sht15) Fix parameter documentation of sht15_crc8() 2018-01-02 15:05:34 -08:00
sht21.c hwmon: (sht21) Update data sheet URLs 2018-03-10 19:00:14 -08:00
shtc1.c hwmon: (shtc1) fix shtc1 and shtw1 id mask 2020-01-27 14:51:12 +01:00
sis5595.c hwmon: (sis5595) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
smm665.c
smsc47b397.c hwmon: (smsc47b397) Use request_muxed_region for Super-IO accesses 2019-05-31 06:46:22 -07:00
smsc47m1.c hwmon: (smsc47m1) Use request_muxed_region for Super-IO accesses 2019-05-31 06:46:22 -07:00
smsc47m192.c hwmon: (smsc47m192) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
stts751.c hwmon: (stts751) Fix buffer size passed to snprintf 2017-10-29 18:36:03 -07:00
tc74.c
tc654.c hwmon: Add tc654 driver 2016-12-02 13:28:05 -08:00
thmc50.c
tmp102.c hwmon: (tmp102) Fix first temperature reading 2017-10-24 06:17:14 -07:00
tmp103.c hwmon: (tmp103) Use SIMPLE_DEV_PM_OPS helper macro 2017-04-24 06:30:41 -07:00
tmp108.c hwmon: Add Texas Instruments TMP108 temperature sensor driver. 2016-12-09 21:54:25 -08:00
tmp401.c hwmon: (tmp401) use smb word operations instead of 2 smb byte operations 2017-01-10 09:01:32 -08:00
tmp421.c hwmon: (tmp421) Correct the misspelling of the tmp442 compatible attribute in OF device ID table 2019-02-27 10:08:57 +01:00
ultra45_env.c
vexpress-hwmon.c
via-cputemp.c hwmon: (via-cputemp) support new centaur CPUs 2018-03-30 07:53:57 -07:00
via686a.c hwmon: (via686a) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
vt1211.c hwmon: (vt1211) Use request_muxed_region for Super-IO accesses 2019-05-31 06:46:21 -07:00
vt8231.c hwmon: (vt8231) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
w83l785ts.c
w83l786ng.c
w83627ehf.c hwmon: (w83627ehf) Use request_muxed_region 2017-04-02 07:01:53 -07:00
w83627hf.c hwmon: (w83627hf) Use request_muxed_region for Super-IO accesses 2020-01-27 14:50:39 +01:00
w83773g.c hwmon: (w83773g) Fix fault detection and reporting 2018-01-02 15:05:34 -08:00
w83781d.c hwmon: (w83781d) Remove duplicate NULL check 2017-11-16 01:01:55 -08:00
w83791d.c hwmon: (w83791d) Remove duplicate NULL check 2017-11-16 01:02:23 -08:00
w83792d.c hwmon: (w83792d) Remove duplicate NULL check 2017-11-16 01:02:43 -08:00
w83793.c hwmon: (w83793) Remove duplicate NULL check 2017-11-16 01:03:19 -08:00
w83795.c hwmon: (w83795) temp4_type has writable permission 2018-12-17 09:24:33 +01:00
wm831x-hwmon.c
wm8350-hwmon.c
xgene-hwmon.c hwmon: (xgene) Minor clean up of ifdef and acpi_match_table reference 2017-11-01 06:14:52 -07:00