Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cbe311f2a40b8430d8e01b97c11e9e95d888430b
Commit:     cbe311f2a40b8430d8e01b97c11e9e95d888430b
Parent:     636866b9f0a72583d2361a897668eb19ff37ded6
Author:     Jean Delvare <[EMAIL PROTECTED]>
AuthorDate: Thu Jan 3 21:22:44 2008 +0100
Committer:  Mark M. Hoffman <[EMAIL PROTECTED]>
CommitDate: Thu Feb 7 20:39:45 2008 -0500

    hwmon: (w83627ehf) The W83627DHG has 8 VID pins
    
    While the W83627EHF/EHG has only 6 VID pins, the W83627DHG has 8 VID
    pins, to support VRD 11.0. Add support for this.
    
    Signed-off-by: Jean Delvare <[EMAIL PROTECTED]>
    Signed-off-by: Mark M. Hoffman <[EMAIL PROTECTED]>
---
 Documentation/hwmon/w83627ehf |    5 +++--
 drivers/hwmon/w83627ehf.c     |   18 ++++++++----------
 2 files changed, 11 insertions(+), 12 deletions(-)

diff --git a/Documentation/hwmon/w83627ehf b/Documentation/hwmon/w83627ehf
index ccc2bcb..d6e1ae3 100644
--- a/Documentation/hwmon/w83627ehf
+++ b/Documentation/hwmon/w83627ehf
@@ -23,8 +23,9 @@ W83627DHG super I/O chips. We will refer to them collectively 
as Winbond chips.
 
 The chips implement three temperature sensors, five fan rotation
 speed sensors, ten analog voltage sensors (only nine for the 627DHG), one
-VID (6 pins), alarms with beep warnings (control unimplemented), and
-some automatic fan regulation strategies (plus manual fan control mode).
+VID (6 pins for the 627EHF/EHG, 8 pins for the 627DHG), alarms with beep
+warnings (control unimplemented), and some automatic fan regulation
+strategies (plus manual fan control mode).
 
 Temperatures are measured in degrees Celsius and measurement resolution is 1
 degC for temp1 and 0.5 degC for temp2 and temp3. An alarm is triggered when
diff --git a/drivers/hwmon/w83627ehf.c b/drivers/hwmon/w83627ehf.c
index 6995928..075164d 100644
--- a/drivers/hwmon/w83627ehf.c
+++ b/drivers/hwmon/w83627ehf.c
@@ -1202,8 +1202,7 @@ static void w83627ehf_device_remove_files(struct device 
*dev)
                device_remove_file(dev, &sda_temp[i].dev_attr);
 
        device_remove_file(dev, &dev_attr_name);
-       if (data->vid != 0x3f)
-               device_remove_file(dev, &dev_attr_cpu0_vid);
+       device_remove_file(dev, &dev_attr_cpu0_vid);
 }
 
 /* Get the monitoring functions started */
@@ -1303,11 +1302,16 @@ static int __devinit w83627ehf_probe(struct 
platform_device *pdev)
                        }
                }
 
-               data->vid = superio_inb(sio_data->sioreg, SIO_REG_VID_DATA) & 
0x3f;
+               data->vid = superio_inb(sio_data->sioreg, SIO_REG_VID_DATA);
+               if (sio_data->kind == w83627ehf) /* 6 VID pins only */
+                       data->vid &= 0x3f;
+
+               err = device_create_file(dev, &dev_attr_cpu0_vid);
+               if (err)
+                       goto exit_release;
        } else {
                dev_info(dev, "VID pins in output mode, CPU VID not "
                         "available\n");
-               data->vid = 0x3f;
        }
 
        /* fan4 and fan5 share some pins with the GPIO and serial flash */
@@ -1390,12 +1394,6 @@ static int __devinit w83627ehf_probe(struct 
platform_device *pdev)
        if (err)
                goto exit_remove;
 
-       if (data->vid != 0x3f) {
-               err = device_create_file(dev, &dev_attr_cpu0_vid);
-               if (err)
-                       goto exit_remove;
-       }
-
        data->hwmon_dev = hwmon_device_register(dev);
        if (IS_ERR(data->hwmon_dev)) {
                err = PTR_ERR(data->hwmon_dev);
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to