Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 531efb38 authored by Peter Ujfalusi's avatar Peter Ujfalusi Committed by Tomi Valkeinen
Browse files

drm/omap: omap_display_timings: Use display_flags for double_pixel mode



In preparation to move the stack to use the generic videmode struct for
display timing information use display_flags for double_pixel mode.

Signed-off-by: default avatarPeter Ujfalusi <peter.ujfalusi@ti.com>
Signed-off-by: default avatarTomi Valkeinen <tomi.valkeinen@ti.com>
parent 3fa3ab4a
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -3270,7 +3270,8 @@ void dispc_mgr_set_timings(enum omap_channel channel,
			t.vactive /= 2;

		if (dispc.feat->supports_double_pixel)
			REG_FLD_MOD(DISPC_CONTROL, t.double_pixel ? 1 : 0,
			REG_FLD_MOD(DISPC_CONTROL,
				    !!(t.flags & DISPLAY_FLAGS_DOUBLECLK),
				    19, 17);
	}

@@ -4206,7 +4207,6 @@ static const struct dispc_errata_i734_data {
		.vsync_len = 1, .vfront_porch = 1, .vback_porch = 1,
		.data_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
		.sync_pclk_edge = OMAPDSS_DRIVE_SIG_RISING_EDGE,
		.double_pixel = false,

		.flags = DISPLAY_FLAGS_HSYNC_LOW | DISPLAY_FLAGS_VSYNC_LOW |
			 DISPLAY_FLAGS_DE_HIGH,
+1 −1
Original line number Diff line number Diff line
@@ -175,7 +175,7 @@ static int hdmi_power_on_full(struct omap_dss_device *dssdev)
	       p->vactive);

	pc = p->pixelclock;
	if (p->double_pixel)
	if (p->flags & DISPLAY_FLAGS_DOUBLECLK)
		pc *= 2;

	/* DSS_HDMI_TCLK is bitclk / 10 */
+1 −1
Original line number Diff line number Diff line
@@ -187,7 +187,7 @@ static int hdmi_power_on_full(struct omap_dss_device *dssdev)
	       p->vactive);

	pc = p->pixelclock;
	if (p->double_pixel)
	if (p->flags & DISPLAY_FLAGS_DOUBLECLK)
		pc *= 2;

	/* DSS_HDMI_TCLK is bitclk / 10 */
+2 −2
Original line number Diff line number Diff line
@@ -315,7 +315,7 @@ static void hdmi_core_init(struct hdmi_core_vid_config *video_cfg,
		video_cfg->v_fc_config.timings.vback_porch /= 2;
	}

	if (cfg->timings.double_pixel) {
	if (cfg->timings.flags & DISPLAY_FLAGS_DOUBLECLK) {
		video_cfg->v_fc_config.timings.hactive *= 2;
		video_cfg->hblank *= 2;
		video_cfg->v_fc_config.timings.hfront_porch *= 2;
@@ -382,7 +382,7 @@ static void hdmi_core_video_config(struct hdmi_core_data *core,
	REG_FLD_MOD(base, HDMI_CORE_FC_INVIDCONF,
		    cfg->v_fc_config.hdmi_dvi_mode, 3, 3);

	if (ovt->double_pixel)
	if (ovt->flags & DISPLAY_FLAGS_DOUBLECLK)
		REG_FLD_MOD(base, HDMI_CORE_FC_PRCONF, 2, 7, 4);
	else
		REG_FLD_MOD(base, HDMI_CORE_FC_PRCONF, 1, 7, 4);
+1 −2
Original line number Diff line number Diff line
@@ -208,7 +208,6 @@ void hdmi_wp_init_vid_fmt_timings(struct hdmi_video_format *video_fmt,
	timings->vfront_porch = param->timings.vfront_porch;
	timings->vsync_len = param->timings.vsync_len;

	timings->double_pixel = param->timings.double_pixel;
	timings->flags = param->timings.flags;

	if (param->timings.flags & DISPLAY_FLAGS_INTERLACED) {
@@ -218,7 +217,7 @@ void hdmi_wp_init_vid_fmt_timings(struct hdmi_video_format *video_fmt,
		timings->vsync_len /= 2;
	}

	if (param->timings.double_pixel) {
	if (param->timings.flags & DISPLAY_FLAGS_DOUBLECLK) {
		video_fmt->x_res *= 2;
		timings->hfront_porch *= 2;
		timings->hsync_len *= 2;
Loading