This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Check and set frequencies of Mali GPU (Kernel-driver, Linux, r14p0)

Greetings,

I'd like to know the different recommended ways to quickly check and, if possible, set the current frequency of the Mali GPU used by a Linux kernel patched with the Mali kernel-space drivers, once the system is booted of course. The reason is that I'd like to know if my installation is correct and if the GPU is running at its highest frequency when needed.

For reference, I'm running a linux 4.9-rc4 system patched with the latest Mali Kernel Driver, on a RK3288 board.

Best regards

Parents
  • Easiest way to check is to look in sysfs at the mali clock frequency ("clk_mali" specified in the device tree file), but make sure to check also the voltage regulator setting ("mali-supply" in device tree file), see it matches a setting from the dt "operating-points" bindings (I am assuming you have dt bindings).

    Harder to set from userspace, if you don't add some code to the driver. I did not look at r14, but in r13 you had to add the "transition" tables to specify what "when needed" means for each frequency step. Probably r14 is the same.

    Easiest (no extra code) for me was to use devfreq. It allowed me to use the "simple_ondemand" devfreq governor for the lowest frequency, and the "performance" devfreq governor for highest frequency (but of course this means I had only 2 frequencies I could change to )

Reply
  • Easiest way to check is to look in sysfs at the mali clock frequency ("clk_mali" specified in the device tree file), but make sure to check also the voltage regulator setting ("mali-supply" in device tree file), see it matches a setting from the dt "operating-points" bindings (I am assuming you have dt bindings).

    Harder to set from userspace, if you don't add some code to the driver. I did not look at r14, but in r13 you had to add the "transition" tables to specify what "when needed" means for each frequency step. Probably r14 is the same.

    Easiest (no extra code) for me was to use devfreq. It allowed me to use the "simple_ondemand" devfreq governor for the lowest frequency, and the "performance" devfreq governor for highest frequency (but of course this means I had only 2 frequencies I could change to )

Children