[PATCH V4 2/7] clk: bcm2835: clamp clock divider to highest integer only
eric at anholt.net
Mon Feb 1 15:19:57 PST 2016
kernel at martin.sperl.org writes:
> From: Martin Sperl <kernel at martin.sperl.org>
> The clock divider calculation right now clamps the
> divider to the highest possible fractional divider.
> So typically (BIT(div_int_bits) - 1) + 4095 / 4096.
> As the fractional clock divider is alterating between
> (Fosc / div_int) and (Fosc / (div_int + 1))
> the divider will overflow for the (div_int + 1) case.
> As with the "underflow" case we have seen for (div < 2),
> we can assume that the same applies on the upper limit
> as well.
> So this patch will instead clamp to the divider to the
> max of (BIT(div_int_bits) - 1)
Looks like this restriction might be necessary, though it's not quite
spelled out in the docs.
This also needs to be conditional on it being a MASH clock, and the
limit on the divider changes in the same way based on the mash number as
for the minimum.
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 818 bytes
Desc: not available
More information about the linux-rpi-kernel