Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelv...
Linus Torvalds [Thu, 10 Dec 2009 03:53:11 +0000 (19:53 -0800)]
* 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging: (41 commits)
  hwmon: (adt7475) Add VID support for the ADT7476
  hwmon: (adt7475) Add an entry in MAINTAINERS
  hwmon: (adt7475) Add support for the ADT7476
  hwmon: (adt7475) Voltage attenuators can be bypassed
  hwmon: (adt7475) Print device information on probe
  hwmon: (adt7475) Handle alternative pin functions
  hwmon: (adt7475) Move sysfs files removal to a separate function
  hwmon: (adt7475) Add support for the ADT7490
  hwmon: (adt7475) Improve device detection
  hwmon: (adt7475) Add missing static marker
  hwmon: (adt7475) Rework voltage inputs handling
  hwmon: (adt7475) Implement pwm_use_point2_pwm_at_crit
  hwmon: (adt7475) New documentation
  hwmon: (adt7475) Add support for the ADT7473
  hwmon: (f71882fg) Add support for the f71889fg (version 2)
  hwmon: (f71882fg) Fix sysfs file removal
  hwmon: (f71882fg) Cleanup sysfs attr creation 2/2
  hwmon: (f71882fg) Cleanup sysfs attr creation 1/2
  hwmon: (thmc50) Stop using I2C_CLIENT_MODULE_PARM
  hwmon: Add Freescale MC13783 ADC driver
  ...

1  2 
MAINTAINERS
drivers/hwmon/adm1029.c
drivers/hwmon/lm93.c

diff --combined MAINTAINERS
@@@ -327,6 -327,13 +327,13 @@@ M:       Colin Leroy <colin@colino.net
  S:    Maintained
  F:    drivers/macintosh/therm_adt746x.c
  
+ ADT7475 HARDWARE MONITOR DRIVER
+ M:    Jean Delvare <khali@linux-fr.org>
+ L:    lm-sensors@lm-sensors.org
+ S:    Maintained
+ F:    Documentation/hwmon/adt7475
+ F:    drivers/hwmon/adt7475.c
  ADVANSYS SCSI DRIVER
  M:    Matthew Wilcox <matthew@wil.cx>
  L:    linux-scsi@vger.kernel.org
@@@ -486,6 -493,13 +493,6 @@@ S:        Maintaine
  F:    drivers/net/appletalk/
  F:    net/appletalk/
  
 -APPLETOUCH TOUCHPAD DRIVER
 -M:    Johannes Berg <johannes@sipsolutions.net>
 -L:    linux-input@vger.kernel.org
 -S:    Maintained
 -F:    Documentation/input/appletouch.txt
 -F:    drivers/input/mouse/appletouch.c
 -
  ARC FRAMEBUFFER DRIVER
  M:    Jaya Kumar <jayalk@intworks.biz>
  S:    Maintained
@@@ -2416,7 -2430,9 +2423,9 @@@ HARDWARE MONITORIN
  L:    lm-sensors@lm-sensors.org
  W:    http://www.lm-sensors.org/
  S:    Orphan
+ F:    Documentation/hwmon/
  F:    drivers/hwmon/
+ F:    include/linux/hwmon*.h
  
  HARDWARE RANDOM NUMBER GENERATOR CORE
  M:    Matt Mackall <mpm@selenic.com>
@@@ -3132,7 -3148,6 +3141,7 @@@ S:      Supporte
  F:    Documentation/s390/kvm.txt
  F:    arch/s390/include/asm/kvm*
  F:    arch/s390/kvm/
 +F:    drivers/s390/kvm/
  
  KEXEC
  M:    Eric Biederman <ebiederm@xmission.com>
@@@ -3312,6 -3327,12 +3321,12 @@@ S:    Maintaine
  F:    Documentation/hwmon/lis3lv02d
  F:    drivers/hwmon/lis3lv02d.*
  
+ LM73 HARDWARE MONITOR DRIVER
+ M:    Guillaume Ligneul <guillaume.ligneul@gmail.com>
+ L:    lm-sensors@lm-sensors.org
+ S:    Maintained
+ F:    drivers/hwmon/lm73.c
  LM83 HARDWARE MONITOR DRIVER
  M:    Jean Delvare <khali@linux-fr.org>
  L:    lm-sensors@lm-sensors.org
@@@ -4189,13 -4210,6 +4204,13 @@@ W:    http://www.pmc-sierra.com
  S:    Supported
  F:    drivers/scsi/pmcraid.*
  
 +PMC SIERRA PM8001 DRIVER
 +M:    jack_wang@usish.com
 +M:    lindar_liu@usish.com
 +L:    linux-scsi@vger.kernel.org
 +S:    Supported
 +F:    drivers/scsi/pm8001/
 +
  POSIX CLOCKS and TIMERS
  M:    Thomas Gleixner <tglx@linutronix.de>
  S:    Supported
@@@ -4554,7 -4568,6 +4569,7 @@@ L:      linux-s390@vger.kernel.or
  W:    http://www.ibm.com/developerworks/linux/linux390/
  S:    Supported
  F:    arch/s390/
 +F:    drivers/s390/
  
  S390 NETWORK DRIVERS
  M:    Ursula Braun <ursula.braun@de.ibm.com>
@@@ -4570,7 -4583,6 +4585,7 @@@ M:      Felix Beck <felix.beck@de.ibm.com
  M:    Ralph Wuerthner <ralph.wuerthner@de.ibm.com>
  M:    linux390@de.ibm.com
  L:    linux-s390@vger.kernel.org
 +W:    http://www.ibm.com/developerworks/linux/linux390/
  S:    Supported
  F:    drivers/s390/crypto/
  
@@@ -5772,14 -5784,6 +5787,14 @@@ L:    netdev@vger.kernel.or
  S:    Maintained
  F:    drivers/net/vmxnet3/
  
 +VMware PVSCSI driver
 +M:    Alok Kataria <akataria@vmware.com>
 +M:    VMware PV-Drivers <pv-drivers@vmware.com>
 +L:    linux-scsi@vger.kernel.org
 +S:    Maintained
 +F:    drivers/scsi/vmw_pvscsi.c
 +F:    drivers/scsi/vmw_pvscsi.h
 +
  VOLTAGE AND CURRENT REGULATOR FRAMEWORK
  M:    Liam Girdwood <lrg@slimlogic.co.uk>
  M:    Mark Brown <broonie@opensource.wolfsonmicro.com>
diff --combined drivers/hwmon/adm1029.c
@@@ -301,59 -301,36 +301,36 @@@ static int adm1029_detect(struct i2c_cl
                          struct i2c_board_info *info)
  {
        struct i2c_adapter *adapter = client->adapter;
+       u8 man_id, chip_id, temp_devices_installed, nb_fan_support;
  
        if (!i2c_check_functionality(adapter, I2C_FUNC_SMBUS_BYTE_DATA))
                return -ENODEV;
  
-       /* Now we do the detection and identification. A negative kind
-        * means that the driver was loaded with no force parameter
-        * (default), so we must both detect and identify the chip
-        * (actually there is only one possible kind of chip for now, adm1029).
-        * A zero kind means that the driver was loaded with the force
-        * parameter, the detection step shall be skipped. A positive kind
-        * means that the driver was loaded with the force parameter and a
-        * given kind of chip is requested, so both the detection and the
-        * identification steps are skipped. */
-       /* Default to an adm1029 if forced */
-       if (kind == 0)
-               kind = adm1029;
        /* ADM1029 doesn't have CHIP ID, check just MAN ID
         * For better detection we check also ADM1029_TEMP_DEVICES_INSTALLED,
         * ADM1029_REG_NB_FAN_SUPPORT and compare it with possible values
         * documented
         */
  
-       if (kind <= 0) {        /* identification */
-               u8 man_id, chip_id, temp_devices_installed, nb_fan_support;
-               man_id = i2c_smbus_read_byte_data(client, ADM1029_REG_MAN_ID);
-               chip_id = i2c_smbus_read_byte_data(client, ADM1029_REG_CHIP_ID);
-               temp_devices_installed = i2c_smbus_read_byte_data(client,
+       man_id = i2c_smbus_read_byte_data(client, ADM1029_REG_MAN_ID);
+       chip_id = i2c_smbus_read_byte_data(client, ADM1029_REG_CHIP_ID);
+       temp_devices_installed = i2c_smbus_read_byte_data(client,
                                        ADM1029_REG_TEMP_DEVICES_INSTALLED);
-               nb_fan_support = i2c_smbus_read_byte_data(client,
+       nb_fan_support = i2c_smbus_read_byte_data(client,
                                                ADM1029_REG_NB_FAN_SUPPORT);
-               /* 0x41 is Analog Devices */
-               if (man_id == 0x41 && (temp_devices_installed & 0xf9) == 0x01
-                   && nb_fan_support == 0x03) {
-                       if ((chip_id & 0xF0) == 0x00) {
-                               kind = adm1029;
-                       } else {
-                               /* There are no "official" CHIP ID, so actually
-                                * we use Major/Minor revision for that */
-                               printk(KERN_INFO
-                                      "adm1029: Unknown major revision %x, "
-                                      "please let us know\n", chip_id);
-                       }
-               }
-               if (kind <= 0) {        /* identification failed */
-                       pr_debug("adm1029: Unsupported chip (man_id=0x%02X, "
-                                "chip_id=0x%02X)\n", man_id, chip_id);
-                       return -ENODEV;
-               }
+       /* 0x41 is Analog Devices */
+       if (man_id != 0x41 || (temp_devices_installed & 0xf9) != 0x01
+           || nb_fan_support != 0x03)
+               return -ENODEV;
+       if ((chip_id & 0xF0) != 0x00) {
+               /* There are no "official" CHIP ID, so actually
+                * we use Major/Minor revision for that */
+               pr_info("adm1029: Unknown major revision %x, "
+                       "please let us know\n", chip_id);
+               return -ENODEV;
        }
        strlcpy(info->type, "adm1029", I2C_NAME_SIZE);
  
        return 0;
@@@ -432,7 -409,7 +409,7 @@@ static int adm1029_remove(struct i2c_cl
  }
  
  /*
 -function that update the status of the chips (temperature for exemple)
 +function that update the status of the chips (temperature for example)
  */
  static struct adm1029_data *adm1029_update_device(struct device *dev)
  {
diff --combined drivers/hwmon/lm93.c
@@@ -928,7 -928,7 +928,7 @@@ static void lm93_update_client_common(s
        data->prochot_interval = lm93_read_byte(client,
                        LM93_REG_PROCHOT_INTERVAL);
  
 -      /* Fan Boost Termperature registers */
 +      /* Fan Boost Temperature registers */
        for (i = 0; i < 4; i++)
                data->boost[i] = lm93_read_byte(client, LM93_REG_BOOST(i));
  
@@@ -2505,34 -2505,24 +2505,24 @@@ static int lm93_detect(struct i2c_clien
                       struct i2c_board_info *info)
  {
        struct i2c_adapter *adapter = client->adapter;
+       int mfr, ver;
  
        if (!i2c_check_functionality(adapter, LM93_SMBUS_FUNC_MIN))
                return -ENODEV;
  
        /* detection */
-       if (kind < 0) {
-               int mfr = lm93_read_byte(client, LM93_REG_MFR_ID);
-               if (mfr != 0x01) {
-                       dev_dbg(&adapter->dev,"detect failed, "
-                               "bad manufacturer id 0x%02x!\n", mfr);
-                       return -ENODEV;
-               }
+       mfr = lm93_read_byte(client, LM93_REG_MFR_ID);
+       if (mfr != 0x01) {
+               dev_dbg(&adapter->dev,
+                       "detect failed, bad manufacturer id 0x%02x!\n", mfr);
+               return -ENODEV;
        }
  
-       if (kind <= 0) {
-               int ver = lm93_read_byte(client, LM93_REG_VER);
-               if ((ver == LM93_MFR_ID) || (ver == LM93_MFR_ID_PROTOTYPE)) {
-                       kind = lm93;
-               } else {
-                       dev_dbg(&adapter->dev,"detect failed, "
-                               "bad version id 0x%02x!\n", ver);
-                       if (kind == 0)
-                               dev_dbg(&adapter->dev,
-                                       "(ignored 'force' parameter)\n");
-                       return -ENODEV;
-               }
+       ver = lm93_read_byte(client, LM93_REG_VER);
+       if (ver != LM93_MFR_ID && ver != LM93_MFR_ID_PROTOTYPE) {
+               dev_dbg(&adapter->dev,
+                       "detect failed, bad version id 0x%02x!\n", ver);
+               return -ENODEV;
        }
  
        strlcpy(info->type, "lm93", I2C_NAME_SIZE);