summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIngrid Gallardo <ingridg@codeaurora.org>2016-01-21 18:28:57 -0800
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-23 21:17:42 -0700
commit8d4fa5ef9831a3bfbfb915f3c6b0c031f0477661 (patch)
treec0acbf0a97abdb5689d6a065bf49823c91d17d6f
parent64ee8f9ae5595c762660d81bd362cb42d3ddae7b (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.c4
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);