diff options
author | Jean Delvare <khali@linux-fr.org> | 2009-06-15 12:39:50 -0400 |
---|---|---|
committer | Jean Delvare <khali@linux-fr.org> | 2009-06-15 12:39:50 -0400 |
commit | c1e48dce05ff06266cdfd0cba55fc5367cd499a5 (patch) | |
tree | c46ba5f97e6079bc9c897b50a40e640f88951386 /drivers/hwmon/w83627ehf.c | |
parent | cd4e96c5dd4a72bdc54ea9981e02465708c204d3 (diff) |
hwmon: (w83627ehf) Add W83627DHG-P support
Add support for the new incarnation of the Winbond/Nuvoton W83627DHG
chip known as W83627DHG-P. It is basically the same as the original
W83627DHG with an additional automatic can speed control mode (not
supported by the driver yet.)
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Tested-by: Madhu <madhu.chinakonda@gmail.com>
Diffstat (limited to 'drivers/hwmon/w83627ehf.c')
-rw-r--r-- | drivers/hwmon/w83627ehf.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/drivers/hwmon/w83627ehf.c b/drivers/hwmon/w83627ehf.c index e64b42058b21..0e9746913d2b 100644 --- a/drivers/hwmon/w83627ehf.c +++ b/drivers/hwmon/w83627ehf.c | |||
@@ -36,6 +36,7 @@ | |||
36 | w83627ehf 10 5 4 3 0x8850 0x88 0x5ca3 | 36 | w83627ehf 10 5 4 3 0x8850 0x88 0x5ca3 |
37 | 0x8860 0xa1 | 37 | 0x8860 0xa1 |
38 | w83627dhg 9 5 4 3 0xa020 0xc1 0x5ca3 | 38 | w83627dhg 9 5 4 3 0xa020 0xc1 0x5ca3 |
39 | w83627dhg-p 9 5 4 3 0xb070 0xc1 0x5ca3 | ||
39 | w83667hg 9 5 3 3 0xa510 0xc1 0x5ca3 | 40 | w83667hg 9 5 3 3 0xa510 0xc1 0x5ca3 |
40 | */ | 41 | */ |
41 | 42 | ||
@@ -53,12 +54,13 @@ | |||
53 | #include <asm/io.h> | 54 | #include <asm/io.h> |
54 | #include "lm75.h" | 55 | #include "lm75.h" |
55 | 56 | ||
56 | enum kinds { w83627ehf, w83627dhg, w83667hg }; | 57 | enum kinds { w83627ehf, w83627dhg, w83627dhg_p, w83667hg }; |
57 | 58 | ||
58 | /* used to set data->name = w83627ehf_device_names[data->sio_kind] */ | 59 | /* used to set data->name = w83627ehf_device_names[data->sio_kind] */ |
59 | static const char * w83627ehf_device_names[] = { | 60 | static const char * w83627ehf_device_names[] = { |
60 | "w83627ehf", | 61 | "w83627ehf", |
61 | "w83627dhg", | 62 | "w83627dhg", |
63 | "w83627dhg", | ||
62 | "w83667hg", | 64 | "w83667hg", |
63 | }; | 65 | }; |
64 | 66 | ||
@@ -86,6 +88,7 @@ MODULE_PARM_DESC(force_id, "Override the detected device ID"); | |||
86 | #define SIO_W83627EHF_ID 0x8850 | 88 | #define SIO_W83627EHF_ID 0x8850 |
87 | #define SIO_W83627EHG_ID 0x8860 | 89 | #define SIO_W83627EHG_ID 0x8860 |
88 | #define SIO_W83627DHG_ID 0xa020 | 90 | #define SIO_W83627DHG_ID 0xa020 |
91 | #define SIO_W83627DHG_P_ID 0xb070 | ||
89 | #define SIO_W83667HG_ID 0xa510 | 92 | #define SIO_W83667HG_ID 0xa510 |
90 | #define SIO_ID_MASK 0xFFF0 | 93 | #define SIO_ID_MASK 0xFFF0 |
91 | 94 | ||
@@ -1517,6 +1520,7 @@ static int __init w83627ehf_find(int sioaddr, unsigned short *addr, | |||
1517 | static const char __initdata sio_name_W83627EHF[] = "W83627EHF"; | 1520 | static const char __initdata sio_name_W83627EHF[] = "W83627EHF"; |
1518 | static const char __initdata sio_name_W83627EHG[] = "W83627EHG"; | 1521 | static const char __initdata sio_name_W83627EHG[] = "W83627EHG"; |
1519 | static const char __initdata sio_name_W83627DHG[] = "W83627DHG"; | 1522 | static const char __initdata sio_name_W83627DHG[] = "W83627DHG"; |
1523 | static const char __initdata sio_name_W83627DHG_P[] = "W83627DHG-P"; | ||
1520 | static const char __initdata sio_name_W83667HG[] = "W83667HG"; | 1524 | static const char __initdata sio_name_W83667HG[] = "W83667HG"; |
1521 | 1525 | ||
1522 | u16 val; | 1526 | u16 val; |
@@ -1542,6 +1546,10 @@ static int __init w83627ehf_find(int sioaddr, unsigned short *addr, | |||
1542 | sio_data->kind = w83627dhg; | 1546 | sio_data->kind = w83627dhg; |
1543 | sio_name = sio_name_W83627DHG; | 1547 | sio_name = sio_name_W83627DHG; |
1544 | break; | 1548 | break; |
1549 | case SIO_W83627DHG_P_ID: | ||
1550 | sio_data->kind = w83627dhg_p; | ||
1551 | sio_name = sio_name_W83627DHG_P; | ||
1552 | break; | ||
1545 | case SIO_W83667HG_ID: | 1553 | case SIO_W83667HG_ID: |
1546 | sio_data->kind = w83667hg; | 1554 | sio_data->kind = w83667hg; |
1547 | sio_name = sio_name_W83667HG; | 1555 | sio_name = sio_name_W83667HG; |