[PATCH v4 08/12] phy: rockchip: samsung-hdptx: Provide config params validation support
Cristian Ciocaltea
cristian.ciocaltea at collabora.com
Tue Mar 4 04:20:20 PST 2025
On 3/4/25 10:18 AM, Maxime Ripard wrote:
> On Tue, Mar 04, 2025 at 03:44:07AM +0200, Cristian Ciocaltea wrote:
>> Implement the phy_ops.validate() callback to allow checking the PHY
>> configuration parameters without actually applying them.
>>
>> Signed-off-by: Cristian Ciocaltea <cristian.ciocaltea at collabora.com>
>> ---
>> drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c | 23 +++++++++++++++++++++++
>> 1 file changed, 23 insertions(+)
>>
>> diff --git a/drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c b/drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c
>> index 7e1d1c10758249aa5bbddbdaae0108bba04f30df..47db1395051f5d900197871694bab90ca4d6e38e 100644
>> --- a/drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c
>> +++ b/drivers/phy/rockchip/phy-rockchip-samsung-hdptx.c
>> @@ -1482,6 +1482,17 @@ static int rk_hdptx_phy_verify_hdmi_config(struct rk_hdptx_phy *hdptx,
>> if (!hdmi->tmds_char_rate || hdmi->tmds_char_rate > HDMI20_MAX_RATE)
>> return -EINVAL;
>>
>> + u32 bit_rate = hdmi->tmds_char_rate / 100;
>> + int i;
>> +
>> + for (i = 0; i < ARRAY_SIZE(ropll_tmds_cfg); i++)
>> + if (bit_rate == ropll_tmds_cfg[i].bit_rate)
>> + break;
>> +
>> + if (i == ARRAY_SIZE(ropll_tmds_cfg) &&
>> + !rk_hdptx_phy_clk_pll_calc(bit_rate, NULL))
>> + return -EINVAL;
>
> What are you calling bit_rate here? If anything, I'd expect the bit_rate
> to be a multiple of the char rate, not a divisor.
This is just an unfortunate naming of the search key in struct
ropll_config, inherited from downstream, given in hHz rather than Hz.
I've already renamed it in the last patch, while getting rid of those
annoying unit conversions.
More information about the Linux-rockchip
mailing list