From 4bab48979630e7dd2fec76f6c160ed9333547bfe Mon Sep 17 00:00:00 2001 From: Jean Delvare Date: Sat, 22 Apr 2006 18:06:49 +0000 Subject: [PATCH] Reset the PEC bit after every transaction. This partly reverts the previous change. This is needed by some BIOSes at reboot and resume time. git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@3290 7894878c-1315-0410-8ee3-d5d059ff63e0 --- kernel/busses/i2c-i801.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/kernel/busses/i2c-i801.c b/kernel/busses/i2c-i801.c index eea020b9..4fc5e385 100644 --- a/kernel/busses/i2c-i801.c +++ b/kernel/busses/i2c-i801.c @@ -537,6 +537,11 @@ static s32 i801_access(struct i2c_adapter * adap, u16 addr, ret = i801_transaction(); } + /* Some BIOSes don't like it when PEC is enabled at reboot or resume + time, so we forcibly disable it after every transaction. */ + if (hwpec) + outb_p(0, SMBAUXCTL); + if(block) return ret; if(ret)