linux-stable/drivers/hwmon
Billy Tsai a2ca752055 hwmon: (pwm-fan) Ensure the fan going on in .probe()
Before commit 86585c6197 ("hwmon: (pwm-fan) stop using legacy
PWM functions and some cleanups") pwm_apply_state() was called
unconditionally in pwm_fan_probe(). In this commit this direct
call was replaced by a call to __set_pwm(ct, MAX_PWM) which
however is a noop if ctx->pwm_value already matches the value to
set.
After probe the fan is supposed to run at full speed, and the
internal driver state suggests it does, but this isn't asserted
and depending on bootloader and pwm low-level driver, the fan
might just be off.
So drop setting pwm_value to MAX_PWM to ensure the check in
__set_pwm doesn't make it exit early and the fan goes on as
intended.

Cc: stable@vger.kernel.org
Fixes: 86585c6197 ("hwmon: (pwm-fan) stop using legacy PWM functions and some cleanups")
Signed-off-by: Billy Tsai <billy_tsai@aspeedtech.com>
Reviewed-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Link: https://lore.kernel.org/r/20211130092212.17783-1-billy_tsai@aspeedtech.com
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2021-11-30 06:44:18 -08:00
..
occ Merge branch 'akpm' (patches from Andrew) 2021-11-06 14:08:17 -07:00
pmbus hwmon: (pmbus/ibm-cffps) Use MFR_ID to choose version 2021-10-12 07:22:41 -07:00
abituguru.c hwmon: abituguru: make array probe_order static, makes object smaller 2019-11-06 14:37:19 -08:00
abituguru3.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
acpi_power_meter.c hwmon: (acpi_power_meter) Use acpi_bus_get_acpi_device() 2021-10-16 22:41:25 -07:00
ad7314.c
ad7414.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
ad7418.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
adc128d818.c hwmon: Use kobj_to_dev() 2021-04-20 06:50:14 -07:00
adcxx.c
adm1021.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
adm1025.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
adm1026.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
adm1029.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
adm1031.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
adm1177.c hwmon: (adm1177) Fix kerneldoc attribute formatting 2020-12-02 17:42:23 -08:00
adm9240.c hwmon: (adm9240) Fix writes into inX_max attributes 2021-05-12 18:53:11 -07:00
ads7828.c hwmon: use simple i2c probe function (take 2) 2020-09-23 09:42:40 -07:00
ads7871.c
adt7x10.c hwmon: (adt7x10) Make adt7x10_remove() return void 2021-10-12 07:22:42 -07:00
adt7x10.h hwmon: (adt7x10) Make adt7x10_remove() return void 2021-10-12 07:22:42 -07:00
adt7310.c hwmon: (adt7x10) Make adt7x10_remove() return void 2021-10-12 07:22:42 -07:00
adt7410.c hwmon: (adt7x10) Make adt7x10_remove() return void 2021-10-12 07:22:42 -07:00
adt7411.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
adt7462.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
adt7470.c hwmon: (adt7470) Convert to devm_hwmon_device_register_with_info API 2021-08-27 14:24:14 -07:00
adt7475.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
aht10.c hwmon: (aht10) Unlock on error in aht10_read_values() 2021-01-27 17:44:19 -08:00
amc6821.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
applesmc.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
aquacomputer_d5next.c hwmon: add driver for Aquacomputer D5 Next 2021-08-28 08:53:30 -07:00
as370-hwmon.c hwmon: (as370-hwmon) fix devm_platform_ioremap_resource.cocci warnings 2019-09-03 12:47:17 -07:00
asb100.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
asc7621.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
aspeed-pwm-tacho.c hwmon: (aspeed-pwm-tacho) Switch to using the new API kobj_to_dev() 2021-01-27 17:44:18 -08:00
asus_atk0110.c hwmon: (asus_atk0110) no need to check return value of debugfs_create functions 2019-06-23 18:33:01 -07:00
atxp1.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
axi-fan-control.c hwmon: (axi-fan-control) Support temperature vs pwm points 2021-08-17 14:54:26 -07:00
bt1-pvt.c hwmon: (bt1-pvt) Remove redundant error printing in pvt_request_regs() 2021-06-17 04:21:45 -07:00
bt1-pvt.h hwmon: (bt1-pvt) Cache current update timeout 2020-10-04 08:40:10 -07:00
coretemp.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
corsair-cpro.c hwmon: (corsair-cpro) Fix fall-through warnings for Clang 2021-05-17 19:50:23 -05:00
corsair-psu.c hwmon: (corsair-psu) fix plain integer used as NULL pointer 2021-11-14 16:57:16 -08:00
da9052-hwmon.c hwmon: (da9052) Switch to using the new API kobj_to_dev() 2021-02-11 20:28:56 -08:00
da9055-hwmon.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
dell-smm-hwmon.c hwmon: (dell-smm) Fix warning on /proc/i8k creation error 2021-11-14 16:57:16 -08:00
dme1737.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
drivetemp.c hwmon: drivetemp: fix typo temperatire => temperature 2020-12-02 17:42:23 -08:00
ds620.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
ds1621.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
emc6w201.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
emc1403.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
emc2103.c hwmon: (emc2103) use simple i2c probe 2020-09-23 09:42:40 -07:00
f71805f.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
f71882fg.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
f75375s.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
fam15h_power.c hwmon: Replace deprecated CPU-hotplug functions. 2021-08-17 14:54:26 -07:00
fschmd.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
ftsteutates.c hwmon: (ftsteutates) Rudimentary typo fixes 2021-04-20 06:50:14 -07:00
g760a.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
g762.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
gl518sm.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
gl520sm.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
gpio-fan.c hwmon: (gpio-fan) Switch to using the new API kobj_to_dev() 2021-01-27 17:44:18 -08:00
gsc-hwmon.c hwmon: (gsc-hwmon) add fan sensor 2020-09-23 09:42:41 -07:00
hih6130.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
hwmon-vid.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
hwmon.c hwmon: Fix possible memleak in __hwmon_device_register() 2021-10-12 07:22:01 -07:00
i5k_amb.c hwmon: (i5k_amb, vt8231) Drop uses of pci_read_config_*() return value 2020-08-04 14:24:39 -07:00
i5500_temp.c hwmon: (i5500_temp) Convert to devm_hwmon_device_register_with_info 2021-10-12 07:22:37 -07:00
ibmaem.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
ibmpex.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
ibmpowernv.c hwmon: (ibmpowernv) Silence strncpy() warning 2020-12-02 17:42:23 -08:00
iio_hwmon.c hwmon: (iio_hwmon) Drop bogus __refdata annotation 2020-12-11 07:42:27 -08:00
ina2xx.c hwmon: replace snprintf in show functions with sysfs_emit 2021-04-20 06:50:14 -07:00
ina209.c hwmon: replace snprintf in show functions with sysfs_emit 2021-04-20 06:50:14 -07:00
ina3221.c hwmon: (ina3221) use CVRF only for single-shot conversion 2021-06-17 04:21:46 -07:00
intel-m10-bmc-hwmon.c hwmon: intel-m10-bmc-hwmon: add n5010 sensors 2021-08-17 14:54:25 -07:00
it87.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
jc42.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
k8temp.c hwmon: (k8temp) update to use new hwmon registration API 2019-09-03 12:47:17 -07:00
k10temp.c hwmon: (k10temp) Remove residues of current and voltage 2021-09-12 17:56:36 -07:00
Kconfig hwmon: (tmp401) Drop support for TMP461 2021-10-27 19:48:19 -07:00
lineage-pem.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
lm63.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
lm70.c hwmon: (lm70) Use SPI_MODE_X_MASK 2021-06-17 04:21:44 -07:00
lm73.c hwmon: (lm73) use simple i2c probe 2020-09-23 09:42:40 -07:00
lm75.c hwmon: (lm75) Add TI TMP1075 support 2021-06-17 04:21:44 -07:00
lm75.h hwmon: (lm75) Fix all coding-style warnings on lm75 driver 2020-05-22 06:28:38 -07:00
lm77.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
lm78.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
lm80.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
lm83.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
lm85.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
lm87.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
lm90.c hwmon: (lm90) Add basic support for TI TMP461 2021-10-27 19:48:19 -07:00
lm92.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
lm93.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
lm95234.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
lm95241.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
lm95245.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
lochnagar-hwmon.c
ltc2945.c hwmon: replace snprintf in show functions with sysfs_emit 2021-04-20 06:50:14 -07:00
ltc2947-core.c hwmon: (ltc2947) Properly handle errors when looking for the external clock 2021-09-24 05:02:24 -07:00
ltc2947-i2c.c hwmon: (ltc2947) use simple i2c probe 2020-09-23 09:42:40 -07:00
ltc2947-spi.c hwmon: Add support for ltc2947 2019-11-06 14:37:19 -08:00
ltc2947.h hwmon: Add support for ltc2947 2019-11-06 14:37:19 -08:00
ltc2990.c hwmon: replace snprintf in show functions with sysfs_emit 2021-04-20 06:50:14 -07:00
ltc2992.c hwmon: (ltc2992) Put fwnode in error case during ->probe() 2021-05-10 08:02:15 -07:00
ltc4151.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
ltc4215.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
ltc4222.c hwmon: replace snprintf in show functions with sysfs_emit 2021-04-20 06:50:14 -07:00
ltc4245.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
ltc4260.c hwmon: replace snprintf in show functions with sysfs_emit 2021-04-20 06:50:14 -07:00
ltc4261.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
ltq-cputemp.c
Makefile hwmon: Add Maxim MAX6620 hardware monitoring driver 2021-10-12 07:22:37 -07:00
max127.c hwmon: (max127) Add Maxim MAX127 hardware monitoring driver 2020-12-02 17:42:24 -08:00
max197.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
max1111.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 332 2019-06-05 17:37:06 +02:00
max1619.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
max1668.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
max6620.c hwmon: Add Maxim MAX6620 hardware monitoring driver 2021-10-12 07:22:37 -07:00
max6621.c hwmon: (max6621) Fix fall-through warnings for Clang 2021-05-17 19:50:37 -05:00
max6639.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
max6642.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
max6650.c hwmon: (max6650) Switch to using the new API kobj_to_dev() 2021-01-27 17:44:18 -08:00
max6697.c hwmon: Use kobj_to_dev() 2021-04-20 06:50:14 -07:00
max16065.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
max31722.c hwmon: (max31722) Warn about failure to put device in stand-by in .remove() 2021-10-16 22:42:14 -07:00
max31730.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
max31790.c hwmon: (max31790) Detect and report zero fan speed 2021-06-17 04:21:46 -07:00
mc13783-adc.c
mcp3021.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
menf21bmc_hwmon.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152 2019-05-30 11:26:32 -07:00
mlxreg-fan.c hwmon: (mlxreg-fan) Support distinctive names per different cooling devices 2021-10-12 07:22:41 -07:00
mr75203.c hwmon/drivers/mr75203: use HZ macros 2021-09-08 11:50:26 -07:00
nct6683.c hwmon: (nct6683) Add another customer ID for NCT6683D sensor chip on some ASRock boards 2021-10-12 07:22:39 -07:00
nct6775.c hwmon: (nct6775) mask out bank number in nct6775_wmi_read_value() 2021-11-14 16:57:16 -08:00
nct7802.c hwmon: (nct7802) Add of_node_put() before return 2021-10-28 21:27:38 -07:00
nct7904.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
npcm750-pwm-fan.c hwmon: (npcm750-pwm-fan) Remove dev_err() usage after platform_get_irq() 2019-09-03 12:47:17 -07:00
nsa320-hwmon.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 408 2019-06-05 17:37:14 +02:00
ntc_thermistor.c hwmon: (ntc_thermistor) Use library interpolation 2021-08-17 14:54:25 -07:00
nzxt-kraken2.c hwmon: add driver for NZXT Kraken X42/X52/X62/X72 2021-04-20 06:50:14 -07:00
pc87360.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
pc87427.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 174 2019-05-30 11:26:41 -07:00
pcf8591.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
powr1220.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
pwm-fan.c hwmon: (pwm-fan) Ensure the fan going on in .probe() 2021-11-30 06:44:18 -08:00
raspberrypi-hwmon.c hwmon: (raspberrypi) Use generic notification mechanism 2021-10-12 07:22:37 -07:00
s3c-hwmon.c hwmon: replace snprintf in show functions with sysfs_emit 2021-04-20 06:50:14 -07:00
sbrmi.c hwmon: Add support for SB-RMI power module 2021-08-17 14:54:25 -07:00
sbtsi_temp.c hwmon: (sbtsi) Add basic support for SB-TSI sensors 2020-12-12 08:32:35 -08:00
sch56xx-common.c hwmon: (sch56xx-common) Simplify sch56xx_device_add 2021-06-17 04:21:44 -07:00
sch56xx-common.h hwmon: (sch56xx) Use devres functions for watchdog 2021-06-17 04:21:44 -07:00
sch5627.c hwmon: (sch56xx) Use devres functions for watchdog 2021-06-17 04:21:44 -07:00
sch5636.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
scmi-hwmon.c hwmon: (scmi) port driver to the new scmi_sensor_proto_ops interface 2021-03-30 16:34:55 +01:00
scpi-hwmon.c hwmon: (scpi-hwmon) shows the negative temperature properly 2021-06-09 11:51:30 -07:00
sht3x.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
sht4x.c hwmon: (sht4x) Fix EREMOTEIO errors 2021-11-20 14:44:25 -08:00
sht15.c
sht21.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
shtc1.c hwmon: shtc1: add support for device tree bindings 2020-09-23 09:42:40 -07:00
sis5595.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
sl28cpld-hwmon.c hwmon: Add support for the sl28cpld hardware monitoring controller 2020-09-17 16:02:42 +01:00
smm665.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
smsc47b397.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
smsc47m1.c hwmon: (smsc47m1) Remove 'h' from printk format specifier 2021-01-27 17:44:17 -08:00
smsc47m192.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
sparx5-temp.c hwmon: (sparx5) Fix initial reading of temperature 2020-09-23 09:39:40 -07:00
stts751.c hwmon: replace snprintf in show functions with sysfs_emit 2021-04-20 06:50:14 -07:00
tc74.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
tc654.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
thmc50.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
tmp102.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
tmp103.c hwmon: (tmp103) Convert tmp103 to use new hwmon registration API 2021-10-12 07:22:41 -07:00
tmp108.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
tmp401.c hwmon: (tmp401) Drop support for TMP461 2021-10-27 19:48:19 -07:00
tmp421.c hwmon: (tmp421) Add of_node_put() before return 2021-10-18 07:23:21 -07:00
tmp513.c hwmon: (tmp513) fix spelling typo in comments 2020-10-04 08:40:10 -07:00
tps23861.c hwmon: (tps23861) correct shunt LSB values 2021-06-10 08:40:09 -07:00
ultra45_env.c
vexpress-hwmon.c hwmon: replace snprintf in show functions with sysfs_emit 2021-04-20 06:50:14 -07:00
via-cputemp.c hwmon: Convert to new X86 CPU match macros 2020-03-24 21:33:36 +01:00
via686a.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
vt1211.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
vt8231.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
w83l785ts.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
w83l786ng.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
w83627ehf.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
w83627hf.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
w83773g.c hwmon: use simple i2c probe function 2020-09-23 09:42:39 -07:00
w83781d.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
w83791d.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
w83792d.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
w83793.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
w83795.c hwmon: cleanup non-bool "valid" data fields 2021-10-12 07:22:41 -07:00
wm831x-hwmon.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 271 2019-06-05 17:30:30 +02:00
wm8350-hwmon.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 271 2019-06-05 17:30:30 +02:00
xgene-hwmon.c mailbox: pcc: Use PCC mailbox channel pointer instead of standard 2021-10-29 22:46:38 -05:00