clk: qcom: clk-rcg2: Update logic to calculate D value for RCG
authorTaniya Das <tdas@codeaurora.org>
Sun, 27 Feb 2022 17:55:35 +0000 (23:25 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 8 Apr 2022 12:23:47 +0000 (14:23 +0200)
commit34dca60982e93e69ae442aa2d36ce61c9a3bb563
treeda84d6d33c30393a369c6615178081f17873c448
parent7a778371f9f2d8c8d6301b4207188a0ef9d9eb16
clk: qcom: clk-rcg2: Update logic to calculate D value for RCG

[ Upstream commit 58922910add18583d5273c2edcdb9fd7bf4eca02 ]

The display pixel clock has a requirement on certain newer platforms to
support M/N as (2/3) and the final D value calculated results in
underflow errors.
As the current implementation does not check for D value is within
the accepted range for a given M & N value. Update the logic to
calculate the final D value based on the range.

Fixes: 99cbd064b059f ("clk: qcom: Support display RCG clocks")
Signed-off-by: Taniya Das <tdas@codeaurora.org>
Signed-off-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Link: https://lore.kernel.org/r/20220227175536.3131-1-tdas@codeaurora.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/clk/qcom/clk-rcg2.c