Not really a question, but I finally done this thing today, should've done it long time ago.
Why is the GPU fan problematic; well it doesn't respond to manual control when "nouveau" is used.
Setting pwm1, pwm1_min, and pwm1_max to same value and pwm1_enable to "1" does nothing to fan1_input (it's allways the same).
It's just always stuck at ~2400 rpm, while if "nvidia" is used then fan is very silent at minimum rpm.
My solution consists of:
1. cutting off the GPU fan connector, and replacing it with a CPU fan connector from old CPU fan.
2. splicing wires Y>Y, R>R, B>B, standard practice.
3. connecting the spliced thing to motherboard fan_1 resource.
4. setting the acceptable fan curve in BIOS, and linking the fan_1 to PCIe sensor (also in BIOS).
5. done, GPU fan is now controlled by the motherboard and spins accordingly to temperature reading.
I'll keep watching the internal GPU reading with this thing:
Code:
GPUTEMP=${GPUTEMP-$(cat /sys/class/graphics/fb0/device/hwmon/hwmon2/temp1_input)}; echo "GPU Temperature sensor: $GPUTEMP"
But if the nvidia binary driver keeps it at minimum RPM all the time and it never overheats, it's not going to overheat now.
My main problem is the buzzing of the fan, which is very close, and this is why I did it. I'm aware it probably voids the GPU warranty.