ipq40xx: switch to performance governor by default
authorKoen Vandeputte <koen.vandeputte@citymesh.com>
Tue, 12 Sep 2023 13:38:27 +0000 (15:38 +0200)
committerKoen Vandeputte <koen.vandeputte@citymesh.com>
Fri, 20 Oct 2023 13:11:41 +0000 (15:11 +0200)
Doing a simple ping to my device shows this:

64 bytes from icmp_seq=1 ttl=64 time=2.00 ms
64 bytes from icmp_seq=2 ttl=64 time=2.02 ms
64 bytes from icmp_seq=3 ttl=64 time=1.68 ms
64 bytes from icmp_seq=4 ttl=64 time=1.91 ms
64 bytes from icmp_seq=5 ttl=64 time=1.92 ms
64 bytes from icmp_seq=6 ttl=64 time=2.04 ms

Some users even report higher values on older kernels:

64 bytes from seq=0 ttl=64 time=0.612 ms
64 bytes from seq=1 ttl=64 time=2.852 ms
64 bytes from seq=2 ttl=64 time=2.719 ms
64 bytes from seq=3 ttl=64 time=2.741 ms
64 bytes from seq=4 ttl=64 time=2.808 ms

The problem is that the governor is set to Ondemand, which causes
the CPU to clock all the way down to 48MHz in some cases.

Switching to performance governor:

64 bytes from icmp_seq=1 ttl=64 time=0.528 ms
64 bytes from icmp_seq=2 ttl=64 time=0.561 ms
64 bytes from icmp_seq=3 ttl=64 time=0.633 ms
64 bytes from icmp_seq=4 ttl=64 time=0.526 ms

In theory, using the Performance governor should increase power draw,
but it looks like it really does not matter for this soc.

Using a calibrated precision DC power supply (cpu idle):

24.00V * 0.134A = 3.216 Watts
48.00V * 0.096A = 4.608 Watts

24.00V * 0.135A = 3.240 Watts
48.00V * 0.096A = 4.608 Watts

Let's simply switch to the Performance governor by default
to fix the general jittery behaviour on devices using this soc.

Tested on: MikroTik wAP ac

Fixes: #13649
Reviewed-by: Robert Marko <robimarko@gmail.com>
Reviewed-by: Thibaut VARĂˆNE <hacks@slashdirt.org>
Signed-off-by: Koen Vandeputte <koen.vandeputte@citymesh.com>

index 2619f3f87c2f8dd9217e9362f40e59eb840e213a..e84823aacd326b455f583183fbd1711225344968 100644 (file)
@@ -74,8 +74,8 @@ CONFIG_CPU_COPY_V6=y