[PATCH 1/2] clk: bcm: Support rate change propagation on bcm2835 clocks
eric at anholt.net
Fri Dec 2 11:01:09 PST 2016
Boris Brezillon <boris.brezillon at free-electrons.com> writes:
> Some peripheral clocks, like the VEC (Video EnCoder) clock need to be set
> to a precise rate (in our case 108MHz). With the current implementation,
> where peripheral clocks are not allowed to forward rate change requests
> to their parents, it is impossible to match this requirement unless the
> bootloader has configured things correctly, or a specific rate has been
> assigned through the DT (with the assigned-clk-rates property).
> Add a new field to struct bcm2835_clock_data to specify which parent
> clocks accept rate change propagation, and support set rate propagation
> in bcm2835_clock_determine_rate().
> Signed-off-by: Boris Brezillon <boris.brezillon at free-electrons.com>
A possible simplification would be to limit VEC to only PLLH_AUX, since
that was how the HW designers intended it to be used. Then you could
just have SET_RATE_PARENT flag, rather than the bitfield.
Still, this seems to be correct and fixes the bug. Both patches are:
Reviewed-by: Eric Anholt <eric at anholt.net>
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 832 bytes
Desc: not available
More information about the linux-rpi-kernel