diff options
author | Ingrid Gallardo <ingridg@codeaurora.org> | 2016-01-21 18:28:57 -0800 |
---|---|---|
committer | David Keitel <dkeitel@codeaurora.org> | 2016-03-23 21:17:42 -0700 |
commit | 8d4fa5ef9831a3bfbfb915f3c6b0c031f0477661 (patch) | |
tree | c0acbf0a97abdb5689d6a065bf49823c91d17d6f | |
parent | 64ee8f9ae5595c762660d81bd362cb42d3ddae7b (diff) |
msm: mdss: fix overflow when reading pixel clock
Fix pixel clock value overflow when reading from the
dtsi. This fixes the frame rate calculations for 120 fps
panels; wrong frame rates were leading to low bandwidth
and mdp clock calculations, increasing the transfer
times and reducing the fps.
Change-Id: Ia41aae433f89e8970318224562b00cf0cb56767b
Signed-off-by: Ingrid Gallardo <ingridg@codeaurora.org>
-rw-r--r-- | drivers/video/fbdev/msm/mdss_dsi_panel.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/video/fbdev/msm/mdss_dsi_panel.c b/drivers/video/fbdev/msm/mdss_dsi_panel.c index 442da43be4e0..930a5378009a 100644 --- a/drivers/video/fbdev/msm/mdss_dsi_panel.c +++ b/drivers/video/fbdev/msm/mdss_dsi_panel.c @@ -2022,9 +2022,11 @@ static int mdss_dsi_panel_timing_from_dt(struct device_node *np, rc = of_property_read_u32(np, "qcom,mdss-dsi-panel-framerate", &tmp); pt->timing.frame_rate = !rc ? tmp : DEFAULT_FRAME_RATE; rc = of_property_read_u64(np, "qcom,mdss-dsi-panel-clockrate", &tmp64); - if (rc == -EOVERFLOW) + if (rc == -EOVERFLOW) { + tmp64 = 0; rc = of_property_read_u32(np, "qcom,mdss-dsi-panel-clockrate", (u32 *)&tmp64); + } pt->timing.clk_rate = !rc ? tmp64 : 0; data = of_get_property(np, "qcom,mdss-dsi-panel-timings", &len); |