OpenCloudOS-Kernel/drivers/hwmon
Nishanth Menon 000e094914 hwmon: (gpio-fan) Remove un-necessary speed_index lookup for thermal hook
Thermal hook gpio_fan_get_cur_state is only interested in knowing
the current speed index that was setup in the system, this is
already available as part of fan_data->speed_index which is always
set by set_fan_speed. Using get_fan_speed_index is useful when we
have no idea about the fan speed configuration (for example during
fan_ctrl_init).

When thermal framework invokes
gpio_fan_get_cur_state=>get_fan_speed_index via gpio_fan_get_cur_state
especially in a polled configuration for thermal governor, we
basically hog the i2c interface to the extent that other functions
fail to get any traffic out :(.

Instead, just provide the last state set in the driver - since the gpio
fan driver is responsible for the fan state immaterial of override, the
fan_data->speed_index should accurately reflect the state.

Fixes: b5cf88e46b ("(gpio-fan): Add thermal control hooks")
Reported-by: Tony Lindgren <tony@atomide.com>
Cc: Guenter Roeck <linux@roeck-us.net>
Cc: Eduardo Valentin <edubezval@gmail.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Cc: stable@vger.kernel.org
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2016-02-19 17:14:25 -08:00
..
pmbus hwmon: (pmbus) Add client driver for LTC3815 2015-12-18 08:20:59 -08:00
Kconfig hwmon: (htu21) Remove driver 2015-12-18 08:20:59 -08:00
Makefile hwmon: (htu21) Remove driver 2015-12-18 08:20:59 -08:00
ab8500.c hwmon: (ab8500) Call kernel_power_off instead of pm_power_off 2014-10-03 08:19:02 -07:00
abituguru.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
abituguru3.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
abx500.c hwmon: (abx500) drop the use of IRQF_NO_SUSPEND 2015-10-14 07:57:14 -07:00
abx500.h hwmon: Add ST-Ericsson ABX500 hwmon driver 2013-04-16 18:27:52 -07:00
acpi_power_meter.c ACPI: Clean up inclusions of ACPI header files 2013-12-07 01:03:14 +01:00
ad7314.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
ad7414.c hwmon: (ad7414) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:35 -07:00
ad7418.c hwmon: (ad7418) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:35 -07:00
adc128d818.c hwmon: (adc128d818) Do proper sign extension 2015-01-25 21:24:00 -08:00
adcxx.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
adm1021.c hwmon: (adm1021) Avoid forward declaration 2014-08-04 07:01:36 -07:00
adm1025.c hwmon: (adm1025) Fix vrm write operation 2014-08-05 19:44:36 -07:00
adm1026.c hwmon: (adm1026) Fix vrm write operation 2014-08-05 19:44:36 -07:00
adm1029.c hwmon: (adm1029) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:35 -07:00
adm1031.c hwmon: (adm1031) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:37 -07:00
adm9240.c hwmon: (adm9240) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:37 -07:00
ads1015.c hwmon: (ads1015) Handle negative conversion values correctly 2016-02-18 19:14:04 -08:00
ads7828.c hwmon: (ads7828) Check return value of devm_regmap_init_i2c 2015-02-22 20:10:30 -08:00
ads7871.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
adt7x10.c hwmon: (adt7x10) Add alarm interrupt support 2013-04-07 21:16:38 -07:00
adt7x10.h hwmon: (adt7x10) Add alarm interrupt support 2013-04-07 21:16:38 -07:00
adt7310.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
adt7410.c hwmon: (adt7x10) Add alarm interrupt support 2013-04-07 21:16:38 -07:00
adt7411.c hwmon: (adt7411) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:40 -07:00
adt7462.c hwmon: (adt7462) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:39 -07:00
adt7470.c hwmon: (adt7470) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:39 -07:00
adt7475.c Update Jean Delvare's e-mail address 2014-01-29 20:40:08 +01:00
amc6821.c hwmon: (amc6821) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:35 -07:00
applesmc.c hwmon : (applesmc) Fix uninitialized variables warnings 2015-11-15 21:52:39 -08:00
asb100.c hwmon: (asb100) Fix vrm write operation 2014-08-05 19:44:36 -07:00
asc7621.c hwmon: (asc7621) Make map tables const 2014-08-04 07:01:38 -07:00
asus_atk0110.c fs.h, drivers/hwmon/asus_atk0110.c: fix DEFINE_SIMPLE_ATTRIBUTE semicolon definition and use 2014-08-06 18:01:23 -07:00
atxp1.c hwmon: (atxp1) Drop auto-detection 2015-05-31 22:58:36 -07:00
coretemp.c hwmon: (coretemp) Increase limit of maximum core ID from 32 to 128. 2015-10-14 07:57:14 -07:00
da9052-hwmon.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
da9055-hwmon.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
dell-smm-hwmon.c hwmon: (dell-smm) Blacklist Dell Studio XPS 8000 2016-01-24 19:26:18 -08:00
dme1737.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
ds620.c hwmon: (ds620) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:38 -07:00
ds1621.c hwmon: (ds1621) Update zbits after conversion rate change 2014-08-28 11:18:47 -07:00
emc6w201.c hwmon: (emc6w201) Fix temperature limit range 2014-08-05 17:49:12 -07:00
emc1403.c hwmon: Make regmap configs const 2014-08-04 07:01:35 -07:00
emc2103.c hwmon: (emc2103) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:40 -07:00
f71805f.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
f71882fg.c hwmon: (f71882fg) Add support for f81768d 2015-08-09 13:44:26 -07:00
f75375s.c hwmon: (f75375s) Don't crash the kernel unnecessarily 2013-10-13 16:16:27 -07:00
fam15h_power.c hwmon: (fam15h_power) Add bit masking for tdp_limit 2016-01-27 18:48:46 -08:00
fschmd.c hwmon: Fix checkpatch warning 'quoted string split across lines' 2013-04-07 21:16:40 -07:00
g760a.c hwmon: (g760a) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:37 -07:00
g762.c hwmon: (g762) Drop owner assignment from struct i2c_driver 2015-08-09 13:44:26 -07:00
gl518sm.c hwmon: (gl518sm) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:36 -07:00
gl520sm.c hwmon: (gl520sm) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:36 -07:00
gpio-fan.c hwmon: (gpio-fan) Remove un-necessary speed_index lookup for thermal hook 2016-02-19 17:14:25 -08:00
hih6130.c hwmon: (hih6130) Fix missing hih6130->write_length setting 2014-08-05 19:40:27 -07:00
hwmon-vid.c hwmon: (hwmon-vid) Add __maybe_unused attribute to dummy variable 2013-09-10 06:28:17 -07:00
hwmon.c hwmon: Do not accept invalid name attributes 2014-03-03 08:01:06 -08:00
i5k_amb.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
i5500_temp.c hwmon: (i5500_temp) Convert to use ATTRIBUTE_GROUPS macro 2015-01-24 14:16:22 +01:00
ibmaem.c hwmon: (ibmaem) constify aem_rw_sensor_template and aem_ro_sensor_template structures 2016-01-04 08:56:22 -08:00
ibmpex.c hwmon: (ibmpex) Allow format string checking 2015-03-09 09:59:35 -07:00
ibmpowernv.c hwmon: (ibmpowernv) Add OF compatibility table entry 2015-10-14 07:57:14 -07:00
iio_hwmon.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00
ina2xx.c hwmon: (ina2xx) remove no longer used variable 'kind' 2015-10-31 08:46:01 -07:00
ina209.c hwmon: (ina209) Convert to use devm_hwmon_device_register_with_groups 2013-10-18 09:11:57 -07:00
it87.c hwmon: (it87) Add support for IT8732F 2015-08-09 13:44:27 -07:00
jc42.c hwmon: (jc42) Add support for additional IDT temperature sensors 2015-03-09 09:59:35 -07:00
jz4740-hwmon.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
k8temp.c hwmon: remove DEFINE_PCI_DEVICE_TABLE macro 2014-01-14 21:36:30 -08:00
k10temp.c hwmon: (k10temp) Remove duplicate pci-id define 2015-11-09 10:14:29 +01:00
lineage-pem.c hwmon: (lineage-pem) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:37 -07:00
lm63.c hwmon: (lm63) Fix smatch warnings 2014-08-04 07:01:36 -07:00
lm70.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
lm73.c hwmon: (lm73) Convert to use devm_hwmon_device_register_with_groups 2013-10-13 16:16:28 -07:00
lm75.c hwmon: (lm75) Add support for TMP75C 2015-10-14 07:57:14 -07:00
lm75.h hwmon: (lm75.h) Update header inclusion 2013-03-18 21:19:49 +01:00
lm77.c hwmon: (lm77) Prevent overflow problem when writing large limits 2014-07-31 09:41:46 -07:00
lm78.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
lm80.c hwmon: (lm80) Rearrange code to avoid forward declarations 2014-05-21 16:02:26 -07:00
lm83.c hwmon: (lm83) Convert to use devm_hwmon_device_register_with_groups 2014-05-21 16:02:26 -07:00
lm85.c hwmon: (lm85) use find_closest() in x_TO_REG() functions 2015-04-17 09:03:55 -04:00
lm87.c hwmon: (lm87) Fix vrm write operation 2014-08-05 19:44:42 -07:00
lm90.c hwmon: (lm90) Convert to use hwmon_device_register_with_groups 2014-04-04 18:01:35 +02:00
lm92.c hwmon: (lm92) Prevent overflow problem when writing large limits 2014-08-05 17:48:52 -07:00
lm93.c hwmon: (lm93) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:36 -07:00
lm95234.c hwmon: (lm95234) Add support for LM95233 2014-12-02 06:11:53 -08:00
lm95241.c hwmon: (lm95241) Avoid initializing the same field twice 2014-03-03 08:01:04 -08:00
lm95245.c hwmon: (lm95245) Add support for LM95235 2014-12-02 03:44:18 -08:00
ltc2945.c hwmon: Make regmap configs const 2014-08-04 07:01:35 -07:00
ltc4151.c hwmon: (ltc4151) Convert to devm_hwmon_device_register_with_groups 2014-06-12 08:36:47 -07:00
ltc4215.c hwmon: (ltc4215) Convert to devm_hwmon_device_register_with_groups 2014-03-03 08:01:05 -08:00
ltc4222.c hwmon: Make regmap configs const 2014-08-04 07:01:35 -07:00
ltc4245.c hwmon: (ltc4245) Remove devicetree conditionals 2014-03-03 08:01:05 -08:00
ltc4260.c hwmon: Make regmap configs const 2014-08-04 07:01:35 -07:00
ltc4261.c hwmon: (ltc4261) fix coccinelle warnings 2013-10-18 09:12:00 -07:00
max197.c hwmon: (max197) Constify platform_device_id 2015-05-31 22:58:36 -07:00
max1111.c spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
max1619.c hwmon: (max1619) Convert to use devm_hwmon_device_register_with_groups 2014-05-21 16:02:25 -07:00
max1668.c hwmon: (max1668) Make max1668_addr_list array const 2014-08-04 07:01:39 -07:00
max6639.c hwmon: (max6639) Make normal_i2c array const 2014-08-04 07:01:39 -07:00
max6642.c Update Jean Delvare's e-mail address 2014-01-29 20:40:08 +01:00
max6650.c hwmon: (max6650) Introduce local 'dev' variable 2014-03-03 08:01:06 -08:00
max6697.c hwmon: (max6697) Use of_property_read_bool at appropriate places 2014-08-04 07:01:40 -07:00
max16065.c hwmon: (max16065) Use PTR_ERR_OR_ZERO 2014-08-04 07:01:38 -07:00
max31790.c hwmon: (max31790) Fix dereference of ERR_PTR 2015-10-14 07:57:14 -07:00
mc13783-adc.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
mcp3021.c hwmon: (mcp3021) Fix broken output scaling 2015-07-01 13:56:27 -07:00
menf21bmc_hwmon.c Merge branch 'platform/remove_owner' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux into driver-core-next 2014-11-03 19:53:56 -08:00
nct6683.c hwmon: (nct6683) Add basic support for NCT6683 on Mitac boards 2016-01-09 07:31:58 -08:00
nct6775.c hwmon: (nct6683,nct6775) constify sensor_template_group structures 2015-12-18 08:20:59 -08:00
nct7802.c hwmon: (nct7802) Add auto_point attributes 2015-08-09 13:44:27 -07:00
nct7904.c hwmon: (nct7904) Export I2C module alias information 2015-08-05 08:31:59 -07:00
ntc_thermistor.c thermal: consistently use int for temperatures 2015-08-03 23:15:50 +08:00
pc87360.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
pc87427.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
pcf8591.c Update Jean Delvare's e-mail address 2014-01-29 20:40:08 +01:00
powr1220.c hwmon: Add support for Lattice's POWR1220 power manager IC 2014-08-04 07:01:33 -07:00
pwm-fan.c hwmon: (pwm-fan) Fix module autoload for OF platform driver 2015-09-20 17:50:19 -07:00
s3c-hwmon.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
sch56xx-common.c hwmon: (sch56xx) Drop watchdog driver data reference count callbacks 2015-12-29 20:36:04 +01:00
sch56xx-common.h watchdog: sch56xx: Use watchdog core 2012-05-30 07:55:38 +02:00
sch5627.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
sch5636.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
scpi-hwmon.c hwmon: (scpi) skip unsupported sensors properly 2015-11-16 09:59:50 -08:00
sht15.c hwmon:change sht15_reverse() 2015-08-10 23:00:10 -07:00
sht21.c hwmon: (sht21) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:38 -07:00
shtc1.c hwmon: add support for Sensirion SHTC1 sensor 2014-06-12 08:36:48 -07:00
sis5595.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
smm665.c hwmon: (smm665) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:37 -07:00
smsc47b397.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
smsc47m1.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
smsc47m192.c hwmon: (smsc47m192) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:39 -07:00
tc74.c hwmon: add driver for Microchip TC74 2015-06-21 22:54:53 -07:00
thmc50.c hwmon: (thmc50) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:39 -07:00
tmp102.c hwmon: (tmp102) Force wait for conversion time for the first valid data 2015-12-10 08:14:22 -08:00
tmp103.c hwmon: (tmp103) Fix resource leak bug in tmp103 temperature sensor driver 2014-09-22 11:11:48 -07:00
tmp401.c hwmon: (tmp401) Do not auto-detect chip on I2C address 0x37 2015-05-29 13:37:06 -07:00
tmp421.c hwmon: (tmp421) Drop FSF mailing address 2014-08-04 07:01:38 -07:00
twl4030-madc-hwmon.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
ultra45_env.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
vexpress.c hwmon: (pwm-fan, vexpress) Constify of_device_id array 2015-03-16 13:00:32 -07:00
via-cputemp.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
via686a.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
vt1211.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
vt8231.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
w83l785ts.c hwmon: Avoid initializing the same field twice 2014-04-04 18:01:34 +02:00
w83l786ng.c hwmon: (w83l786ng) Convert to devm_hwmon_device_register_with_groups 2014-08-04 07:01:34 -07:00
w83627ehf.c hwmon: (w83627ehf) Use swap() in w82627ehf_swap_tempreg() 2015-07-03 14:39:06 +02:00
w83627hf.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
w83781d.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
w83791d.c hwmon: (w83791d) Fix vrm write operation 2014-08-05 19:44:42 -07:00
w83792d.c hwmon: (w83792d) Additional PWM outputs support 2015-07-03 14:39:05 +02:00
w83793.c hwmon: (w83793) Fix vrm write operation 2014-08-05 19:44:42 -07:00
w83795.c hwmon: (w83795) use find_closest_descending() in pwm_freq_to_reg() 2015-04-17 09:03:55 -04:00
wm831x-hwmon.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
wm8350-hwmon.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00