]> git.pld-linux.org Git - packages/kernel.git/blob - 2.6.0-sensors-chip-update-1of4-lkml.patch
- obsolete
[packages/kernel.git] / 2.6.0-sensors-chip-update-1of4-lkml.patch
1 --- linux-2.6.0-test11-gkh/drivers/i2c/chips/w83781d.c  2003-12-14 13:53:50.000000000 -0500
2 +++ linux-2.6.0-test11-mmh/drivers/i2c/chips/w83781d.c  2003-12-14 15:50:46.000000000 -0500
3 @@ -24,10 +24,11 @@
4      Supports following chips:
5  
6      Chip       #vin    #fanin  #pwm    #temp   wchipid vendid  i2c     ISA
7 -    as99127f   7       3       1?      3       0x30    0x12c3  yes     no
8 -    asb100 "bach" (type_name = as99127f)       0x30    0x0694  yes     no
9 -    w83781d    7       3       0       3       0x10    0x5ca3  yes     yes
10 -    w83627hf   9       3       2       3       0x20    0x5ca3  yes     yes(LPC)
11 +    as99127f   7       3       1?      3       0x31    0x12c3  yes     no
12 +    as99127f rev.2 (type_name = 1299127f)      0x31    0x5ca3  yes     no
13 +    asb100 "bach" (type_name = as99127f)       0x31    0x0694  yes     no
14 +    w83781d    7       3       0       3       0x10-1  0x5ca3  yes     yes
15 +    w83627hf   9       3       2       3       0x21    0x5ca3  yes     yes(LPC)
16      w83627thf  9       3       2       3       0x90    0x5ca3  no      yes(LPC)
17      w83782d    9       3       2-4     3       0x30    0x5ca3  yes     yes
18      w83783s    5-6     3       2       1-2     0x40    0x5ca3  yes     no
19 @@ -1264,7 +1265,7 @@
20                         goto ERROR2;
21                 }
22                 /* If Winbond SMBus, check address at 0x48.
23 -                  Asus doesn't support */
24 +                  Asus doesn't support, except for as99127f rev.2 */
25                 if ((!is_isa) && (((!(val1 & 0x80)) && (val2 == 0xa3)) ||
26                                   ((val1 & 0x80) && (val2 == 0x5c)))) {
27                         if (w83781d_read_value
28 @@ -1295,18 +1296,17 @@
29                         goto ERROR2;
30                 }
31  
32 -               /* mask off lower bit, not reliable */
33 -               val1 =
34 -                   w83781d_read_value(new_client, W83781D_REG_WCHIPID) & 0xfe;
35 -               if (val1 == 0x10 && vendid == winbond)
36 +               val1 = w83781d_read_value(new_client, W83781D_REG_WCHIPID);
37 +               if ((val1 == 0x10 || val1 == 0x11) && vendid == winbond)
38                         kind = w83781d;
39                 else if (val1 == 0x30 && vendid == winbond)
40                         kind = w83782d;
41 -               else if (val1 == 0x40 && vendid == winbond && !is_isa)
42 +               else if (val1 == 0x40 && vendid == winbond && !is_isa
43 +                               && address == 0x2d)
44                         kind = w83783s;
45 -               else if ((val1 == 0x20 || val1 == 0x90) && vendid == winbond)
46 +               else if ((val1 == 0x21 || val1 == 0x90) && vendid == winbond)
47                         kind = w83627hf;
48 -               else if (val1 == 0x30 && vendid == asus && !is_isa)
49 +               else if (val1 == 0x31 && !is_isa && address >= 0x28)
50                         kind = as99127f;
51                 else if (val1 == 0x60 && vendid == winbond && is_isa)
52                         kind = w83697hf;
This page took 0.04223 seconds and 3 git commands to generate.