Quoting Maxime Ripard (2020-04-24 08:34:01)
The RaspberryPi4 firmware actually exposes more clocks than are currently handled by the driver and we will need to change some of them directly based on the pixel rate for the display related clocks, or the load for the GPU.
This rate change can have a number of side-effects, including adjusting the various PLL voltages or the PLL parents. The firmware will also update those clocks by itself for example if the SoC runs too hot.
In order to make Linux play as nice as possible with those constraints, it makes sense to rely on the firmware clocks as much as possible.
Fortunately,t he firmware has an interface to discover the clocks it
Fortunately, the
exposes.
Let's use it to discover, register the clocks in the clocks framework and then expose them through the device tree for consumers to use them.
Cc: Michael Turquette mturquette@baylibre.com Cc: Stephen Boyd sboyd@kernel.org Cc: linux-clk@vger.kernel.org Signed-off-by: Maxime Ripard maxime@cerno.tech
Reviewed-by: Stephen Boyd sboyd@kernel.org