linux/drivers/hwmon
Guenter Roeck 3b031622f5 hwmon: (k10temp) Use API function to access System Management Network
The SMN (System Management Network) on Family 17h AMD CPUs is also accessed
from other drivers, specifically EDAC. Accessing it directly is racy.
On top of that, accessing the SMN through root bridge 00:00 is wrong on
multi-die CPUs and may result in reading the temperature from the wrong
die. Use available API functions to fix the problem.

For this to work, add dependency on AMD_NB. Also change the Raven Ridge
PCI device ID to point to Data Fabric Function 3, since this ID is used
by the API functions to find the CPU node.

Cc: stable@vger.kernel.org # v4.16+
Tested-by: Gabriel Craciunescu <nix.or.die@gmail.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
2018-05-13 09:00:49 -07:00
..
pmbus hwmon: (pmbus/adm1275) Add support for ADM1272 2018-03-22 09:32:17 -07:00
ab8500.c hwmon: (ab8500) Call kernel_power_off instead of pm_power_off 2014-10-03 08:19:02 -07:00
abituguru3.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
abituguru.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
acpi_power_meter.c dmi: Mark all struct dmi_system_id instances const 2017-09-14 11:59:30 +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 spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
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 spi: Drop owner assignment from spi_drivers 2015-10-28 10:30:17 +09:00
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 overflows seen when writing into limit attributes 2016-12-09 21:54:31 -08:00
adt7470.c hwmon: (adt7470) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
adt7475.c hwmon: (adt7475) constify attribute_group structures. 2017-08-13 08:24:38 -07:00
amc6821.c hwmon: (amc6821) sign extension temperature 2016-12-02 13:28:04 -08:00
applesmc.c dmi: Mark all struct dmi_system_id instances const 2017-09-14 11:59:30 +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) Deassert reset in probe 2018-01-02 15:05:34 -08:00
asus_atk0110.c hwmon: (asus_atk0110) fix uninitialized data access 2017-03-23 12:01:57 -07:00
atxp1.c hwmon: (atxp1) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
coretemp.c Merge branch 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2018-02-14 17:02:15 -08:00
da9052-hwmon.c hwmon: (da9052) Increase sample rate when using TSI 2017-10-21 09:03:29 -07: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) Disable fan support for Dell Vostro 3360 2018-01-27 09:34:22 -08: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
emc2103.c hwmon: (emc2103) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
f71805f.c hwmon: (f71805f) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08: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) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08: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 hwmon: (gpio-fan) Fix null pointer dereference at probe 2017-10-29 18:36:03 -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: Fix parameter documentation 2018-01-02 15:05:34 -08:00
i5k_amb.c hwmon: (i5k_amb) constify pci_device_id 2017-08-13 08:24:38 -07:00
i5500_temp.c hwmon: (i5500_temp) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08: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 current(A) sensor 2017-06-20 13:52:19 -07:00
iio_hwmon.c hwmon: (iio_hwmon) Fix documentation of struct iio_hwmon_state 2018-01-02 15:05:34 -08:00
ina2xx.c hwmon: (ina2xx) Fix access to uninitialized mutex 2018-01-15 08:01:45 -08:00
ina209.c hwmon: (ina209) Handled signed registers 2017-04-21 12:30:09 -07:00
ina3221.c hwmon: (ina3221) Fix negative limits 2016-06-27 18:58:04 -07: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) optionally try to disable the SMBUS timeout 2017-11-30 13:12:44 -08: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) Use API function to access System Management Network 2018-05-13 09:00:49 -07:00
Kconfig hwmon: (k10temp) Use API function to access System Management Network 2018-05-13 09:00:49 -07: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 trailing semicolon 2018-01-17 14:51:12 -08: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 hwmon: (lm80) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08: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) Add OF device ID table 2017-04-02 07:01:53 -07: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: Add LTC2990 sensor driver 2016-03-05 06:25:34 -08: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 hwmon: add support for sensors exported via ARM SCMI 2018-02-28 16:37:57 +00:00
max197.c hwmon: (max197) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08: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) Add OF device ID table 2017-04-02 07:01:53 -07:00
max16065.c
max31722.c hwmon: (max31722) Add support for MAX31722/MAX31723 temperature sensors 2016-04-19 06:32:34 -07:00
max31790.c hwmon: (max31790) Set correct PWM value 2017-03-22 00:18:20 -07:00
mc13783-adc.c hwmon: (mc13783-adc) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
mcp3021.c hwmon: (mcp3021) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08: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) Enable EC access if disabled at boot 2018-04-23 06:12:26 -07:00
nct6775.c hwmon: (nct6775) Fix writing pwmX_mode 2018-03-27 08:49:24 -07:00
nct7802.c hwmon: (nct7802) constify attribute_group structures. 2017-08-13 08:24:38 -07:00
nct7904.c hwmon: (nct7904) Convert to use new hwmon registration API 2016-09-08 21:34:18 -07: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 permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08: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) Switch to new atomic PWM API 2017-06-11 17:08: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) 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 hwmon: (sch5636) trivial fix of spelling mistake on revision 2016-04-25 07:26:29 -07:00
scmi-hwmon.c hwmon: (scmi) handle absence of few types of sensors 2018-04-22 19:39:55 -07:00
scpi-hwmon.c hwmon: (scpi) constify thermal_zone_of_device_ops structures 2017-08-13 08:24:38 -07: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
sis5595.c hwmon: (sis5595) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
smm665.c
smsc47b397.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
smsc47m1.c hwmon: (smsc47m1) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08: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 hwmon: add driver for Microchip TC74 2015-06-21 22:54:53 -07:00
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) Add OF device ID table 2017-04-02 07:01:53 -07:00
ultra45_env.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02:00
vexpress-hwmon.c hwmon: (vexpress) rename vexpress hwmon implementation 2016-03-05 06:25:33 -08:00
via686a.c hwmon: (via686a) use permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08:00
via-cputemp.c hwmon: (via-cputemp) support new centaur CPUs 2018-03-30 07:53:57 -07:00
vt1211.c hwmon: drop owner assignment from platform_drivers 2014-10-20 16:20:36 +02: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 permission-specific DEVICE_ATTR variants 2017-01-02 10:19:45 -08: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) 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
xgene-hwmon.c hwmon: (xgene) Minor clean up of ifdef and acpi_match_table reference 2017-11-01 06:14:52 -07:00