I am using a MSI B75MA-P45 motherboard on Centos 6 and my CPU fan is currently stuck at 100%. I can see RPM of the fan and temperature inside my BIOS however when I run sensors-detect I only see CPU and core temperatures.
My fan is connected via the 4 pin system fan connection on the motherboard.
Any ideas on what I can do to get pwm working for my fan?
Update:
This is what I can see when I check sensors
[root@localhost config]# sensors
acpitz-virtual-0
Adapter: Virtual device
temp1: +27.8 C (crit = +106.0 C)
temp2: +29.8 C (crit = +106.0 C)
coretemp-isa-0000
Adapter: ISA adapter
Physical id 0: +31.0 C (high = +85.0 C, crit = +105.0 C)
Core 0: +31.0 C (high = +85.0 C, crit = +105.0 C)
Core 1: +29.0 C (high = +85.0 C, crit = +105.0 C)
I get the following when running sensors-detect and was wondering why I don't see lm78 when I run sensors?
Now follows a summary of the probes I have just done.
Just press ENTER to continue:
Driver `coretemp':
* Chip `Intel digital thermal sensor' (confidence: 9)
Driver `lm78':
* ISA bus, address 0x290
Chip `National Semiconductor LM78' (confidence: 6)
Do you want to overwrite /etc/sysconfig/lm_sensors? (YES/no): YES
Update 2:
When running pwmconfig I get the following issue
/usr/sbin/pwmconfig: There are no pwm-capable sensor modules installed
Best Answer
Note that the detection confidence of the LM78 is only 6, not 9 as with the
coretemp
module.There are several lm78 clones that are similar enough to be detected as
lm78
unless a more specific test is done to identify that particular clone. Unfortunately, some of those "clones" are so different from the actual lm78 that thelm78
driver module cannot handle them.You have allowed
sensors-detect
to modify/etc/sysconfig/lm_sensors
, so the system will at least make an attempt to load thelm78
driver at next reboot, or when the lm_sensors subsystem is restarted. If thelm78
was loaded and successfully accessed the monitoring chip, thesensors
command output would include a block that would start with:If the module is actually loaded but there is no such block in the
sensors
command output, then the module did not successfully take control of the "lm78" monitoring chip. The output of thedmesg
command might include more clues as to what went wrong: for example, if the monitoring chip is actually a true lm78 but its I/O addresses are marked as reserved by ACPI, then the driver cannot attach to it. In this case, an error message indmesg
will indicate that.If the address space of the lm78 chip is actually reserved by ACPI, then there is a chance that the ACPI firmware will be accessing the lm78 chip while the system is running, which might cause occasional false readings for the Linux lm78 driver. If the chip also controls fan speeds, it might also cause the fan to be set to wrong speeds. You can usually get around the ACPI reservation by specifying the boot option
acpi_enforce_resources=lax
, but you'll do so at your own risk.If the problem is an incorrect chip detection, the lm_sensors package in CentOS 6 might be too old for your hardware. You might want to grab the latest version of lm_sensors from https://github.com/groeck/lm-sensors and compile it on your system. The newer
sensors-detect
might give a more specific identification for your monitoring chip than just the generic "lm78". If a more specific driver module is available for your kernel, it might give better results.