Bug 8465
Summary: | The Intel SMBus controller is no longer recognised by Etch | ||
---|---|---|---|
Product: | Drivers | Reporter: | Pierre Brial (p.brial) |
Component: | I2C | Assignee: | Jean Delvare (jdelvare) |
Status: | RESOLVED PATCH_ALREADY_AVAILABLE | ||
Severity: | normal | ||
Priority: | P2 | ||
Hardware: | i386 | ||
OS: | Linux | ||
Kernel Version: | 2.6.18-4-686 | Subsystem: | |
Regression: | --- | Bisected commit-id: |
Description
Pierre Brial
2007-05-10 20:01:27 UTC
Asus is hiding the SMBus on many of their boards. The kernel has to unhide it, otherwise the hardware monitoring chip connected to the SMBus cannot be used. Around kernel 2.6.16, it was noticed that this operation wasn't properly handled when suspend/resume cycles were performed on the affected systems, with potentially dangerous effects on some systems. So we decided to play it safe and disabled the feature altogether when suspend support is enabled in the kernel. This happened in kernel 2.6.17, and was backported to 2.6.16.y too. Since then, Alan Cox fixed the problem, so using the SMBus unhiding quirk should be safe even when suspend/resume is used. Alan's fix went into 2.6.20: http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1597cacbe39802d86656d1f2e6329895bd2ef531 So, from 2.6.16 to 2.6.19, you have to choose between hardware monitoring and suspend support on these Asus boards. Typically, distribution kernels will have suspend support enabled, so no hardware monitoring support for the affected boards. This is what's happening on your Debian Etch. So, you have to either recompile your kernel without suspend support, or upgrade to kernel 2.6.20. Alternatively, if upgrading or recompiling your kernel isn't an option, you could temporarily use the unhide_ICH_SMBus script from the lm_sensors source package. Please make sure to read the documentation carefully. Thanks for the fast answers. I didn't find the the unhide_ICH_SMBus script in the debian lm_sensors source package. So i've installed the debian kernel image linux-image-2.6.20-1-686 and the SMBus is now recognized, and mbmon works perfectly. But now the nvidia video driver compiled for 2.6.18 no longer works and I need to install the linux-headers-2.6.20-1-686 to compile another driver. Unfortunately, for dependencies reasons related to linux-kbuild-2.6.20 and libc6, apt-get tell me to remove util-linux, which will cause my system to be unusable. I will be glad to receive any tips about this new issue, but as this is no longer related to the kernel, please use directly my address p.brial@orange.fr unhide_ICH_SMBus is new in lm_sensors 2.10.3, and isn't installed by default. Thanks The unhide_ICH_SMBus scripts works perfectly on my system. So I find safer to keep 2.6.18 kernel and use the script when needed. Thank you all for the quick fix. Keep up the good work. Regards Pierre |