Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 200946
b: refs/heads/master
c: 436cad2
h: refs/heads/master
v: v3
  • Loading branch information
Jean Delvare committed Jul 9, 2010
1 parent 8b06211 commit 3c9261e
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: d535bad90dad4eb42ec6528043fcfb53627d4f89
refs/heads/master: 436cad2a41a40c6c32bd9152b63d17eeb1f7c99b
22 changes: 22 additions & 0 deletions trunk/drivers/hwmon/it87.c
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,13 @@ superio_inb(int reg)
return inb(VAL);
}

static inline void
superio_outb(int reg, int val)
{
outb(reg, REG);
outb(val, VAL);
}

static int superio_inw(int reg)
{
int val;
Expand Down Expand Up @@ -1517,6 +1524,21 @@ static int __init it87_find(unsigned short *address,
sio_data->vid_value = superio_inb(IT87_SIO_VID_REG);

reg = superio_inb(IT87_SIO_PINX2_REG);
/*
* The IT8720F has no VIN7 pin, so VCCH should always be
* routed internally to VIN7 with an internal divider.
* Curiously, there still is a configuration bit to control
* this, which means it can be set incorrectly. And even
* more curiously, many boards out there are improperly
* configured, even though the IT8720F datasheet claims
* that the internal routing of VCCH to VIN7 is the default
* setting. So we force the internal routing in this case.
*/
if (sio_data->type == it8720 && !(reg & (1 << 1))) {
reg |= (1 << 1);
superio_outb(IT87_SIO_PINX2_REG, reg);
pr_notice("it87: Routing internal VCCH to in7\n");
}
if (reg & (1 << 0))
pr_info("it87: in3 is VCC (+5V)\n");
if (reg & (1 << 1))
Expand Down

0 comments on commit 3c9261e

Please sign in to comment.