Hello Billy, On Fri, Jul 09, 2021 at 05:40:45AM +0000, Billy Tsai wrote: > On 2021/7/2, 10:32 PM, "Uwe Kleine-König" wrote: > > The multiplication can be up to: > > > 100000000 * (1 << 31) * (31 + 1) * (255 + 1) > > > right? This needs 71 bits and so might overflow a u64. > > No, the multiplication can be up to: > > Max(div_h) = 15 > Max(div_l) = 255 > Max(clk_period) = 255 > 1000000000 * (1 << 15) * (255 + 1) * (255 + 1) < 2^64 - 1 > it doesn't overflow a u64. Ah, you're right. Please note this in a comment (not that you were right, but that it doesn't overflow :-) Best regards Uwe -- Pengutronix e.K. | Uwe Kleine-König | Industrial Linux Solutions | https://www.pengutronix.de/ |