Bug 23098

Summary: [i965] Low resolution for HDMI-connected TV
Product: xorg Reporter: Geir Ove Myhr <gomyhr>
Component: Driver/intelAssignee: ykzhao <yakui.zhao>
Status: RESOLVED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium CC: agx, jardasmid, michael.fu
Version: gitKeywords: patch
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Xorg log with KMS disabled
none
"xrandr --verbose" output with KMS disabled
none
xorg.log with KMS enabled
none
xrandr --verbose output with KMS enabled showing 720p resolution available none

Description Geir Ove Myhr 2009-08-02 18:04:00 UTC
Forwarding a bug report from ubuntu user Jaroslav Šmíd:
https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/340212

[Problem description]
An LCD TV Sony Bravia 20" (model: KDL-20S4000) connected to the HDMI port in dual-head setup with LVDS only gets a resolution of 720x480 (480p) instead of the supported resolution of 1280x720 (720p). This was originally reported using UMS but the attached log files are for KMS with kernel 2.6.31-rc4 and the newest 2.8.0 intel driver.

[Original description]

I have Intel X3100 video card with HDMI output. "Display" configuration tool in Ubuntu (tested 8.10 and 9.04 versions) allows me to set only 720x480 (480p) and once in a blue moon it allows 1920x540 (1080i). My TV supports 720p (1280x720). It is possible to set 720p resolution in Windows.

I tried to generate modeline using "gtf 1280 720 60" and adding that mode using xrandr. When I set it using xrandr nothing is shown on TV and xrandr does not show any error.

[lspci]
00:00.0 Host bridge [0600]: Intel Corporation Mobile PM965/GM965/GL960 Memory Controller Hub [8086:2a00] (rev 03)
 Subsystem: Dell Device [1028:0254]
00:02.0 VGA compatible controller [0300]: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller [8086:2a02] (rev 03)
 Subsystem: Dell Device [1028:0254]

[other system information]

Architecture: amd64
DistroRelease: Ubuntu 9.10
LiveMediaBuild: Ubuntu 9.10 "Karmic Koala" - Alpha amd64 (20090801)
MachineType: Dell Inc. Studio 1535
NonfreeKernelModules: wl
Package: xserver-xorg-video-intel 2:2.8.0-0ubuntu1
PackageArchitecture: amd64
ProcCmdLine: BOOT_IMAGE=/casper/vmlinuz file=/cdrom/preseed/ubuntu.seed boot=casper initrd=/casper/initrd.lz quiet splash --
ProcEnviron:
 PATH=(custom, no user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.31-4.23-generic
RelatedPackageVersions:
 xserver-xorg 1:7.4+3ubuntu5
 libgl1-mesa-glx 7.5-1ubuntu1
 libdrm2 2.4.12-1ubuntu1
 xserver-xorg-video-intel 2:2.8.0-0ubuntu1
 xserver-xorg-video-ati 1:6.12.99+git20090629.f39cafc5-0ubuntu4
Uname: Linux 2.6.31-4-generic x86_64
UserGroups:

XorgConf:
 Section "Device"
  Identifier "DefaultDevice"
  Option "ModeDebug" "true"
 EndSection
dmi.bios.date: 12/04/2008
dmi.bios.vendor: Dell Inc.
dmi.bios.version: A06
dmi.board.name: 0M263C
dmi.board.vendor: Dell Inc.
dmi.chassis.type: 8
dmi.chassis.vendor: Dell Inc.
dmi.modalias: dmi:bvnDellInc.:bvrA06:bd12/04/2008:svnDellInc.:pnStudio1535:pvr:rvnDellInc.:rn0M263C:rvr:cvnDellInc.:ct8:cvr:
dmi.product.name: Studio 1535
dmi.sys.vendor: Dell Inc.
fglrx: Not loaded
system:
 distro: Ubuntu
 architecture: x86_64kernel: 2.6.31-4-generic

[Attachments downstream]
http://launchpadlibrarian.net/29793890/XorgLog.txt
http://launchpadlibrarian.net/29793892/Xrandr.txt
http://launchpadlibrarian.net/28020986/Xorg.0.log (log with UMS and slightly older driver version)
There's dmesg output and a few other possibly relevant logs in the downstream report.

[Possibly irrelevant information]
With KMS the TV on the HDMI port is reported as DVI instead of HDMI. In this case only the first block of EDID information is registered. The log with UMS shows the full EDID information.
Comment 1 Jaroslav Šmíd 2009-08-03 06:12:49 UTC
Created attachment 28299 [details]
Xorg log with KMS disabled
Comment 2 Jaroslav Šmíd 2009-08-03 06:13:25 UTC
Created attachment 28300 [details]
"xrandr --verbose" output with KMS disabled
Comment 3 Michael Fu 2009-08-06 00:17:30 UTC
Created attachment 28391 [details]
xorg.log with KMS enabled
Comment 4 Michael Fu 2009-08-06 00:42:09 UTC
1) to get 1080i mode used by X, we need to support interlace mode (dup of bug# 11220)
2) to read out 720p mode , we need to support to parse mode from EDID extensions for HDMI.
Comment 5 Geir Ove Myhr 2009-08-06 03:21:40 UTC
(In reply to comment #4)
> 1) to get 1080i mode used by X, we need to support interlace mode (dup of bug#
> 11220)

Yes, I noted that in the downstream report. Let this bug focus on 720p.
Comment 6 Michael Fu 2009-08-28 22:46:36 UTC
pls try if this patch work or not, for 720p problem:

http://www.mail-archive.com/dri-devel@lists.sourceforge.net/msg42703.html
Comment 7 Jaroslav Šmíd 2009-08-29 15:36:49 UTC
(In reply to comment #6)
> pls try if this patch work or not, for 720p problem:
> 
> http://www.mail-archive.com/dri-devel@lists.sourceforge.net/msg42703.html
> 

I compiled kernel (2.6.29) with the patch applied (I had to make some some changes - remove "timing_level = standard_timing_level(edid);" and remove "timing_level" argument from "drm_mode_std(dev, std, timing_level);" because it didn't compile with that. But ... it's still the same, only 480p available.
Comment 8 Jaroslav Šmíd 2009-08-30 05:25:25 UTC
(In reply to comment #7)
> (In reply to comment #6)
> > pls try if this patch work or not, for 720p problem:
> > 
> > http://www.mail-archive.com/dri-devel@lists.sourceforge.net/msg42703.html
> > 
> 
> I compiled kernel (2.6.29) with the patch applied (I had to make some some
> changes - remove "timing_level = standard_timing_level(edid);" and remove
> "timing_level" argument from "drm_mode_std(dev, std, timing_level);" because it
> didn't compile with that. But ... it's still the same, only 480p available.
> 

I'll try to compile 2.6.31 from git to see if it works, but I doubt it.
Comment 9 Jaroslav Šmíd 2009-08-30 05:41:35 UTC
Grr, I don't get it. Against which version of kernel is that patch? I downloaded 2.6.31rc8 and there are only 2 arguments to drm_mode_std as in 2.6.29.
Comment 10 Jaroslav Šmíd 2009-08-30 09:42:57 UTC
(In reply to comment #9)
> Grr, I don't get it. Against which version of kernel is that patch? I
> downloaded 2.6.31rc8 and there are only 2 arguments to drm_mode_std as in
> 2.6.29.
> 

Ok, found that. I applied http://www.mail-archive.com/dri-devel@lists.sourceforge.net/msg42703.html on top of patch provided by yakui zhao adding third argument for drm_mode_std (http://patchwork.kernel.org/patch/36729/mbox/) and two patches adding drm_cvt_mode (http://patchwork.kernel.org/patch/36727/mbox/) with fix (http://www.mail-archive.com/dri-devel@lists.sourceforge.net/msg41991.html) and drm_gtf_mode (http://patchwork.kernel.org/patch/36728/mbox/). Compiled 2.6.31rc8 with them applied and what I get now is WORKING 720p resolution. 720p is available with KMS only, it doesn't appear when using UMS, but I don't need UMS (but I can test patch adding support for it if someone create one).

Thank you a lot, really. Finally working 720p :-)
Comment 11 Jaroslav Šmíd 2009-08-30 09:47:39 UTC
Created attachment 29026 [details]
xrandr --verbose output with KMS enabled showing 720p resolution available
Comment 12 Michael Fu 2009-08-30 17:55:18 UTC
(In reply to comment #10)
 720p
> is available with KMS only, it doesn't appear when using UMS, but I don't need
> UMS (but I can test patch adding support for it if someone create one).
> 

UMS need fixes in xserver rather than just xfree86-video-intel. we've patches but no response and we've given up...
Comment 13 Michael Fu 2009-08-30 17:56:45 UTC
btw, thanks for the testing and I'll reopen this bug till the patch falls into Dave's tree..
Comment 14 ykzhao 2009-08-31 22:44:25 UTC
The following commit is already put in the Dave's drm-next tree.
commit 882f0219518196a94cd2772004e87b178467139a
Author: Zhao Yakui <yakui.zhao@intel.com>
Date:   Wed Aug 26 18:20:49 2009 +0800

    drm/kms: Parse the detailed time info in CEA-EDID

So this bug can be marked as resolved.
thanks.
Comment 15 Michael Fu 2009-08-31 22:56:46 UTC
*** Bug 13025 has been marked as a duplicate of this bug. ***
Comment 16 Guido Guenther 2010-03-14 01:16:16 UTC
I can confirm this is working now nicely with 2.6.32 and kms enabled.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.