We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
I've lost fan control with this module, upon further research I've been able to restore partial functionality, here is what is going on:
% sudo insmod asus_fan.ko; dmesg | tail
asus-fan (init) - dmi sys info: 'ASUSTeK COMPUTER INC.' asus-fan (init) - dmi product: 'UX32VD' asus-fan (init) - fan-id: 1 | failed to get rpm asus-fan (init) - fan-id: 2 | success getting rpm asus-fan (init) - temp-id: 1 | success getting temp asus-fan (init) - created hwmon device: hwmon12 asus-fan (init) - finished init, found 2 fan(s) to control
% ls /sys/class/hwmon/hwmon12 device name power subsystem uevent
device name power subsystem uevent
:(
% sudo rmmod asus-fan
I then haphazardly modified asus-fan.c just out of desesperation, such as:
diff -c3 asus_fan.modified.c asus_fan.c *** asus_fan.modified.c --- asus_fan.c *************** *** 918,929 **** size_t temp = AE_OK; // USE this for idx in hwmon_attrs size_t idx = 0; // try to get RPM for first fan ! // rpm = __fan_rpm(0); ! //if (rpm == -1) { ! // asus_data.has_fan = false; ! // err_msg("init", "fan-id: 1 | failed to get rpm"); ! //} else ! { asus_data.has_fan = true; info_msg("init", "fan-id: 1 | success getting rpm"); hwmon_attrs[0] = &dev_attr_pwm1.attr; --- 918,928 ---- size_t temp = AE_OK; // USE this for idx in hwmon_attrs size_t idx = 0; // try to get RPM for first fan ! rpm = __fan_rpm(0); ! if (rpm == -1) { ! asus_data.has_fan = false; ! err_msg("init", "fan-id: 1 | failed to get rpm"); ! } else { asus_data.has_fan = true; info_msg("init", "fan-id: 1 | success getting rpm"); hwmon_attrs[0] = &dev_attr_pwm1.attr; *************** *** 935,945 **** hwmon_attrs[15] = &dev_attr_fan1_speed.attr; } // try to get RPM for second fan ! /* rpm = __fan_rpm(1); if (rpm == -1) { err_msg("init", "fan-id: 2 | failed to get rpm"); asus_data.has_gfx_fan = false; ! } else */{ info_msg("init", "fan-id: 2 | success getting rpm"); asus_data.has_gfx_fan = true; hwmon_attrs[6] = &dev_attr_pwm2.attr; --- 934,944 ---- hwmon_attrs[15] = &dev_attr_fan1_speed.attr; } // try to get RPM for second fan ! rpm = __fan_rpm(1); if (rpm == -1) { err_msg("init", "fan-id: 2 | failed to get rpm"); asus_data.has_gfx_fan = false; ! } else { info_msg("init", "fan-id: 2 | success getting rpm"); asus_data.has_gfx_fan = true; hwmon_attrs[6] = &dev_attr_pwm2.attr;
asus-fan (init) - dmi sys info: 'ASUSTeK COMPUTER INC.' asus-fan (init) - dmi product: 'UX32VD' asus-fan (init) - fan-id: 1 | success getting rpm asus-fan (init) - fan-id: 2 | success getting rpm asus-fan (init) - temp-id: 1 | success getting temp asus-fan (init) - created hwmon device: hwmon13 asus-fan (init) - finished init, found 2 fan(s) to control
% ls /sys/class/hwmon/hwmon13
device fan1_label fan1_min fan1_speed fan2_label fan2_min fan2_speed power pwm1_enable pwm2_enable temp1_crit temp1_label fan1_input fan1_max fan1_mode fan2_input fan2_max fan2_mode name pwm1 pwm2 subsystem temp1_input uevent
What have I done? No idea! I guess that dropping some "checks" allowed the loading to sucessfully go through!
Now why
cat /sys/class/hwmon/hwmon13/temp1_input | hexdump -C 00000000 00 00 00 |...| 00000003 echo '\_SB.PCI0.LPCB.EC0.TH1R' > /proc/acpi/call && cat /proc/acpi/call; echo -e "\n" 0x2ealled
why temp1_input returns nothing?, the nvidia card is enabled!!
optirun nvidia-smi -q -d temperature ==============NVSMI LOG============== Timestamp : Mon Aug 13 15:44:22 2018 Driver Version : 390.77 Attached GPUs : 1 GPU 00000000:01:00.0 Temperature GPU Current Temp : 46 C GPU Shutdown Temp : N/A GPU Slowdown Temp : N/A GPU Max Operating Temp : N/A Memory Current Temp : N/A Memory Max Operating Temp : N/A
0x2e = 46 ºC !!!
This "null" return of temp1_input makes psutil (and s-tui) fail, but @giampaolo has already commited a fix to "tolerate" this behaviour
The text was updated successfully, but these errors were encountered:
seems fixed?! pls re-open if not...
Sorry, something went wrong.
No branches or pull requests
I've lost fan control with this module, upon further research I've been able to restore partial functionality, here is what is going on:
% sudo insmod asus_fan.ko; dmesg | tail
% ls /sys/class/hwmon/hwmon12
device name power subsystem uevent
:(
% sudo rmmod asus-fan
I then haphazardly modified asus-fan.c just out of desesperation, such as:
% sudo insmod asus_fan.ko; dmesg | tail
% ls /sys/class/hwmon/hwmon13
What have I done? No idea! I guess that dropping some "checks" allowed the loading to sucessfully go through!
Now why
why temp1_input returns nothing?, the nvidia card is enabled!!
0x2e = 46 ºC !!!
This "null" return of temp1_input makes psutil (and s-tui) fail, but @giampaolo has already commited a fix to "tolerate" this behaviour
The text was updated successfully, but these errors were encountered: