Bug 21496 - [KMS] Bogus LVDS1 connection detection, two vbios dumps
[KMS] Bogus LVDS1 connection detection, two vbios dumps
Status: RESOLVED FIXED
Product: xorg
Classification: Unclassified
Component: Driver/intel
unspecified
Other All
: medium major
Assigned To: ykzhao
Xorg Project Team
: NEEDINFO
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2009-04-30 15:15 UTC by Warren Togami
Modified: 2010-07-15 10:33 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
vbios dump from Disklessworkstations.com 1520 Atom + i945 video thin client (64.00 KB, application/octet-stream)
2009-04-30 15:18 UTC, Warren Togami
no flags Details
vbios dump from Devon TC5 Atom + i945 video thin client (64.00 KB, application/octet-stream)
2009-04-30 15:20 UTC, Warren Togami
no flags Details
Xorg log with KMS (43.18 KB, text/plain)
2009-05-26 11:20 UTC, Warren Togami
no flags Details
Xorg log with UMS and modedebug (95.49 KB, text/plain)
2009-05-26 11:20 UTC, Warren Togami
no flags Details
oops, wrong attachment (74.57 KB, text/plain)
2009-06-08 13:01 UTC, Warren Togami
no flags Details
acpidump from Devon TC5 Atom + i945 video thin client (74.57 KB, text/plain)
2009-06-08 13:04 UTC, Warren Togami
no flags Details
acpidump from Disklessworkstations.com 1520 Atom + i945 video thin client (65.12 KB, text/plain)
2009-06-08 13:06 UTC, Warren Togami
no flags Details
Use the LID device to decide whether the LVDS device should be initialized (3.64 KB, patch)
2009-06-11 02:04 UTC, ykzhao
no flags Details | Splinter Review
lspci -vxxx from Devon TC5 (18.78 KB, text/plain)
2009-08-17 10:23 UTC, Warren Togami
no flags Details
dmidecode from Devon TC5 (8.74 KB, text/plain)
2009-08-17 10:24 UTC, Warren Togami
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Warren Togami 2009-04-30 15:15:29 UTC
jbarnes asked me to file the vbios dumps of machines affected by the bogus LVDS1 issue.  They will be attached in this bug.
Comment 1 Warren Togami 2009-04-30 15:18:14 UTC
Created attachment 25319 [details]
vbios dump from Disklessworkstations.com 1520 Atom + i945 video thin client

http://www.disklessworkstations.com/cgi-bin/web/200118.html
This machine has a VGA and DVI port.  LVDS should never be used, but it is erroneously detected by KMS as connected.
Comment 2 Warren Togami 2009-04-30 15:20:58 UTC
Created attachment 25320 [details]
vbios dump from Devon TC5 Atom + i945 video thin client

This client has two DVI ports.  It exhibits the bogus LVDS1 connected issue if you plug your monitor only into the first DVI port.  If you plug your monitor into the second DVI port, it behaves properly because that port actually is LVDS1.
Comment 3 Michael Fu 2009-05-13 05:10:50 UTC
did you see the same issue in UMS? If yes, do you mind attaching a xorg.log with ModeDebug option turns on in xorg.conf in UMS? it probably can provide us more information to do debugging... thanks.

And, btw, what's in your /sys/class/power_supply directory of the two machines?
Comment 4 MaLing 2009-05-17 20:37:04 UTC
(In reply to comment #3)
> did you see the same issue in UMS? If yes, do you mind attaching a xorg.log
> with ModeDebug option turns on in xorg.conf in UMS? it probably can provide us
> more information to do debugging... thanks.
> And, btw, what's in your /sys/class/power_supply directory of the two machines?

ping ~
Comment 5 Warren Togami 2009-05-19 09:38:09 UTC
> did you see the same issue in UMS?

No issues with nomodeset.

> And, btw, what's in your /sys/class/power_supply directory of the two machines?

Empty on both machines.
Comment 6 Michael Fu 2009-05-19 20:19:50 UTC
(In reply to comment #5)
> > did you see the same issue in UMS?
> 
> No issues with nomodeset.

nomodeset? what does this mean?

> > And, btw, what's in your /sys/class/power_supply directory of the two machines?
> 
> Empty on both machines.
> 

Thanks for the input.. this may provide some hints for us to determine the solution of LVDS detection.

Comment 7 Warren Togami 2009-05-19 20:27:43 UTC
"nomodeset" kernel parameter boots with kernel modesetting disabled.  The intel driver falls back to EXA and sets the mode itself.  I assume this is what you meant by UMS?
Comment 8 MaLing 2009-05-24 18:38:15 UTC
(In reply to comment #7)
> "nomodeset" kernel parameter boots with kernel modesetting disabled.  The intel
> driver falls back to EXA and sets the mode itself.  I assume this is what you
> meant by UMS?

hi  Warren 

Plase set i915.modeset=0 at boot time, your machine will disable KMS(kernel mode setting), and start xorg in UMS( user mode setting),  then upload log file  with modedebug option on.

Thanks
Ma Ling
Comment 9 Warren Togami 2009-05-26 11:19:11 UTC
It seems that nomodeset and i915.modeset=0 do the same thing.  Attaching logs.
Comment 10 Warren Togami 2009-05-26 11:20:05 UTC
Created attachment 26227 [details]
Xorg log with KMS
Comment 11 Warren Togami 2009-05-26 11:20:53 UTC
Created attachment 26228 [details]
Xorg log with UMS and modedebug
Comment 12 MaLing 2009-05-26 23:26:03 UTC
(In reply to comment #11)
> Created an attachment (id=26228) [details]
> Xorg log with UMS and modedebug

yes, our driver incorrectly think non-existed lvds as connected, we will completely resolve it soon.

A workaround is to ignore LVDS by modify xorg.conf as below
Section "Device"
        ...         
        Option          "monitor-LVDS"    "LVDS"
        ...
EndSection
        ...
Section "Monitor" 
        Identifier      "LVDS" 
        Option          "Ignore" "True" 
EndSection 

Thanks
Ma Ling
Comment 13 ykzhao 2009-06-04 18:18:10 UTC
Will you please attach the output of acpidump, dmidecode?
   The acpidump tool(pmtools) can be found in:
   >http://www.lesswatts.org/projects/acpi/utilities.php

Thanks.
Comment 14 Warren Togami 2009-06-08 13:01:49 UTC
Created attachment 26554 [details]
oops, wrong attachment

http://www.disklessworkstations.com/cgi-bin/web/200118.html
This machine has a VGA and DVI port.  LVDS should never be used, but it is
erroneously detected by KMS as connected.
Comment 15 Warren Togami 2009-06-08 13:04:46 UTC
Created attachment 26555 [details]
acpidump from Devon TC5 Atom + i945 video thin client

This client has two DVI ports.  It exhibits the bogus LVDS1 connected issue if
you plug your monitor only into the first DVI port.  If you plug your monitor
into the second DVI port, it behaves properly because that port actually is
LVDS1.
Comment 16 Warren Togami 2009-06-08 13:06:45 UTC
Created attachment 26556 [details]
acpidump from Disklessworkstations.com 1520 Atom + i945 video thin client

http://www.disklessworkstations.com/cgi-bin/web/200118.html
This machine has a VGA and DVI port.  LVDS should never be used, but it is
erroneously detected by KMS as connected.
Comment 17 ykzhao 2009-06-11 02:04:27 UTC
Created attachment 26665 [details] [review]
Use the LID device to decide whether the LVDS device should be initialized

Will you please try the patch on the latest kernel and see whether the issue still exists?
   Thanks.
Comment 18 Warren Togami 2009-06-11 06:03:03 UTC
I have not tested your patch, but this seems wrong.  You cannot depend on the LID device in a general sense.  The two examples I have supplied are both devices without LID, however LVDS is legitimately used on one of the two DVI ports on the Devon TC5.

How is it that UMS can detect a disconnected LVDS port while KMS cannot?
Comment 19 ykzhao 2009-06-15 23:17:51 UTC
(In reply to comment #18)
> I have not tested your patch, but this seems wrong.  You cannot depend on the
> LID device in a general sense.  The two examples I have supplied are both
> devices without LID, however LVDS is legitimately used on one of the two DVI
> ports on the Devon TC5.
General speaking there exists the LID device on most laptops. And it can be used to put the system into suspend/resume while the LID is closed/reopened. 
If there is no LID device, we can say that this is not for the mobile laptop.
So IMO we can check the LID device to decide whether the LVDS device should be initialized.

Will you please attach the xorg log/conf using UMS mode on the Devon TC5?


> 
> How is it that UMS can detect a disconnected LVDS port while KMS cannot?
Are you sure that LVDS is disconnected in UMS mode? Will you please double check whether LVDS is skipped by using xorg configuration?
thanks.


Comment 20 ykzhao 2009-06-16 01:30:00 UTC
(In reply to comment #18)
> I have not tested your patch, but this seems wrong.  You cannot depend on the
> LID device in a general sense.  The two examples I have supplied are both
> devices without LID, however LVDS is legitimately used on one of the two DVI
> ports on the Devon TC5.
There is no relationship between LVDS and DVI port.
For me it seems that there is no LVDS device on Devon TC5. Right?

> 
> How is it that UMS can detect a disconnected LVDS port while KMS cannot?
> 

Anyway, please try the debug patch on the Eric's drm-intel-next tree and see whether the LVDS is still connected? (In KMS mode).
   Thanks.
    
Comment 21 Warren Togami 2009-06-16 08:57:10 UTC
<warren> Haven't we already gone through, you can't use LID to determine if you should ignore the LVDS1.
<anholt> someone just needs to parse the bios tables correctly and use them.
<anholt> zhenyuw posted patches that didn't quite work out; they need to be finished.
<warren> anholt: is what I am being asked to do reasonable?
<anholt> warren: there's only one useful thing to do related to lvds detection: finish the bios parsing patch.  ignore anything else but doing that.
Comment 22 ykzhao 2009-06-16 19:11:13 UTC
(In reply to comment #21)
> <warren> Haven't we already gone through, you can't use LID to determine if you
> should ignore the LVDS1.
> <anholt> someone just needs to parse the bios tables correctly and use them.
> <anholt> zhenyuw posted patches that didn't quite work out; they need to be
> finished.
> <warren> anholt: is what I am being asked to do reasonable?
> <anholt> warren: there's only one useful thing to do related to lvds detection:
> finish the bios parsing patch.  ignore anything else but doing that.
> 
Do you mean that the LID device is not a good way for LVDS detection?

Yes. The LVDS detection can be done by parsing Vbios. But it seems that it is not reliable for some laptops. And on some boxes the Mobile chipset is used while there is no LVDS device.  Even some vendors don't change the VBIOS. In such case how can we detect LVDS correctly?

It seems ugly that the LID device is used for LVDS detection. But it can work for the box that use the mobile chipset while it is used as desktop(there is no LID device).

Thanks.

Comment 23 Warren Togami 2009-06-16 21:13:12 UTC
UMS X.org somehow correctly detects that the LVDS is disconnected and ignores it automatically.  Why can't KMS do it properly like UMS seems to do?

The above mentioned Devon TC5 as noted above somehow uses LVDS1 as one of it DVI ports.  The other DVI port is recognized as DVI1.  There is no LID on this machine.  Using LID alone was considered months ago and rejected for other reasons I don't know personally.
Comment 24 ykzhao 2009-06-16 22:43:34 UTC
(In reply to comment #23)
> UMS X.org somehow correctly detects that the LVDS is disconnected and ignores
> it automatically.  Why can't KMS do it properly like UMS seems to do?
Does there exist the LVDS panel on the Devon TC5 box?
How is LVDS ignored automatically in UMS mode? By adding "option ignore false" for LVDS in xorg.conf?
> 
> The above mentioned Devon TC5 as noted above somehow uses LVDS1 as one of it
> DVI ports.  The other DVI port is recognized as DVI1.  There is no LID on this
> machine.  Using LID alone was considered months ago and rejected for other
> reasons I don't know personally.
Several months ago the UMS driver uses the LID state to decide whether the LVDS is connected/disconnected. That means that the LVDS will be disconnected if the LID state is closed. Right?
This can work well on most laptops. But some boxes will be affected as the initial LID state is incorrect. 

Do you mean that LVDS1 is used as one of DVI port on Devon TC5? Sorry that I don't understand what you said. 
How can the LVDS be used as one of DVI port? There is no relationship between LVDS and DVI port.
Will you please describe it more clearly?

Thanks
> 

Comment 25 Warren Togami 2009-06-17 08:41:07 UTC
> Do you mean that LVDS1 is used as one of DVI port on Devon TC5? Sorry that I
> don't understand what you said. 
> How can the LVDS be used as one of DVI port? There is no relationship between
> LVDS and DVI port.
> Will you please describe it more clearly?

Devon TC5 has two DVI ports.
DVI(first) is seen as DVI1 by the operating system.
DVI(second) is seen as LVDS1 by the operating system.

With UMS, single monitor plugged into either port works just fine.  The other interface is detected disconnected, and disabled automatically without any xorg.conf options.

With KMS, single monitor plugged into DVI(second) works, because DVI(first) as DVI1 is properly automatically detected as disconnected.  You however have problems if you plug a single monitor into DVI(first).  DVI(second) as LVDS1 thinks it is connected, improperly modesets and causes spanning.

The TC5 has no LID yet it somehow uses LVDS1 as one of its DVI ports.
Comment 26 ykzhao 2009-06-22 02:25:50 UTC
(In reply to comment #25)
> > Do you mean that LVDS1 is used as one of DVI port on Devon TC5? Sorry that I
> > don't understand what you said. 
> > How can the LVDS be used as one of DVI port? There is no relationship between
> > LVDS and DVI port.
> > Will you please describe it more clearly?
> 
> Devon TC5 has two DVI ports.
> DVI(first) is seen as DVI1 by the operating system.
> DVI(second) is seen as LVDS1 by the operating system.
> 
> With UMS, single monitor plugged into either port works just fine.  The other
> interface is detected disconnected, and disabled automatically without any
> xorg.conf options.
> 
> With KMS, single monitor plugged into DVI(second) works, because DVI(first) as
> DVI1 is properly automatically detected as disconnected.  You however have
> problems if you plug a single monitor into DVI(first).  DVI(second) as LVDS1
> thinks it is connected, improperly modesets and causes spanning.
> 
> The TC5 has no LID yet it somehow uses LVDS1 as one of its DVI ports.
Why is LVDS used as one of its DVI port ?
IMO there is no relationship between LVDS and the DVI port.  There are two possible types of LVDS. One is based on integrated LVDS and another is based on SDVO(DVI port), which is also called SDVO-LVDS. 
In my patch the LID device is to decide whether the integrated LVDS is initialized. 

Will you please confirm whether there exists the integrated LVDS on the Devon TC5? 
Thanks.

 

Comment 27 Warren Togami 2009-06-22 07:47:58 UTC
You are not listening.
Comment 28 ykzhao 2009-07-09 19:40:03 UTC
Hi, Warren
    There are two boxes in this bug. One is from Disklessworkstation 1520 and the other is from Devon TC5. 
    a. Disklessworkstation 1520
       The issue is the bogus LVdS detection. From the VBIOS and product description we know that the mobile chipset is used on this box. And the integrated LVDS will be detected on mobile chipset in KMS mode. So it will get the bogus LVDS dection on this box.
       The patch in comment #17 can solve the issue on this box. On this box there is no LID device. 
       
     b. Devon TC5
        This box is also based on 945GME mobile chipset. And we can know that there is no LID device from the acpidump. In such case we had better ignore the the integrated LVDS dection. 
        
        At the same time I am looking forward to know whether it can solve the issue on this box.  I also want to confirm whether there exists the physical integrated LVDS panel on this box. If there exists the integrated LVDS panel, the patch can't work. And we can do the further work on this patch. For example: Add this box to the quirk table on which the LVDS detection can't be ignored when there is no LID device. But unfortunately there is no test result. 
        
thanks.
        
         
        
       

Comment 29 Warren Togami 2009-07-09 19:51:16 UTC
You continue to not listen.  It is a BAD IDEA to use the presence of a lid to determine if you should ignore LVDS.  The lead developers on the Intel X driver and Red Hat's X engineers both agree this is a bad idea.

Adding this particular box to a quirk table is also a bad idea, because this box exhibits the bogus LVDS issue if you are plugged into only the other port.

Note Comment #21.

Is there no way to do real detection if the LVDS is connected to anything?
Comment 30 Warren Togami 2009-07-09 20:24:24 UTC
OK, I apologize.  Upon further discussion in #intel-gfx it seems I have been misinformed and wrong.

* Despite Comment #21, anholt is now not sure if BIOS parsing can detect if LVDS is actually connected.
* airlied says you cannot detect if LVDS is connected because it lacks connection pins.  He says you might be able to load detect LVDS, but not via software.  He says you might be able to DDC over LVDS, but DDC cannot reliabl tell you if there isn't a device connected.
* Ultimately these boxes were improperly built.  They took reference boards and did not properly rewrite the BIOS to disable LVDS if they are not using it.  This is a flaw in the DisklesssWorkstation 1520 BIOS.  In the case of the Devon TC5 it is impossible for them to have fixed the BIOS to make the LVDS both optional and automatic.

Based upon these points, it is it impossible to detect if LVDS is connected.

airlied says maybe we should disabling LVDS if LID is not present.  We will then have to quirk strange boxes like the Devon TC5.  Unfortunately some boards might be identical between vendors because of laziness and unique quirking wouldn't be possible.  It would be the vendor's own fault and there is nothing the software can do about it.

I will test your patch on Tuesday when I return.

airlied and mjg59 say that quirking could be done with either PCI subvendor ID's or DMI. 
Comment 31 ykzhao 2009-07-09 20:24:50 UTC
(In reply to comment #29)
> You continue to not listen.  It is a BAD IDEA to use the presence of a lid to
> determine if you should ignore LVDS.  The lead developers on the Intel X driver
> and Red Hat's X engineers both agree this is a bad idea.
What is a good idea to decide whether the LVDS detection should be ignored?
By the VBIOS? It is not reliable. So I don't add it to the LVDS detection again. 
In fact the VBIOS on the Devon TC5 tells us that there exists the integrated LVDS.
   LVDS config: Integrated LVDS

> 
> Adding this particular box to a quirk table is also a bad idea, because this
> box exhibits the bogus LVDS issue if you are plugged into only the other port.
Have you confirmed that there exists the integrated LVDS panel on the Devon TC5?
I also point out several times that there is no relationship between the integrated LVDS and DVI port. 
> 
> Note Comment #21.
> 
> Is there no way to do real detection if the LVDS is connected to anything?
AFAIK we can't do the real detection. If we can get the EDID for all the integrated LVDS, it will be good choice to detect whether the LVDS is connected by getting the EDID. But it is also correct that the EDID can't be obtained on some laptops. 
So it seems that we can't do the real detection.
Thanks.
> 

Comment 32 ykzhao 2009-07-09 20:45:38 UTC
Thanks for the understanding.
    Will you please try the updated patch in http://lists.freedesktop.org/archives/intel-gfx/2009-July/003137.html?
    If the Devon TC5 can't wok after applying the patch, please attach the output of dmidecode and lspci -vxxx.
    thanks.
       
Comment 33 Eric Anholt 2009-07-10 12:14:27 UTC
Now in drm-intel-next:

commit e99da35f060f9a3407f7def474a1df31f3b8643a
Author: Zhao Yakui <yakui.zhao@intel.com>
Date:   Fri Jun 26 09:46:18 2009 +0800

    drm/i915: Check the LID device to decide whether the LVDS should be initialized

The expectation is that this will fix the first 3 machines reported.
Comment 34 Gordon Jin 2009-07-11 01:57:58 UTC
Eric, why not putting this fix into qa-branch? I feel this LVDS detection improvement for KMS is important for Q2 release.
Comment 35 Warren Togami 2009-07-15 08:08:34 UTC
BTW, how does X.org without KMS manage to properly detect if something is connected to LVDS1?  It seems to work just fine with KMS disabled.
Comment 36 ykzhao 2009-07-15 17:52:30 UTC
(In reply to comment #35)
> BTW, how does X.org without KMS manage to properly detect if something is
If the LVDS is initialized in UMS mode, it will be detected as "connected". 
> connected to LVDS1?  It seems to work just fine with KMS disabled.
Do you mean that the Devon TC5 box can't work well in KMS mode after applying the patch?
Thanks.
> 

Comment 37 Warren Togami 2009-07-15 17:58:15 UTC
I don't know how UMS X.org does it, but it works just fine autodetecting if a display is connected to the DVI port that is really LVDS1.

I am unable to test your patch at the moment, hopefully next week. =(
Comment 38 Warren Togami 2009-08-03 11:51:39 UTC
(in reply to ykzhao)
> Do you mean that the Devon TC5 box can't work well in KMS mode after applying
> the patch?

Confirmed, DVI2 (connected to LVDS) is entirely broken on the Devon TC5 now.

BTW, even if we quirk this, it will make it behave just as bad as before.  Why is nobody answering the question, UMS was somehow able to successfully detect if LVDS1 was connected.  How was it doing that?
Comment 39 ykzhao 2009-08-03 20:48:36 UTC
(In reply to comment #38)
> (in reply to ykzhao)
> > Do you mean that the Devon TC5 box can't work well in KMS mode after applying
> > the patch?
> Confirmed, DVI2 (connected to LVDS) is entirely broken on the Devon TC5 now.
> BTW, even if we quirk this, it will make it behave just as bad as before.  Why
> is nobody answering the question, UMS was somehow able to successfully detect
> if LVDS1 was connected.  How was it doing that?
Do you mean that this issue still exists on Devon TC5 box?
Do you mean that there exist two DVI port on Devon TC5 box? Please double check it again. And there is no relationship between integrated LVDS and DVI port.

Will you please enable the modedebug option in xorg.conf and attach the xorg log with KMS disabled? Please also attach the output of reg_dump.
    BTW: please do it on Devon TC5 and also attach the xorg.conf.

Thanks.
Comment 40 Warren Togami 2009-08-17 10:23:16 UTC
Created attachment 28707 [details]
lspci -vxxx from Devon TC5
Comment 41 Warren Togami 2009-08-17 10:24:34 UTC
Created attachment 28708 [details]
dmidecode from Devon TC5

Turning off KMS no longer seems to work.  I was told earlier that latest versions of the intel driver no longer support UMS?

In any case please just quirk this machine.  I have no time to work further on this.
Comment 42 Warren Togami 2009-08-26 07:26:55 UTC
ykzhao, please add a quirk for this machine?
Comment 43 ykzhao 2009-08-26 08:21:58 UTC
(In reply to comment #41)
> Created an attachment (id=28708) [details]
> dmidecode from Devon TC5
> Turning off KMS no longer seems to work.  I was told earlier that latest
> versions of the intel driver no longer support UMS?
Do you mean that the LVDS is still detected as connected under KMS mode for the Devon TC5?
From the acpidump we can know that there is no LID device. In such case the LVDS detection will be skipped.
> In any case please just quirk this machine.  I have no time to work further on
> this.
Do you expect that the LVDS detection is also skipped under UMS mode? If so, then it is not related with this bug. Of course we can add this box into the quirk table.
Thank.

Comment 44 Michael Fu 2009-08-31 18:59:37 UTC
Warren, you don't need to disable KMS anymore as Eric has picked up the patch in comment# 33. no quirk should be needed after parsing the acpidump. please submit a xorg.log _with_ KMS and dmesg. thanks.
Comment 45 Warren Togami 2009-08-31 19:04:11 UTC
Michael, you misunderstand.  The patch from Comment #33 completely broke one of the two DVI ports on this particular box when running with KMS enabled.
Comment 46 Michael Fu 2009-08-31 19:09:21 UTC
please provide more description of the symptom , and xorg.log and dmesg. thanks.
Comment 47 Michael Fu 2009-09-02 18:01:37 UTC
Warren, would you please provide the logs? without them , we can't tell why one of your the other DVI doesn't work...
Comment 48 Warren Togami 2009-09-02 19:05:45 UTC
I have explained repeatedly why the other DVI port doesn't work.  It is connected to LVDS1, while this device has no LID since it is a thin client.

http://bugs.freedesktop.org/attachment.cgi?id=26227
This earlier attachment was from this machine, with KMS, a bit prior to the patch that disables LVDS1 when there is no LID.

I will try to get fresh logs but I can't guarantee when.
Comment 49 Michael Fu 2009-09-02 19:39:12 UTC
(In reply to comment #48)
> I have explained repeatedly why the other DVI port doesn't work.  It is
> connected to LVDS1, while this device has no LID since it is a thin client.
> 

ok. I see. in terms of detection, we could even have a better way than quirk to handle this case, but I'm not sure other situation such as , can your converter support LVDS single/dual channel case? when the Hsize is > 1280, LVDS need to switch to dual channel.

from our driver's point of view, we have to treat this as LVDS device.

> http://bugs.freedesktop.org/attachment.cgi?id=26227
> This earlier attachment was from this machine, with KMS, a bit prior to the
> patch that disables LVDS1 when there is no LID.
> 
> I will try to get fresh logs but I can't guarantee when.
> 

Comment 50 Warren Togami 2009-09-02 19:47:48 UTC
The curious thing about this, UMS somehow does detect that the other port is disconnected.  According to what I hear from mjg59 and airlied this is supposed to be electrically impossible with the LVDS connector.
Comment 51 Michael Fu 2009-09-02 19:52:45 UTC
(In reply to comment #50)
> The curious thing about this, UMS somehow does detect that the other port is
> disconnected.  According to what I hear from mjg59 and airlied this is supposed
> to be electrically impossible with the LVDS connector.
> 

actually, I question the feasibility the solution could work as well.. in terms of detection, if the they properly connected the DDC pins from the LVDS port to DVI (converter), the detection in UMS can work. We can do the same thing in KMS, but again I think there are other issues , too , besides the detection problem..
Comment 52 Warren Togami 2009-09-02 19:55:37 UTC
KMS (before this LID patch disabled the LVDS-DVI port) demonstrates that it does successfully DDC to detect the resolution of a connected DVI LCD monitor.  It doesn't successfully detect if a monitor is disconnected though.
Comment 53 Michael Fu 2009-09-02 20:05:05 UTC
(In reply to comment #52)
> KMS (before this LID patch disabled the LVDS-DVI port) demonstrates that it
> does successfully DDC to detect the resolution of a connected DVI LCD monitor. 
> It doesn't successfully detect if a monitor is disconnected though.
> 

correct, because there are many LVDS panels that doesn't have DDC, thus we couldn't say disconnected because no EDID was found. However, if there is EDID, it's sure there is a connection. 

In reference design, LVDS connection is set once the machine is built ( you can't take your laptop panel away...). This information is provided in bios via signs such as if lid device exist or not. 

Apparently, this thin client design is using LVDS in a heterogeneous way. I can't think of any solution to successfully detect the "disconnected" case, without impacting normal LVDS design.

I tend to WONTFIX this, sorry.
Comment 54 Warren Togami 2009-09-02 20:10:49 UTC
I am not asking to detect a monitor plugged into this LVDS.  I am asking to quirk this machine so that port is not disabled by default.  It will behave just as poorly as before the LID patch, but that's better than disabled.
Comment 55 Michael Fu 2009-09-04 05:45:55 UTC
rather than introducing quirk, a feature called "port always on" that Jesse has been working on can help.
Comment 56 Jesse Barnes 2010-07-15 10:33:32 UTC
It's been a long time, assuming this is fixed now.