[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAHCN7x+Mdp72oiuLb3dM+sOy7DfdVWoakxH92yxvmW3oSPNPLw@mail.gmail.com>
Date: Thu, 7 Nov 2024 11:33:01 -0600
From: Adam Ford <aford173@...il.com>
To: linux-phy@...ts.infradead.org
Cc: aford@...conembedded.com, sandor.yu@....com,
Frieder Schrempf <frieder.schrempf@...tron.de>, Vinod Koul <vkoul@...nel.org>,
Kishon Vijay Abraham I <kishon@...nel.org>,
Dominique Martinet <dominique.martinet@...ark-techno.com>,
Marco Felsch <m.felsch@...gutronix.de>,
Uwe Kleine-König <u.kleine-koenig@...libre.com>,
Lucas Stach <l.stach@...gutronix.de>, linux-kernel@...r.kernel.org
Subject: Re: [PATCH V2 1/3] phy: freescale: fsl-samsung-hdmi: Expand Integer
divider range
On Sat, Oct 26, 2024 at 8:20 AM Adam Ford <aford173@...il.com> wrote:
>
> 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@...il.com>
> Reviewed-by: Frieder Schrempf <frieder.schrempf@...tron.de>
> ---
> V2: Fix typo in comment
Vinod,
Is there any chance this series could also be applied for the next
release? I don't know what the cutoff deadline is, so if I'm too
late, I apologize.
adam
>
> diff --git a/drivers/phy/freescale/phy-fsl-samsung-hdmi.c b/drivers/phy/freescale/phy-fsl-samsung-hdmi.c
> index 2c8038864357..412c03b7dcd6 100644
> --- a/drivers/phy/freescale/phy-fsl-samsung-hdmi.c
> +++ b/drivers/phy/freescale/phy-fsl-samsung-hdmi.c
> @@ -406,16 +406,15 @@ static unsigned long fsl_samsung_hdmi_phy_find_pms(unsigned long fout, u8 *p, u1
> continue;
>
> /*
> - * TODO: Ref Manual doesn't state the range of _m
> - * so this should be further refined if possible.
> - * This range was set based on the original values
> - * in the lookup table
> + * The Ref manual doesn't explicitly state the range of M,
> + * but it does show it as an 8-bit value, so reject
> + * any value above 255.
> */
> tmp = (u64)fout * (_p * _s);
> do_div(tmp, 24 * MHZ);
> - _m = tmp;
> - if (_m < 0x30 || _m > 0x7b)
> + if (tmp > 255)
> continue;
> + _m = tmp;
>
> /*
> * Rev 2 of the Ref Manual states the
> --
> 2.45.2
>
Powered by blists - more mailing lists