Hello,

Hardware is "ASROCK H81M-HDS/H81M-HDS, BIOS 25.09-224-ga73db6d45112 10/24/2025" without mrc.bin.

System Debian Trixie Kernel 6.12.63+deb13-amd64.


A few days ago, I was on IRC.

Someone (sorry, I forgot the name) helped me a lot by advising me to try the nct6776 kernel module.

Which obviously did not load automatically for whatever reason.


To my surprise, I discovered that I could now read the fan speed in addition to the temperatures with coretemp module.


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

nct6776-isa-0290
Adapter: ISA adapter
Vcore:         880.00 mV (min =  +0.00 V, max =  +1.74 V)
in1:             1.83 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
AVCC:            3.38 V  (min =  +2.98 V, max =  +3.63 V)
+3.3V:           3.36 V  (min =  +2.98 V, max =  +3.63 V)
in4:           984.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
in5:             1.66 V  (min =  +0.00 V, max =  +0.00 V)  ALARM
in6:           872.00 mV (min =  +0.00 V, max =  +0.00 V)  ALARM
3VSB:            3.46 V  (min =  +2.98 V, max =  +3.63 V)
Vbat:            3.28 V  (min =  +2.70 V, max =  +3.63 V)
fan1:             0 RPM  (min =    0 RPM)
fan2:          1111 RPM  (min =    0 RPM)
fan3:             0 RPM  (min =    0 RPM)
fan4:             0 RPM  (min =    0 RPM)
fan5:             0 RPM  (min =    0 RPM)
SYSTIN:         +33.0°C  (high =  +0.0°C, hyst =  +0.0°C)  ALARM sensor = thermistor CPUTIN:        +123.5°C  (high = +80.0°C, hyst = +75.0°C)  ALARM sensor = CPU diode AUXTIN:         +39.5°C  (high = +80.0°C, hyst = +75.0°C)  sensor = thermistor
PCH_CHIP_TEMP:   +0.0°C
PCH_CPU_TEMP:    +0.0°C
PCH_MCH_TEMP:    +0.0°C
pwm1:               64%  (mode = dc)  MANUAL CONTROL
pwm2:               64%  (mode = pwm)  MANUAL CONTROL
pwm3:              128%  (mode = pwm)
cpu0_vid:      +0.000 V
intrusion0:    ALARM
intrusion1:    ALARM
beep_enable:   disabled

coretemp-isa-0000
Adapter: ISA adapter
Package id 0:  +30.0°C  (high = +80.0°C, crit = +100.0°C)
Core 0:        +28.0°C  (high = +80.0°C, crit = +100.0°C)
Core 1:        +25.0°C  (high = +80.0°C, crit = +100.0°C)
Core 2:        +26.0°C  (high = +80.0°C, crit = +100.0°C)
Core 3:        +26.0°C  (high = +80.0°C, crit = +100.0°C)

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<


The temperature is pleasant, and even under load, the processor does not overheat, so I don't have that problem.

The problem is that the CPU Fan could be quieter when idling.


When running "pwmconfig" as root the CPU Fan go full speed.


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Found the following devices:
   hwmon0 is nct6776
   hwmon1 is coretemp

Found the following PWM controls:
   hwmon0/pwm1           current value: 127
   hwmon0/pwm2           current value: 127
   hwmon0/pwm3           current value: 255

Giving the fans some time to reach full speed...
Found the following fan sensors:
   hwmon0/fan1_input     current speed: 0 ... skipping!
   hwmon0/fan2_input     current speed: 2008 RPM
   hwmon0/fan3_input     current speed: 0 ... skipping!
   hwmon0/fan4_input     current speed: 0 ... skipping!
   hwmon0/fan5_input     current speed: 0 ... skipping!

Warning!!! This program will stop your fans, one at a time,
for approximately 5 seconds each!!!
This may cause your processor temperature to rise!!!
If you do not want to do this hit control-C now!!!
Hit return to continue:

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<



After press return the CPU fan stopped as it should.



>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

Testing pwm control hwmon0/pwm1 ...
Manual control mode not supported, skipping.
Testing pwm control hwmon0/pwm2 ...
  hwmon0/fan2_input ... speed was 2008 now 529
    It appears that fan hwmon0/fan2_input
    is controlled by pwm hwmon0/pwm2
Would you like to generate a detailed correlation (y)?

Press again return and the CPU Fan slow down like it should.

    PWM 255 FAN 2017
    PWM 240 FAN 1942
    PWM 225 FAN 1829
    PWM 210 FAN 1724
    PWM 195 FAN 1638
    PWM 180 FAN 1525
    PWM 165 FAN 1418
    PWM 150 FAN 1313
    PWM 135 FAN 1215
    PWM 120 FAN 1086
    PWM 105 FAN 958
    PWM 90 FAN 813
    PWM 75 FAN 701
    PWM 60 FAN 568
    PWM 45 FAN 518
    PWM 30 FAN 510
    PWM 28 FAN 512
    PWM 26 FAN 505
    PWM 24 FAN 505
    PWM 22 FAN 506
    PWM 20 FAN 506
    PWM 18 FAN 513
    PWM 16 FAN 510
    PWM 14 FAN 512
    PWM 12 FAN 506
    PWM 10 FAN 506
    PWM 8 FAN 506
    PWM 6 FAN 505
    PWM 4 FAN 513
    PWM 2 FAN 510
    PWM 0 FAN 513


Testing pwm control hwmon0/pwm3 ...
  hwmon0/fan2_input ... speed was 2008 now 2017
    no correlation

No correlations were detected.

Select fan output to configure, or other action:
1) hwmon0/pwm2        3) Just quit           5) Show configuration
2) Change INTERVAL     4) Save and quit
select (1-n): 3

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<



I saved the config 4) but it contains just empty values.



>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

INTERVAL=10
DEVPATH=
DEVNAME=
FCTEMPS=
FCFANS=
MINTEMP=
MAXTEMP=
MINSTART=
MINSTOP=

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<


Then i just tried to create a custom fancontrol config inspired by a Gentoo forum post [1]


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

INTERVAL=10
DEVPATH=hwmon0=devices/platform/nct6775.656
DEVNAME=hwmon0=nct6798
FCTEMPS=hwmon0/pwm3=hwmon0/temp1_input
FCFANS= hwmon0/pwm3=hwmon0/fan2_input
MINTEMP=hwmon0/pwm3=20
MAXTEMP=hwmon0/pwm3=60
MINSTART=hwmon0/pwm3=150
MINSTOP=hwmon0/pwm3=100

<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<


When I run fancontrol as root, I get the warning:

"Device name of hwmon0 has changed"
"Configuration appears to be outdated, please run pwmconfig again."


I'm run fancontrol just after configure /etc/fancontrol and don't reboot so there can't be a change in device names.


Did I configure fancontrol incorrectly?

Is the problem with coreboot?

The doc page say [2] "There is no automatic, OS-independent fan control. This is because the Super I/O hardware monitor can only obtain valid CPU temperature readings from the PECI agent, but the required driver doesn’t exist in coreboot. The |coretemp| driver can still be used for accurate CPU temperature readings from an OS."


Did this changed with the nct6776 kernel driver?

Or am I trying to do something that is currently impossible without changing the coreboot code?


Best regards,

mgeins


[1] https://forums.gentoo.org/viewtopic-t-1164535-start-0.html

[2] https://doc.coreboot.org/mainboard/asrock/h81m-hds.html
_______________________________________________
coreboot mailing list -- [email protected]
To unsubscribe send an email to [email protected]

Reply via email to