Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

phy: freescale: fsl-samsung-hdmi: Expand Integer divider range

The Integer divder uses values of P,M, and S to determine the PLL
rate. Currently, the range of M was set based on a series of
table entries where the range was limited. Since the ref manual
shows it is 8-bit wide, expand the range to be up to 255.

Signed-off-by: Adam Ford <aford173@gmail.com>
Reviewed-by: Frieder Schrempf <frieder.schrempf@kontron.de>
Link: https://lore.kernel.org/r/20241026132014.73050-1-aford173@gmail.com
Signed-off-by: Vinod Koul <vkoul@kernel.org>

authored by

Adam Ford and committed by
Vinod Koul
2a9868d6 ba8ad7ee

+5 -6
+5 -6
drivers/phy/freescale/phy-fsl-samsung-hdmi.c
··· 406 406 continue; 407 407 408 408 /* 409 - * TODO: Ref Manual doesn't state the range of _m 410 - * so this should be further refined if possible. 411 - * This range was set based on the original values 412 - * in the lookup table 409 + * The Ref manual doesn't explicitly state the range of M, 410 + * but it does show it as an 8-bit value, so reject 411 + * any value above 255. 413 412 */ 414 413 tmp = (u64)fout * (_p * _s); 415 414 do_div(tmp, 24 * MHZ); 416 - _m = tmp; 417 - if (_m < 0x30 || _m > 0x7b) 415 + if (tmp > 255) 418 416 continue; 417 + _m = tmp; 419 418 420 419 /* 421 420 * Rev 2 of the Ref Manual states the