Bug 13593

Summary: Wrong mode selected on LVDS with KMS enabled
Product: Drivers Reporter: Ivan Bulatovic (combuster)
Component: Video(Other)Assignee: Dave Airlie (airlied)
Status: RESOLVED PATCH_ALREADY_AVAILABLE    
Severity: high CC: akpm, eric, yakui.zhao
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 2.6.30-git17 Subsystem:
Regression: No Bisected commit-id:
Attachments: Dmesg log file

Description Ivan Bulatovic 2009-06-21 15:53:15 UTC
Created attachment 22033 [details]
Dmesg log file

On intel X3100 gpu with kms enabled 2.6.30-git17 select 800x600 resolution instead 1280x800.

[drm] Initialized drm 1.1.0 20060810
[drm] TV-14: set mode NTSC 480i 0
[drm:drm_helper_initial_config] *ERROR* connectors have no modes, using standard modes
[drm] LVDS-8: set mode 800x600 18
fb0: inteldrmfb frame buffer device
[drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0
[drm] TV-14: set mode NTSC 480i 0
[drm] TV-14: set mode NTSC 480i 0
[drm] TV-14: set mode NTSC 480i 0
[drm] TV-14: set mode NTSC 480i 0
[drm] TV-14: set mode NTSC 480i 0
[drm] TV-14: set mode NTSC 480i 0

Can not even start X because of the following error:

(II) intel(0): Creating default Display subsection in Screen section
	"Builtin Default intel Screen 0" for depth/fbbpp 24/32
(==) intel(0): Depth 24, (--) framebuffer bpp 32
(==) intel(0): RGB weight 888
(==) intel(0): Default visual is TrueColor
(II) intel(0): Integrated Graphics Chipset: Intel(R) 965GM
(--) intel(0): Chipset: "965GM"
(WW) intel(0): libpciaccess reported 0 rom size, guessing 64kB
(II) intel(0): Resizable framebuffer: available (0 4)
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmOpenByBusid: Searching for BusID pci:0000:00:02.0
drmOpenDevice: node name is /dev/dri/card0
drmOpenDevice: open result is 8, (OK)
drmOpenByBusid: drmOpenMinor returns 8
drmOpenByBusid: drmGetBusid reports pci:0000:00:02.0
(II) [drm] DRM interface version 1.3
(II) [drm] DRM open master succeeded.
(II) intel(0): Output VGA1 has no monitor section
(II) intel(0): Output LVDS1 has no monitor section
(II) intel(0): Output TV1 has no monitor section
(II) intel(0): Output VGA1 disconnected
(II) intel(0): Output LVDS1 connected
(II) intel(0): Output TV1 disconnected
(WW) intel(0): Unable to find initial modes
(EE) intel(0): Output LVDS1 enabled but has no modes
(==) intel(0): video overlay key set to 0x101fe
(==) intel(0): Using gamma correction (1.0, 1.0, 1.0)
(EE) intel(0): No modes.
(II) UnloadModule: "intel"
(EE) Screen(s) found, but none have a usable configuration.

Fatal server error:
no screens found

I am running arch linux...
Comment 1 Ivan Bulatovic 2009-06-27 07:07:43 UTC
Problem remains on 2.6.31-rc1...

[drm:drm_helper_initial_config] *ERROR* connectors have no modes, using standard modes
Jun 26 11:01:40 vostro kernel: allocated 800x600 fb: 0x007df000, bo ffff88007d9b3480
Jun 26 11:01:40 vostro kernel: Console: switching to colour frame buffer device 100x37
Jun 26 11:01:40 vostro kernel: [drm] LVDS-8: set mode 800x600 18

I get this weird oops now also:

Jun 26 11:01:40 vostro kernel: BUG: unable to handle kernel NULL pointer dereference at 0000000000000018
Jun 26 11:01:40 vostro kernel: IP: [<ffffffff811d8646>] acpi_get_pci_dev+0x194/0x1e2
Jun 26 11:01:40 vostro kernel: PGD 7e0c3067 PUD 7e051067 PMD 0 
Jun 26 11:01:40 vostro kernel: Oops: 0000 [#1] PREEMPT SMP 
Jun 26 11:01:40 vostro kernel: last sysfs file: /sys/module/ehci_hcd/initstate
Jun 26 11:01:40 vostro kernel: CPU 0 
Jun 26 11:01:40 vostro kernel: Modules linked in: serio_raw ehci_hcd(+) dell_laptop(+) dcdbas r8169 mii pcspkr intel_agp i2c_core usbcore wmi video output thermal fan button battery ac evdev fuse snd_hda_codec_realtek snd_seq_oss snd_seq_midi_event snd_hda_intel snd_hda_codec snd_seq snd_seq_device snd_pcm_oss snd_mixer_oss snd_hwdep snd_pcm snd_timer snd soundcore snd_page_alloc arc4 ecb iwl3945 iwlcore mac80211 led_class cfg80211 rfkill coretemp cpufreq_powersave cpufreq_ondemand acpi_cpufreq freq_table processor rtc_cmos rtc_core rtc_lib ext4 mbcache jbd2 crc16 sd_mod sr_mod cdrom ata_generic pata_acpi ahci ata_piix libata scsi_mod
Jun 26 11:01:40 vostro kernel: Pid: 1125, comm: modprobe Not tainted 2.6.31-rc1-TEST #1 Vostro1310
Jun 26 11:01:40 vostro kernel: RIP: 0010:[<ffffffff811d8646>]  [<ffffffff811d8646>] acpi_get_pci_dev+0x194/0x1e2
Jun 26 11:01:40 vostro kernel: RSP: 0018:ffff88007e711cb8  EFLAGS: 00010287
Jun 26 11:01:40 vostro kernel: RAX: 0000000000000000 RBX: ffff88007f011560 RCX: ffff88007dc7a140
Jun 26 11:01:40 vostro kernel: RDX: 0000000000000296 RSI: 0000000000000296 RDI: 0000000000000296
Jun 26 11:01:40 vostro kernel: RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000
Jun 26 11:01:40 vostro kernel: R10: 0000000000000052 R11: ffff88007f011500 R12: ffff88007e722c40
Jun 26 11:01:40 vostro kernel: R13: ffff88007f027400 R14: ffff88007f011500 R15: ffff88007e711cb8
Jun 26 11:01:40 vostro kernel: FS:  00007f4b33d166f0(0000) GS:ffff88000167d000(0000) knlGS:0000000000000000
Jun 26 11:01:40 vostro kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 000000008005003b
Jun 26 11:01:40 vostro kernel: CR2: 0000000000000018 CR3: 000000007db44000 CR4: 00000000000006f0
Jun 26 11:01:40 vostro kernel: DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
Jun 26 11:01:40 vostro kernel: DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400
Jun 26 11:01:40 vostro kernel: Process modprobe (pid: 1125, threadinfo ffff88007e710000, task ffff88007d967920)
Jun 26 11:01:40 vostro kernel: Stack:
Jun 26 11:01:40 vostro kernel: ffff88007e722c40 ffff88007e722b80 ffff88007f013fa0 0000000000010000
Jun 26 11:01:40 vostro kernel: <0> ffff88007d967920 ffff88007f011560 ffff88007e711e50 ffff88007f011500
Jun 26 11:01:40 vostro kernel: <0> 0000000000000001 0000000000000006 0000000000000006 ffffffff811db684
Jun 26 11:01:40 vostro kernel: Call Trace:
Jun 26 11:01:40 vostro kernel: [<ffffffff811db684>] ? find_video+0x50/0x7b
Jun 26 11:01:40 vostro kernel: [<ffffffff811ec21a>] ? acpi_ns_walk_namespace+0xaf/0x123
Jun 26 11:01:40 vostro kernel: [<ffffffff811db634>] ? find_video+0x0/0x7b
Jun 26 11:01:40 vostro kernel: [<ffffffff811db634>] ? find_video+0x0/0x7b
Jun 26 11:01:40 vostro kernel: [<ffffffff811ea3e4>] ? acpi_walk_namespace+0x74/0xa7
Jun 26 11:01:40 vostro kernel: [<ffffffffa008b000>] ? dell_init+0x0/0x2f8 [dell_laptop]
Jun 26 11:01:40 vostro kernel: [<ffffffff811db464>] ? acpi_video_get_capabilities+0x50/0xbc
Jun 26 11:01:40 vostro kernel: [<ffffffff811db521>] ? acpi_video_backlight_support+0x14/0x3d
Jun 26 11:01:40 vostro kernel: [<ffffffffa008b1bd>] ? dell_init+0x1bd/0x2f8 [dell_laptop]
Jun 26 11:01:40 vostro kernel: [<ffffffff81099a6a>] ? tracepoint_module_notify+0x3a/0x50
Jun 26 11:01:40 vostro kernel: [<ffffffff8100904b>] ? do_one_initcall+0x3b/0x180
Jun 26 11:01:40 vostro kernel: [<ffffffff81064cb9>] ? __blocking_notifier_call_chain+0x69/0x90
Jun 26 11:01:40 vostro kernel: [<ffffffff8107890e>] ? sys_init_module+0xde/0x230
Jun 26 11:01:40 vostro kernel: [<ffffffff8100bf82>] ? system_call_fastpath+0x16/0x1b
Jun 26 11:01:40 vostro kernel: Code: 4a 48 8b 44 24 18 4c 89 ef 48 89 c6 83 e0 07 48 c1 ee 10 c1 e6 03 81 e6 f8 00 00 00 09 c6 e8 a2 2f fd ff 49 39 de 48 89 c5 74 20 <4c> 8b 68 18 48 89 c7 e8 9e 23 fd ff 4d 8b 24 24 49 8b 04 24 4d 
Jun 26 11:01:40 vostro kernel: RIP  [<ffffffff811d8646>] acpi_get_pci_dev+0x194/0x1e2
Jun 26 11:01:40 vostro kernel: RSP <ffff88007e711cb8>
Jun 26 11:01:40 vostro kernel: CR2: 0000000000000018
Jun 26 11:01:40 vostro kernel: iTCO_vendor_support: vendor-support=0
Jun 26 11:01:40 vostro kernel: ehci_hcd 0000:00:1d.7: USB 2.0 started, EHCI 1.00
Jun 26 11:01:40 vostro kernel: usb usb2: configuration #1 chosen from 1 choice
Jun 26 11:01:40 vostro kernel: hub 2-0:1.0: USB hub found
Jun 26 11:01:40 vostro kernel: iTCO_wdt: Intel TCO WatchDog Timer Driver v1.05
Jun 26 11:01:40 vostro kernel: iTCO_wdt: Found a ICH8M TCO device (Version=2, TCOBASE=0x1060)
Jun 26 11:01:40 vostro kernel: iTCO_wdt: initialized. heartbeat=30 sec (nowayout=0)
Jun 26 11:01:40 vostro kernel: hub 2-0:1.0: 6 ports detected
Jun 26 11:01:40 vostro kernel: ---[ end trace bc309791c457307a ]---

I've noticed that you've been patching up intel_lvds.c since 2.6.31-rc1, thank you...
Comment 2 Ivan Bulatovic 2009-06-27 09:41:47 UTC
Arch vostro 2.6.31-rc1-TEST-00114-g4075ea8-dirty #1 SMP PREEMPT Sat Jun 27 11:13:32 CEST 2009 x86_64 Intel(R) Core(TM)2 Duo CPU T5670 @ 1.80GHz GenuineIntel GNU/Linux

Latest git snapshot and it's been fixed :)

dmesg|grep i915
i915 0000:00:02.0: PCI INT A -> GSI 16 (level, low) -> IRQ 16
i915 0000:00:02.0: setting latency timer to 64
i915 0000:00:02.0: irq 31 for MSI/MSI-X
[drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0

dmesg|grep drm
[drm] Initialized drm 1.1.0 20060810
[drm] TV-15: set mode NTSC 480i 0
[drm] LVDS-8: set mode 1280x800 c
fb0: inteldrmfb frame buffer device
[drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0
[drm] TV-15: set mode NTSC 480i 0
[drm] TV-15: set mode NTSC 480i 0
[drm] TV-15: set mode NTSC 480i 0
[drm] TV-15: set mode NTSC 480i 0
[drm] TV-15: set mode NTSC 480i 0
[drm] TV-15: set mode NTSC 480i 0
[drm] TV-15: set mode NTSC 480i 0
[drm] TV-15: set mode NTSC 480i 0
[drm] TV-15: set mode NTSC 480i 0
[drm] TV-15: set mode NTSC 480i 0
[drm] TV-15: set mode NTSC 480i 0
[drm] TV-15: set mode NTSC 480i 0

dmesg|grep intel
agpgart-intel 0000:00:00.0: Intel 965GM Chipset
agpgart-intel 0000:00:00.0: detected 7676K stolen memory
agpgart-intel 0000:00:00.0: AGP aperture is 256M @ 0xd0000000
fb0: inteldrmfb frame buffer device

And as I might add the performance of x3100 (965GM) with dual channel memory enabled almost doubled, whatever you are doing keep doing it !