Bug 14854

Summary: No monitors detected on boot (wrong resolution), then X fails to start
Product: Drivers Reporter: Sean Young (sean)
Component: Video(DRI - Intel)Assignee: ykzhao (yakui.zhao)
Status: RESOLVED PATCH_ALREADY_AVAILABLE    
Severity: high CC: yakui.zhao
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.33-rc1 Subsystem:
Regression: Yes Bisected commit-id:
Attachments: dmesg output
vbios.dump
Output of dmesg with drm.debug=0x06
Try the patch which deletes the code of using child device array parsed from VBT to setup HDMI/DP
Output of dmesg with drm.debug=0x06 and patch

Description Sean Young 2009-12-21 10:44:41 UTC
Problem does NOT occur with 2.6.32. Problem occurs with 2.6.33-rc1 (I can bisect if needed).

Motherboard: Intel DG45ID (latest BIOS version)
Architecture: x86_64
Monitor connected via DVI, HDMI port unused.
Monitor: Dell 2007WFP

Looks like KMS chooses 640x480 on boot, not the native 1680x1050. Complete dmesg is attached.

[    4.698548] i915 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
[    4.698553] i915 0000:00:02.0: setting latency timer to 64
[    4.710148] mtrr: type mismatch for c0000000,10000000 old: write-back new: write-combining
[    4.710151] [drm] MTRR allocation failed.  Graphics performance may suffer.
[    4.710219] i915 0000:00:02.0: irq 26 for MSI/MSI-X
[    4.710230] [drm] set up 31M of stolen space
[    4.782377] ------------[ cut here ]------------
[    4.782385] WARNING: at drivers/gpu/drm/drm_crtc_helper.c:1035 drm_helper_initial_config+0x67/0x70 [drm_kms_helper]()
[    4.782387] Hardware name:
[    4.782388] No connectors reported connected with modes
[    4.782390] Modules linked in: i915(+) drm_kms_helper ohci1394 ahci drm i2c_algo_bit ata_piix cfbcopyarea i2c_core ieee1394 libata uhci_hcd(+) ehci_hcd(+) usbcore thermal button scsi_mod e1000e video output cfbimgblt cfbfillrect intel_agp
[    4.782406] Pid: 1077, comm: modprobe Not tainted 2.6.33-rc1 #1
[    4.782408] Call Trace:
[    4.782416]  [<ffffffff81043698>] warn_slowpath_common+0x78/0xb0
[    4.782419]  [<ffffffff8104372c>] warn_slowpath_fmt+0x3c/0x40
[    4.782423]  [<ffffffffa0088c37>] drm_helper_initial_config+0x67/0x70 [drm_kms_helper]
[    4.782439]  [<ffffffffa01eb3b8>] i915_driver_load+0x1328/0x1540 [i915]
[    4.782454]  [<ffffffffa018fc75>] ? drm_sysfs_device_add+0x85/0xb0 [drm]
[    4.782461]  [<ffffffffa018d2ae>] ? drm_get_minor+0x1ce/0x330 [drm]
[    4.782468]  [<ffffffffa018d731>] drm_get_dev+0x321/0x570 [drm]
[    4.782479]  [<ffffffffa021cef1>] i915_pci_probe+0x10/0xd0 [i915]
[    4.782483]  [<ffffffff811ff612>] local_pci_probe+0x12/0x20
[    4.782485]  [<ffffffff81200b50>] pci_device_probe+0x80/0xb0
[    4.782489]  [<ffffffff8128863a>] ? driver_sysfs_add+0x5a/0x90
[    4.782491]  [<ffffffff81288776>] driver_probe_device+0x86/0x180
[    4.782494]  [<ffffffff81288870>] ? __driver_attach+0x0/0xa0
[    4.782496]  [<ffffffff81288903>] __driver_attach+0x93/0xa0
[    4.782499]  [<ffffffff81288870>] ? __driver_attach+0x0/0xa0
[    4.782501]  [<ffffffff81287b68>] bus_for_each_dev+0x68/0x90
[    4.782503]  [<ffffffff812885d9>] driver_attach+0x19/0x20
[    4.782506]  [<ffffffff8128811d>] bus_add_driver+0xcd/0x2d0
[    4.782508]  [<ffffffff81288bf8>] driver_register+0x78/0x140
[    4.782510]  [<ffffffff812004b1>] __pci_register_driver+0x51/0xd0
[    4.782519]  [<ffffffffa0123000>] ? i915_init+0x0/0x52 [i915]
[    4.782526]  [<ffffffffa0187810>] drm_init+0x110/0x120 [drm]
[    4.782530]  [<ffffffff810cb4ed>] ? register_shrinker+0x4d/0x60
[    4.782538]  [<ffffffffa0123000>] ? i915_init+0x0/0x52 [i915]
[    4.782546]  [<ffffffffa0123050>] i915_init+0x50/0x52 [i915]
[    4.782550]  [<ffffffff810001d7>] do_one_initcall+0x37/0x190
[    4.782553]  [<ffffffff8107dbe8>] sys_init_module+0xd8/0x250
[    4.782556]  [<ffffffff81002eeb>] system_call_fastpath+0x16/0x1b
[    4.782558] ---[ end trace 78f0ed81d66e7c2f ]---
[    4.782645] ACPI Exception: AE_NOT_FOUND, Evaluating _DOD (20091214/video-1882)
[    4.782685] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/LNXVIDEO:00/input/input2
[    4.782691] ACPI: Video Device [GFX0] (multi-head: no  rom: yes  post: no)
[    4.782707] [drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0
Comment 1 Sean Young 2009-12-21 12:54:21 UTC
Created attachment 24245 [details]
dmesg output
Comment 2 ykzhao 2009-12-28 03:40:42 UTC
Hi, Sean
   Will you please attach the output of vbios.dump? The vbios.dump can be obtained by using the following command:
   1. echo 1 > /sys/devices/pci0000:00/0000:00:02.0/rom
   2. cat /sys/devices/pci0000:00/0000:00:02.0/rom> vbios.dump
   3. echo 0 > /sys/devices/pci0000:00/0000:00:02.0/rom


   Will you please also add the boot option of "drm.debug=0x06" and attach the output of dmesg?
   Thanks.
Comment 3 Sean Young 2009-12-28 18:09:41 UTC
Created attachment 24330 [details]
vbios.dump
Comment 4 Sean Young 2009-12-28 18:18:07 UTC
Created attachment 24331 [details]
Output of dmesg with drm.debug=0x06
Comment 5 ykzhao 2009-12-29 09:13:16 UTC
Created attachment 24339 [details]
Try the patch which deletes the code of using child device array parsed from VBT to setup HDMI/DP

Will you please try the debug patch and see whether the issue still exists?

It removes the code that uses the child device array parsed from VBT to setup HDMI/DP.
Comment 6 ykzhao 2009-12-29 09:30:16 UTC
Will you please add the boot option of "drm.debug=0x06" and attach the output of dmesg after applying the patch?

thanks.
Comment 7 ykzhao 2009-12-29 09:34:13 UTC
Hi, Sean
    How about this issue if you connect this monitor by using HDMI port?

Thanks.
Comment 8 Sean Young 2009-12-29 10:55:22 UTC
(In reply to comment #7)
> Hi, Sean
>     How about this issue if you connect this monitor by using HDMI port?
> 
> Thanks.

Unfortunately my monitor does not have an HDMI port, neither do I have any other hardware which does.
Comment 9 Sean Young 2009-12-29 12:08:12 UTC
Created attachment 24343 [details]
Output of dmesg with drm.debug=0x06 and patch

With this patch the correct resolution is chosen, so the problem has gone away. It would be great if this can be merged for 2.6.33.
Comment 10 ykzhao 2010-01-14 06:45:56 UTC
Now the following patch is already shipped in Eric's for-linus tree. And soon it will hit the linus's master tree. 
commit 6207937d4feea000913e8ca23fe20c7744be7847
Author: Zhao Yakui <yakui.zhao@intel.com>
Date:   Wed Jan 6 09:49:31 2010 +0800

    drm/i915: Don't use the child device parsed from VBT to setup HDMI/DP

So this bug will be marked as resolved.

thanks.