Re: [PATCHv2 8/8] OMAP: DSS2: HDMI: improve hdmi output enable

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 2011-09-12 at 16:53 +0530, Archit Taneja wrote:
> On Monday 12 September 2011 04:36 PM, Valkeinen, Tomi wrote:
> > On Mon, 2011-09-12 at 16:31 +0530, Archit Taneja wrote:
> >> On Monday 12 September 2011 02:42 PM, Valkeinen, Tomi wrote:
> >>> Enabling HDMI output often causes sync lost errors, and almost always
> >>> causes timeout errors being printed from dispc_mgr_enable_digit_out().
> >>>
> >>> The sync lost problem seems to go lessen greatly if we first enable the
> >>> HDMI output, and only then enable the DISPC output. However, as this is
> >>> only based on observations, the fix may not be perfect as the problem
> >>> may lie somewhere else. Nevertheless, HDMI works better with this patch.
> >>>
> >>> This will also fix the dispc's dispc_mgr_enable_digit_out(), as the code
> >>> waits for two VSYNCs after enabling the output. If the HDMI output is
> >>> disabled (as it was previously), there are no VSYNCs and
> >>> dispc_mgr_enable_digit_out() will print timeout errors.
> >>>
> >>> Cc: Mythri P K<mythripk@xxxxxx>
> >>> Signed-off-by: Tomi Valkeinen<tomi.valkeinen@xxxxxx>
> >>> ---
> >>>    drivers/video/omap2/dss/hdmi.c |    4 ++--
> >>>    1 files changed, 2 insertions(+), 2 deletions(-)
> >>>
> >>> diff --git a/drivers/video/omap2/dss/hdmi.c b/drivers/video/omap2/dss/hdmi.c
> >>> index 4752137..06a78b2 100644
> >>> --- a/drivers/video/omap2/dss/hdmi.c
> >>> +++ b/drivers/video/omap2/dss/hdmi.c
> >>> @@ -529,10 +529,10 @@ static int hdmi_power_on(struct omap_dss_device *dssdev)
> >>>    	dispc_set_digit_size(dssdev->panel.timings.x_res,
> >>>    			dssdev->panel.timings.y_res);
> >>>
> >>> -	dispc_mgr_enable(OMAP_DSS_CHANNEL_DIGIT, 1);
> >>> -
> >>>    	hdmi.ip_data.ops->video_enable(&hdmi.ip_data, 1);
> >>>
> >>> +	dispc_mgr_enable(OMAP_DSS_CHANNEL_DIGIT, 1);
> >>> +
> >>
> >> What content would HDMI push out till the time DIGIT is enabled? It
> >> might be interesting to put some milliseconds of delay here and see what
> >> happens.
> >
> > I guess HDMI works independently of DISPC. So HDMI will output whatever
> > is in the video port from DISPC to HDMI, regardless of what DISPC does.
> > My guess is it's either random bits or, more probably, zeroes.
> 
> Okay. I thought HDMI block may probe the video port's DE line or 
> something to check if it is pushing out valid content. However, with 
> this patch, we are more aligned with what we do in power_off(), i.e 
> first disable the manager and then disable HDMI.

Yep. But as I said in the desc, this is just based on my observations.
If this is the wrong way to enable tv-output, we should check whether
venc is also working the wrong way.

 Tomi


--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux