aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/imx
diff options
context:
space:
mode:
authorSteve Longerbeam <slongerbeam@gmail.com>2014-12-18 21:00:24 -0500
committerPhilipp Zabel <p.zabel@pengutronix.de>2015-01-07 13:15:03 -0500
commiteb10d6355532def3a74aaabd115e2373cca70b9d (patch)
tree5f45725fe9b3a883d209977683f2db6600db06cf /drivers/gpu/drm/imx
parent0c460a55dd97b639202d6152979669c8951522cd (diff)
imx-drm: encoder prepare/mode_set must use adjusted mode
The encoder ->prepare() and ->mode_set() methods need to use the hw adjusted mode, not the original mode. Signed-off-by: Steve Longerbeam <steve_longerbeam@mentor.com> Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Diffstat (limited to 'drivers/gpu/drm/imx')
-rw-r--r--drivers/gpu/drm/imx/imx-ldb.c6
-rw-r--r--drivers/gpu/drm/imx/imx-tve.c4
-rw-r--r--drivers/gpu/drm/imx/parallel-display.c4
3 files changed, 7 insertions, 7 deletions
diff --git a/drivers/gpu/drm/imx/imx-ldb.c b/drivers/gpu/drm/imx/imx-ldb.c
index 4ff62a517c75..1b86aac0b341 100644
--- a/drivers/gpu/drm/imx/imx-ldb.c
+++ b/drivers/gpu/drm/imx/imx-ldb.c
@@ -163,7 +163,7 @@ static void imx_ldb_encoder_prepare(struct drm_encoder *encoder)
163{ 163{
164 struct imx_ldb_channel *imx_ldb_ch = enc_to_imx_ldb_ch(encoder); 164 struct imx_ldb_channel *imx_ldb_ch = enc_to_imx_ldb_ch(encoder);
165 struct imx_ldb *ldb = imx_ldb_ch->ldb; 165 struct imx_ldb *ldb = imx_ldb_ch->ldb;
166 struct drm_display_mode *mode = &encoder->crtc->mode; 166 struct drm_display_mode *mode = &encoder->crtc->hwmode;
167 u32 pixel_fmt; 167 u32 pixel_fmt;
168 unsigned long serial_clk; 168 unsigned long serial_clk;
169 unsigned long di_clk = mode->clock * 1000; 169 unsigned long di_clk = mode->clock * 1000;
@@ -241,8 +241,8 @@ static void imx_ldb_encoder_commit(struct drm_encoder *encoder)
241} 241}
242 242
243static void imx_ldb_encoder_mode_set(struct drm_encoder *encoder, 243static void imx_ldb_encoder_mode_set(struct drm_encoder *encoder,
244 struct drm_display_mode *mode, 244 struct drm_display_mode *orig_mode,
245 struct drm_display_mode *adjusted_mode) 245 struct drm_display_mode *mode)
246{ 246{
247 struct imx_ldb_channel *imx_ldb_ch = enc_to_imx_ldb_ch(encoder); 247 struct imx_ldb_channel *imx_ldb_ch = enc_to_imx_ldb_ch(encoder);
248 struct imx_ldb *ldb = imx_ldb_ch->ldb; 248 struct imx_ldb *ldb = imx_ldb_ch->ldb;
diff --git a/drivers/gpu/drm/imx/imx-tve.c b/drivers/gpu/drm/imx/imx-tve.c
index a729f4f7074c..b63601d04601 100644
--- a/drivers/gpu/drm/imx/imx-tve.c
+++ b/drivers/gpu/drm/imx/imx-tve.c
@@ -307,8 +307,8 @@ static void imx_tve_encoder_prepare(struct drm_encoder *encoder)
307} 307}
308 308
309static void imx_tve_encoder_mode_set(struct drm_encoder *encoder, 309static void imx_tve_encoder_mode_set(struct drm_encoder *encoder,
310 struct drm_display_mode *mode, 310 struct drm_display_mode *orig_mode,
311 struct drm_display_mode *adjusted_mode) 311 struct drm_display_mode *mode)
312{ 312{
313 struct imx_tve *tve = enc_to_tve(encoder); 313 struct imx_tve *tve = enc_to_tve(encoder);
314 unsigned long rounded_rate; 314 unsigned long rounded_rate;
diff --git a/drivers/gpu/drm/imx/parallel-display.c b/drivers/gpu/drm/imx/parallel-display.c
index 88cf7ca1e886..5e83e007080f 100644
--- a/drivers/gpu/drm/imx/parallel-display.c
+++ b/drivers/gpu/drm/imx/parallel-display.c
@@ -130,8 +130,8 @@ static void imx_pd_encoder_commit(struct drm_encoder *encoder)
130} 130}
131 131
132static void imx_pd_encoder_mode_set(struct drm_encoder *encoder, 132static void imx_pd_encoder_mode_set(struct drm_encoder *encoder,
133 struct drm_display_mode *mode, 133 struct drm_display_mode *orig_mode,
134 struct drm_display_mode *adjusted_mode) 134 struct drm_display_mode *mode)
135{ 135{
136} 136}
137 137