Commit 4c41042d authored by Linus Torvalds's avatar Linus Torvalds

Merge branch 'hwmon-for-linus' of...

Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging

* 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
  hwmon: (w83627ehf) Properly report thermal diode sensors
parents e9308cfd bf164c58
...@@ -1715,7 +1715,8 @@ static void w83627ehf_device_remove_files(struct device *dev) ...@@ -1715,7 +1715,8 @@ static void w83627ehf_device_remove_files(struct device *dev)
} }
/* Get the monitoring functions started */ /* Get the monitoring functions started */
static inline void __devinit w83627ehf_init_device(struct w83627ehf_data *data) static inline void __devinit w83627ehf_init_device(struct w83627ehf_data *data,
enum kinds kind)
{ {
int i; int i;
u8 tmp, diode; u8 tmp, diode;
...@@ -1746,10 +1747,16 @@ static inline void __devinit w83627ehf_init_device(struct w83627ehf_data *data) ...@@ -1746,10 +1747,16 @@ static inline void __devinit w83627ehf_init_device(struct w83627ehf_data *data)
w83627ehf_write_value(data, W83627EHF_REG_VBAT, tmp | 0x01); w83627ehf_write_value(data, W83627EHF_REG_VBAT, tmp | 0x01);
/* Get thermal sensor types */ /* Get thermal sensor types */
diode = w83627ehf_read_value(data, W83627EHF_REG_DIODE); switch (kind) {
case w83627ehf:
diode = w83627ehf_read_value(data, W83627EHF_REG_DIODE);
break;
default:
diode = 0x70;
}
for (i = 0; i < 3; i++) { for (i = 0; i < 3; i++) {
if ((tmp & (0x02 << i))) if ((tmp & (0x02 << i)))
data->temp_type[i] = (diode & (0x10 << i)) ? 1 : 2; data->temp_type[i] = (diode & (0x10 << i)) ? 1 : 3;
else else
data->temp_type[i] = 4; /* thermistor */ data->temp_type[i] = 4; /* thermistor */
} }
...@@ -2016,7 +2023,7 @@ static int __devinit w83627ehf_probe(struct platform_device *pdev) ...@@ -2016,7 +2023,7 @@ static int __devinit w83627ehf_probe(struct platform_device *pdev)
} }
/* Initialize the chip */ /* Initialize the chip */
w83627ehf_init_device(data); w83627ehf_init_device(data, sio_data->kind);
data->vrm = vid_which_vrm(); data->vrm = vid_which_vrm();
superio_enter(sio_data->sioreg); superio_enter(sio_data->sioreg);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment