diff mbox

Test the first mode if there is no preferred mode.

Message ID 1306877087-6952-1-git-send-email-hai.lan@intel.com (mailing list archive)
State New, archived
Headers show

Commit Message

hai.lan@intel.com May 31, 2011, 9:24 p.m. UTC
For a TV device, there  might be no preferred mode. In this case,
we can test the first mode.
---
 tests/testdisplay.c |   13 ++++++++++---
 1 files changed, 10 insertions(+), 3 deletions(-)

Comments

hai.lan@intel.com June 10, 2011, 6:27 a.m. UTC | #1
This patch can make the testdisplay work if there is no preferred mode found. For example, 
if we use a 30 inch monitor(preferred mode is 2560x1600) with a single channel DVI cable, the driver will drop
the mode of 2560x1600. In this case testdisplay won't work because it can't find the preferred
Could anybody help to push this patch? Thanks.

Hai Lan

> -----Original Message-----
> From: intel-gfx-bounces+hai.lan=intel.com@lists.freedesktop.org
> [mailto:intel-gfx-bounces+hai.lan=intel.com@lists.freedesktop.org] On
> Behalf Of Lan, Hai
> Sent: Tuesday, May 31, 2011 5:47 PM
> To: Paul Menzel; intel-gfx@lists.freedesktop.org
> Subject: Re: [Intel-gfx] [PATCH] Test the first mode if there is no preferred
> mode.
> 
> Dear Paul
> Thanks for your advice. I am afraid there might be a i915 driver bug. We use
> the testdisplay to check the SDVO-TV and
> find the TV has no preferred mode. This will cause the testdisplay to quit. So I
> write this patch to make the testdisplay to go on.
> 
> Hai Lan
> 
> > -----Original Message-----
> > From: intel-gfx-bounces+hai.lan=intel.com@lists.freedesktop.org
> > [mailto:intel-gfx-bounces+hai.lan=intel.com@lists.freedesktop.org] On
> > Behalf Of Paul Menzel
> > Sent: Tuesday, May 31, 2011 5:05 PM
> > To: intel-gfx@lists.freedesktop.org
> > Subject: Re: [Intel-gfx] [PATCH] Test the first mode if there is no preferred
> > mode.
> >
> > Dear Hai,
> >
> >
> > Am Dienstag, den 31.05.2011, 17:24 -0400 schrieb Hai Lan:
> > > For a TV device, there  might be no preferred mode.
> >
> > is that an error of the device or is this a driver “feature”?
> >
> > > In this case, we can test the first mode.
> >
> > Is a Signed-off-by line needed to get your patch accepted? You can add it
> > automatically passing `-s` to `git commit` or `git format-patch`.
> >
> > > ---
> > >  tests/testdisplay.c |   13 ++++++++++---
> > >  1 files changed, 10 insertions(+), 3 deletions(-)
> > >
> > > diff --git a/tests/testdisplay.c b/tests/testdisplay.c index
> > > 41a5753..ef194fe 100644
> > > --- a/tests/testdisplay.c
> > > +++ b/tests/testdisplay.c
> > > @@ -280,9 +280,16 @@ static void
> > connector_find_preferred_mode(struct connector *c)
> > >  	}
> > >
> > >  	if (!c->mode_valid) {
> > > -		fprintf(stderr, "failed to find any modes on connector %d\n",
> > > -			c->id);
> > > -		return;
> > > +		if (connector->count_modes > 0) {
> > > +			/* use the first mode as test mode */
> > > +			c->mode = connector->modes[0];
> > > +			c->mode_valid = 1;
> > > +		}
> > > +		else {
> > > +			fprintf(stderr, "failed to find any modes on
> connector %d\n",
> > > +				c->id);
> > > +			return;
> > > +		}
> > >  	}
> > >
> > >  	/* Now get the encoder */
> >
> > Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
> >
> >
> > Thanks,
> >
> > Paul
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
diff mbox

Patch

diff --git a/tests/testdisplay.c b/tests/testdisplay.c
index 41a5753..ef194fe 100644
--- a/tests/testdisplay.c
+++ b/tests/testdisplay.c
@@ -280,9 +280,16 @@  static void connector_find_preferred_mode(struct connector *c)
 	}
 
 	if (!c->mode_valid) {
-		fprintf(stderr, "failed to find any modes on connector %d\n",
-			c->id);
-		return;
+		if (connector->count_modes > 0) {
+			/* use the first mode as test mode */
+			c->mode = connector->modes[0];
+			c->mode_valid = 1;
+		}
+		else {
+			fprintf(stderr, "failed to find any modes on connector %d\n",
+				c->id);
+			return;
+		}
 	}
 
 	/* Now get the encoder */