I was using cpufreq to configure ZCU104 to the frequency of 300Mhz, 400Mhz, 600Mhz, and 1200Mhz. Is it possible to change the kernel or the device tree to somehow allow me to change to frequency other than the mentioned frequencies?
does linux not automatically configure the clock frequency according to processor load?
If you want to do such things, you’ll need to go down to your PLL registers and manually edit them.
I don’t know what this will do with your peripherals like usb, timers, RTC…
Can I change the PLL register in software or do I do it in Vivado?
technically yes. it’s done in SW anyway, because the handling of the clocks is contained within linux itself.
Depending on how the linux interacts with the clocks and how much control you get, you can write to the file or register that contains the info for the clocks.
I suggest you search posts asking this for the raspberry pi, after all the PS is just a microprocessor with arm architecture. if RPI can do it, chances are high that it will be the same procedure for pynq.
best of luck, if you’d be so kind to link the posts that helped you overcome this problem, that would be really nice!