* [PATCH] i915: Skip wrong TV outputs on HP laptop @ 2010-04-20 12:50 Takashi Iwai 2010-04-20 17:13 ` Eric Anholt 0 siblings, 1 reply; 7+ messages in thread From: Takashi Iwai @ 2010-04-20 12:50 UTC (permalink / raw) To: Eric Anholt; +Cc: David Airlie, Jesse Barnes, dri-devel, linux-kernel A new HP laptop with GM45 seems detecting wrongly TV outputs occasionally. Most of time it detects the TV output as disconnected, but spontaneously it detects NTSC 480i although the laptop has no TV output at all. A simple (but ad hoc) fix is to add a DMI check as below. Signed-off-by: Takashi Iwai <tiwai@suse.de> --- drivers/gpu/drm/i915/intel_tv.c | 17 +++++++++++++++++ 1 files changed, 17 insertions(+), 0 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_tv.c b/drivers/gpu/drm/i915/intel_tv.c index 552ec11..e848a28 100644 --- a/drivers/gpu/drm/i915/intel_tv.c +++ b/drivers/gpu/drm/i915/intel_tv.c @@ -37,6 +37,7 @@ #include "intel_drv.h" #include "i915_drm.h" #include "i915_drv.h" +#include <linux/dmi.h> enum tv_margin { TV_MARGIN_LEFT, TV_MARGIN_TOP, @@ -1735,6 +1736,18 @@ static int tv_is_present_in_vbt(struct drm_device *dev) return ret; } +static struct dmi_system_id intel_bad_tv[] = { + { + .ident = "HP Compaq 420", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Hewlett-Packard"), + DMI_MATCH(DMI_PRODUCT_NAME, "HP 420"), + }, + }, + + { } /* terminating entry */ +}; + void intel_tv_init(struct drm_device *dev) { @@ -1757,6 +1770,10 @@ intel_tv_init(struct drm_device *dev) if (!dev_priv->int_tv_support) return; + /* wrongly detected TV outputs */ + if (dmi_check_system(intel_bad_tv)) + return; + /* * Sanity check the TV output by checking to see if the * DAC register holds a value -- 1.7.0.4 ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] i915: Skip wrong TV outputs on HP laptop 2010-04-20 12:50 [PATCH] i915: Skip wrong TV outputs on HP laptop Takashi Iwai @ 2010-04-20 17:13 ` Eric Anholt 2010-04-20 17:58 ` Takashi Iwai 2010-04-21 8:01 ` Zhenyu Wang 0 siblings, 2 replies; 7+ messages in thread From: Eric Anholt @ 2010-04-20 17:13 UTC (permalink / raw) To: Takashi Iwai; +Cc: David Airlie, Jesse Barnes, dri-devel, linux-kernel [-- Attachment #1: Type: text/plain, Size: 491 bytes --] On Tue, 20 Apr 2010 14:50:54 +0200, Takashi Iwai <tiwai@suse.de> wrote: > A new HP laptop with GM45 seems detecting wrongly TV outputs > occasionally. Most of time it detects the TV output as disconnected, > but spontaneously it detects NTSC 480i although the laptop has no TV > output at all. > > A simple (but ad hoc) fix is to add a DMI check as below. > > Signed-off-by: Takashi Iwai <tiwai@suse.de> Does this laptop have no TV connector on the laptop or the dock for it? [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] i915: Skip wrong TV outputs on HP laptop 2010-04-20 17:13 ` Eric Anholt @ 2010-04-20 17:58 ` Takashi Iwai 2010-04-21 0:46 ` ykzhao 2010-04-21 8:01 ` Zhenyu Wang 1 sibling, 1 reply; 7+ messages in thread From: Takashi Iwai @ 2010-04-20 17:58 UTC (permalink / raw) To: Eric Anholt; +Cc: David Airlie, Jesse Barnes, dri-devel, linux-kernel At Tue, 20 Apr 2010 10:13:20 -0700, Eric Anholt wrote: > > On Tue, 20 Apr 2010 14:50:54 +0200, Takashi Iwai <tiwai@suse.de> wrote: > > A new HP laptop with GM45 seems detecting wrongly TV outputs > > occasionally. Most of time it detects the TV output as disconnected, > > but spontaneously it detects NTSC 480i although the laptop has no TV > > output at all. > > > > A simple (but ad hoc) fix is to add a DMI check as below. > > > > Signed-off-by: Takashi Iwai <tiwai@suse.de> > > Does this laptop have no TV connector on the laptop or the dock for it? No, it has neither TV connector nor docking-station. If any patch that can fix the wrong detection is available, I'll happily test it. thanks, Takashi ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] i915: Skip wrong TV outputs on HP laptop 2010-04-20 17:58 ` Takashi Iwai @ 2010-04-21 0:46 ` ykzhao 2010-04-21 5:47 ` Takashi Iwai 2010-04-21 14:03 ` Takashi Iwai 0 siblings, 2 replies; 7+ messages in thread From: ykzhao @ 2010-04-21 0:46 UTC (permalink / raw) To: Takashi Iwai Cc: Eric Anholt, David Airlie, dri-devel, linux-kernel, Jesse Barnes On Wed, 2010-04-21 at 01:58 +0800, Takashi Iwai wrote: > At Tue, 20 Apr 2010 10:13:20 -0700, > Eric Anholt wrote: > > > > On Tue, 20 Apr 2010 14:50:54 +0200, Takashi Iwai <tiwai@suse.de> wrote: > > > A new HP laptop with GM45 seems detecting wrongly TV outputs > > > occasionally. Most of time it detects the TV output as disconnected, > > > but spontaneously it detects NTSC 480i although the laptop has no TV > > > output at all. > > > > > > A simple (but ad hoc) fix is to add a DMI check as below. > > > > > > Signed-off-by: Takashi Iwai <tiwai@suse.de> > > > > Does this laptop have no TV connector on the laptop or the dock for it? > > No, it has neither TV connector nor docking-station. > > If any patch that can fix the wrong detection is available, I'll > happily test it. Oh. This laptop is also based on gm45. Maybe it has the similar issue wit the laptop on https://bugzilla.kernel.org/show_bug.cgi?id=14792. Will you please try the patch in hhttps://bugzilla.kernel.org/show_bug.cgi?id=14792#C24 and see whether the issue can be fixed? Thanks. Yakui > > > thanks, > > Takashi > > ------------------------------------------------------------------------------ > -- > _______________________________________________ > Dri-devel mailing list > Dri-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/dri-devel ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] i915: Skip wrong TV outputs on HP laptop 2010-04-21 0:46 ` ykzhao @ 2010-04-21 5:47 ` Takashi Iwai 2010-04-21 14:03 ` Takashi Iwai 1 sibling, 0 replies; 7+ messages in thread From: Takashi Iwai @ 2010-04-21 5:47 UTC (permalink / raw) To: ykzhao; +Cc: Eric Anholt, David Airlie, dri-devel, linux-kernel, Jesse Barnes At Wed, 21 Apr 2010 08:46:16 +0800, ykzhao wrote: > > On Wed, 2010-04-21 at 01:58 +0800, Takashi Iwai wrote: > > At Tue, 20 Apr 2010 10:13:20 -0700, > > Eric Anholt wrote: > > > > > > On Tue, 20 Apr 2010 14:50:54 +0200, Takashi Iwai <tiwai@suse.de> wrote: > > > > A new HP laptop with GM45 seems detecting wrongly TV outputs > > > > occasionally. Most of time it detects the TV output as disconnected, > > > > but spontaneously it detects NTSC 480i although the laptop has no TV > > > > output at all. > > > > > > > > A simple (but ad hoc) fix is to add a DMI check as below. > > > > > > > > Signed-off-by: Takashi Iwai <tiwai@suse.de> > > > > > > Does this laptop have no TV connector on the laptop or the dock for it? > > > > No, it has neither TV connector nor docking-station. > > > > If any patch that can fix the wrong detection is available, I'll > > happily test it. > > Oh. This laptop is also based on gm45. Maybe it has the similar issue > wit the laptop on https://bugzilla.kernel.org/show_bug.cgi?id=14792. Yeah, it sounds pretty similar. > Will you please try the patch in > hhttps://bugzilla.kernel.org/show_bug.cgi?id=14792#C24 and see whether > the issue can be fixed? OK, I'll give it a try later. Thanks! Takashi ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] i915: Skip wrong TV outputs on HP laptop 2010-04-21 0:46 ` ykzhao 2010-04-21 5:47 ` Takashi Iwai @ 2010-04-21 14:03 ` Takashi Iwai 1 sibling, 0 replies; 7+ messages in thread From: Takashi Iwai @ 2010-04-21 14:03 UTC (permalink / raw) To: ykzhao; +Cc: Eric Anholt, David Airlie, dri-devel, linux-kernel, Jesse Barnes At Wed, 21 Apr 2010 08:46:16 +0800, ykzhao wrote: > > On Wed, 2010-04-21 at 01:58 +0800, Takashi Iwai wrote: > > At Tue, 20 Apr 2010 10:13:20 -0700, > > Eric Anholt wrote: > > > > > > On Tue, 20 Apr 2010 14:50:54 +0200, Takashi Iwai <tiwai@suse.de> wrote: > > > > A new HP laptop with GM45 seems detecting wrongly TV outputs > > > > occasionally. Most of time it detects the TV output as disconnected, > > > > but spontaneously it detects NTSC 480i although the laptop has no TV > > > > output at all. > > > > > > > > A simple (but ad hoc) fix is to add a DMI check as below. > > > > > > > > Signed-off-by: Takashi Iwai <tiwai@suse.de> > > > > > > Does this laptop have no TV connector on the laptop or the dock for it? > > > > No, it has neither TV connector nor docking-station. > > > > If any patch that can fix the wrong detection is available, I'll > > happily test it. > > Oh. This laptop is also based on gm45. Maybe it has the similar issue > wit the laptop on https://bugzilla.kernel.org/show_bug.cgi?id=14792. > > Will you please try the patch in > hhttps://bugzilla.kernel.org/show_bug.cgi?id=14792#C24 and see whether > the issue can be fixed? Looks positive. Rebooted many times, and no longer wrong detection. It'd be nice if this is merged to upstream, and also for stable kernel. Tested-by: Takashi Iwai <tiwai@suse.de> Thanks! Takashi ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] i915: Skip wrong TV outputs on HP laptop 2010-04-20 17:13 ` Eric Anholt 2010-04-20 17:58 ` Takashi Iwai @ 2010-04-21 8:01 ` Zhenyu Wang 1 sibling, 0 replies; 7+ messages in thread From: Zhenyu Wang @ 2010-04-21 8:01 UTC (permalink / raw) To: Eric Anholt Cc: Takashi Iwai, David Airlie, dri-devel, linux-kernel, Jesse Barnes [-- Attachment #1: Type: text/plain, Size: 3971 bytes --] On 2010.04.20 10:13:20 -0700, Eric Anholt wrote: > On Tue, 20 Apr 2010 14:50:54 +0200, Takashi Iwai <tiwai@suse.de> wrote: > > A new HP laptop with GM45 seems detecting wrongly TV outputs > > occasionally. Most of time it detects the TV output as disconnected, > > but spontaneously it detects NTSC 480i although the laptop has no TV > > output at all. > > > > A simple (but ad hoc) fix is to add a DMI check as below. > > > > Signed-off-by: Takashi Iwai <tiwai@suse.de> > > Does this laptop have no TV connector on the laptop or the dock for it? Maybe old TV quirks in UMS driver will also be helpful in case that current BIOS check still fail. This is from old UMS driver, but use pci subsys ids instead of dmi info at that time. From 60bc20124faee4db406b856e139959f8c082830d Mon Sep 17 00:00:00 2001 From: Zhenyu Wang <zhenyuw@linux.intel.com> Date: Wed, 21 Apr 2010 15:53:51 +0800 Subject: [PATCH] drm/i915: TV quirks for laptop with no TV connector This picks up TV connector quirks in original UMS driver, to disable TV encoder on laptop with no physical TV port. Signed-off-by: Zhenyu Wang <zhenyuw@linux.intel.com> --- drivers/gpu/drm/i915/intel_tv.c | 69 +++++++++++++++++++++++++++++++++++++++ 1 files changed, 69 insertions(+), 0 deletions(-) diff --git a/drivers/gpu/drm/i915/intel_tv.c b/drivers/gpu/drm/i915/intel_tv.c index 081cb90..a96a14f 100644 --- a/drivers/gpu/drm/i915/intel_tv.c +++ b/drivers/gpu/drm/i915/intel_tv.c @@ -1612,6 +1612,71 @@ static int tv_is_present_in_vbt(struct drm_device *dev) return ret; } +struct intel_tv_quirk { + int pci_device; + int subsys_vendor; + int subsys_device; +}; + +struct intel_tv_quirk intel_tv_quirk_list[] = { + /* Clevo M720R has no tv output */ + { 0x2a02, 0x1558, 0x0721 }, + /* Dell Latitude X1 */ + { 0x2592, 0x1028, 0x01a3 }, + /* Dell Latitude X1 / D630 (LP: #197740) */ + { 0x2592, 0x1028, 0x01f9 }, + /* Dell XPS 1330 */ + { 0x2a02, 0x1028, 0x0209 }, + /* Dell Inspiron 1535 */ + { 0x2a02, 0x1028, 0x0254 }, + /* Dell Inspiron 1735 */ + { 0x2a02, 0x1028, 0x0256 }, + /* Dell Inspiron 1318 */ + { 0x2a02, 0x1028, 0x0286 }, + /* Dell Vostro A840 (LP: #235155) */ + { 0x2a02, 0x1028, 0x0298 }, + /* Lenovo 3000 v200 */ + { 0x2a02, 0x17aa, 0x3c18 }, + /* Panasonic Toughbook CF-Y4 has no TV output */ + { 0x2592, 0x10f7, 0x8338 }, + /* Panasonic Toughbook CF-Y7 has no TV output */ + { 0x2a02, 0x10f7, 0x8338 }, + /* Toshiba Satellite U300 has no TV output */ + { 0x2a02, 0x1179, 0xff50 }, + /* Samsung Q35 has no TV output */ + { 0x27a2, 0x144d, 0xc504 }, + /* Samsung Q45 has no TV output */ + { 0x2a02, 0x144d, 0xc510 }, + /* HP Compaq nx6110 has no TV output */ + { 0x2592, 0x103c, 0x099c }, + /* HP Compaq nx6310 has no TV output */ + { 0x27a2, 0x103c, 0x30aa }, + /* HP Compaq 6730s has no TV output */ + { 0x2a42, 0x103c, 0x30e8 }, + /* Ordi Enduro UW31 (See LP: #152416) */ + { 0x27a2, 0x1584, 0x9900 }, + /* Littlebit Sepia X35 (rebranded Asus Z37E) (See LP: #201257) */ + { 0x2a02, 0x1043, 0x8265 }, + /* end mark */ + { 0, 0, 0 } +}; + +static bool +intel_tv_check(struct drm_device *dev) +{ + struct pci_dev *pdev = dev->pdev; + struct intel_tv_quirk *q = intel_tv_quirk_list; + + while (q && q->pci_device) { + if (q->pci_device == dev->pci_device && + q->subsys_vendor == pdev->subsystem_vendor && + q->subsys_device == pdev->subsystem_device) + return true; + ++q; + } + return false; +} + void intel_tv_init(struct drm_device *dev) { @@ -1635,6 +1700,10 @@ intel_tv_init(struct drm_device *dev) if (!dev_priv->int_tv_support) return; + /* No real TV output quirks */ + if (intel_tv_check(dev)) + return; + /* * Sanity check the TV output by checking to see if the * DAC register holds a value -- 1.6.3.3 -- Open Source Technology Center, Intel ltd. $gpg --keyserver wwwkeys.pgp.net --recv-keys 4D781827 [-- Attachment #2: Digital signature --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2010-04-21 14:03 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2010-04-20 12:50 [PATCH] i915: Skip wrong TV outputs on HP laptop Takashi Iwai 2010-04-20 17:13 ` Eric Anholt 2010-04-20 17:58 ` Takashi Iwai 2010-04-21 0:46 ` ykzhao 2010-04-21 5:47 ` Takashi Iwai 2010-04-21 14:03 ` Takashi Iwai 2010-04-21 8:01 ` Zhenyu Wang
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox
Powered by JetHome