Merge tag 'hwmon-for-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck...
authorLinus Torvalds <torvalds@linux-foundation.org>
Sat, 29 Dec 2018 03:48:25 +0000 (19:48 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 29 Dec 2018 03:48:25 +0000 (19:48 -0800)
Pull hwmon updates from Guenter Roeck:
 "The big change in this series is for the most part automatic:
  Introducing SENSOR[_DEVICE]_ATTR_{RO,RW,WO} variants and conversion of
  various drivers to use it. This is similar to DEVICE_ATTR variants.

  Other than that, we have

   - Some conversions of S_<PERMS> with octal values, also automated

   - Added support for Hygon Dhyana CPUs to k10temp driver

   - Added support for STLM75 to lm75 driver

   - B57891S0103 to ntc_thermistor

   - Added pm-runtime support to ina3221 driver

   - Support for PowerPC On-Chip Controller (OCC)

   - Various minor bug fices and improvements"

* tag 'hwmon-for-v4.21' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (80 commits)
  hwmon: (lm80) fix a missing check of bus read in lm80 probe
  hwmon: (lm80) fix a missing check of the status of SMBus read
  hwmon: (asus_atk0110) Fix debugfs_simple_attr.cocci warnings
  hwmon: (ftsteutates) Use permission specific SENSOR[_DEVICE]_ATTR variants
  hwmon: (fschmd) Use permission specific SENSOR[_DEVICE]_ATTR variants
  hwmon: (emc6w201) Use permission specific SENSOR[_DEVICE]_ATTR variants
  hwmon: (emc2103) Use permission specific SENSOR[_DEVICE]_ATTR variants
  hwmon: (emc1403) Use permission specific SENSOR[_DEVICE]_ATTR variants
  hwmon: (ds620) Use permission specific SENSOR[_DEVICE]_ATTR variants
  hwmon: (ds1621) Use permission specific SENSOR[_DEVICE]_ATTR variants
  hwmon: (dell-smm-hwmon) Use permission specific SENSOR[_DEVICE]_ATTR variants
  hwmon: (da9055-hwmon) Use permission specific SENSOR[_DEVICE]_ATTR variants
  hwmon: (da9052-hwmon) Use permission specific SENSOR[_DEVICE]_ATTR variants
  hwmon: (coretemp) Replace S_<PERMS> with octal values
  hwmon: (asus_atk0110) Replace S_<PERMS> with octal values
  hwmon: (aspeed-pwm-tacho) Use permission specific SENSOR[_DEVICE]_ATTR variants
  hwmon: (applesmc) Replace S_<PERMS> with octal values
  hwmon: (amc6821) Use permission specific SENSOR[_DEVICE]_ATTR variants
  hwmon: (adt7x10) Use permission specific SENSOR[_DEVICE]_ATTR variants
  hwmon: (adt7475) Use permission specific SENSOR[_DEVICE]_ATTR variants
  ...

1  2 
drivers/hwmon/k10temp.c

diff --combined drivers/hwmon/k10temp.c
index 9790f1f5eb98dc9a5952f63ba2bfae354dddfff0,1eb954daa2c8a2fa9fe5cd03f51c7080d1b52fdd..50158b9298bb9bbdb3842d361199b4e877ba3bd4
@@@ -23,7 -23,6 +23,7 @@@
  #include <linux/init.h>
  #include <linux/module.h>
  #include <linux/pci.h>
 +#include <linux/pci_ids.h>
  #include <asm/amd_nb.h>
  #include <asm/processor.h>
  
@@@ -42,6 -41,14 +42,6 @@@ static DEFINE_MUTEX(nb_smu_ind_mutex)
  #define PCI_DEVICE_ID_AMD_15H_M70H_NB_F3      0x15b3
  #endif
  
 -#ifndef PCI_DEVICE_ID_AMD_17H_DF_F3
 -#define PCI_DEVICE_ID_AMD_17H_DF_F3   0x1463
 -#endif
 -
 -#ifndef PCI_DEVICE_ID_AMD_17H_M10H_DF_F3
 -#define PCI_DEVICE_ID_AMD_17H_M10H_DF_F3      0x15eb
 -#endif
 -
  /* CPUID function 0x80000001, ebx */
  #define CPUID_PKGTYPE_MASK    0xf0000000
  #define CPUID_PKGTYPE_F               0x00000000
@@@ -184,7 -191,7 +184,7 @@@ static ssize_t temp1_max_show(struct de
        return sprintf(buf, "%d\n", 70 * 1000);
  }
  
- static ssize_t show_temp_crit(struct device *dev,
+ static ssize_t temp_crit_show(struct device *dev,
                              struct device_attribute *devattr, char *buf)
  {
        struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr);
  
  static DEVICE_ATTR_RO(temp1_input);
  static DEVICE_ATTR_RO(temp1_max);
- static SENSOR_DEVICE_ATTR(temp1_crit, S_IRUGO, show_temp_crit, NULL, 0);
- static SENSOR_DEVICE_ATTR(temp1_crit_hyst, S_IRUGO, show_temp_crit, NULL, 1);
+ static SENSOR_DEVICE_ATTR_RO(temp1_crit, temp_crit, 0);
+ static SENSOR_DEVICE_ATTR_RO(temp1_crit_hyst, temp_crit, 1);
  
- static SENSOR_DEVICE_ATTR(temp1_label, 0444, temp_label_show, NULL, 0);
+ static SENSOR_DEVICE_ATTR_RO(temp1_label, temp_label, 0);
  static DEVICE_ATTR_RO(temp2_input);
- static SENSOR_DEVICE_ATTR(temp2_label, 0444, temp_label_show, NULL, 1);
+ static SENSOR_DEVICE_ATTR_RO(temp2_label, temp_label, 1);
  
  static umode_t k10temp_is_visible(struct kobject *kobj,
                                  struct attribute *attr, int index)
@@@ -323,7 -330,7 +323,7 @@@ static int k10temp_probe(struct pci_de
             (boot_cpu_data.x86_model & 0xf0) == 0x70)) {
                data->read_htcreg = read_htcreg_nb_f15;
                data->read_tempreg = read_tempreg_nb_f15;
-       } else if (boot_cpu_data.x86 == 0x17) {
+       } else if (boot_cpu_data.x86 == 0x17 || boot_cpu_data.x86 == 0x18) {
                data->temp_adjust_mask = 0x80000;
                data->read_tempreg = read_tempreg_nb_f17;
                data->show_tdie = true;
@@@ -360,7 -367,7 +360,8 @@@ static const struct pci_device_id k10te
        { PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_16H_M30H_NB_F3) },
        { PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_17H_DF_F3) },
        { PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_17H_M10H_DF_F3) },
 +      { PCI_VDEVICE(AMD, PCI_DEVICE_ID_AMD_17H_M30H_DF_F3) },
+       { PCI_VDEVICE(HYGON, PCI_DEVICE_ID_AMD_17H_DF_F3) },
        {}
  };
  MODULE_DEVICE_TABLE(pci, k10temp_id_table);