Bug 55101 - i915: DVO detection problem
Summary: i915: DVO detection problem
Status: RESOLVED CODE_FIX
Alias: None
Product: Drivers
Classification: Unclassified
Component: Video(DRI - Intel) (show other bugs)
Hardware: All Linux
: P1 enhancement
Assignee: intel-gfx-bugs@lists.freedesktop.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-03-12 10:18 UTC by Braggle
Modified: 2013-05-20 20:00 UTC (History)
3 users (show)

See Also:
Kernel Version: 3.7.3
Subsystem:
Regression: No
Bisected commit-id:


Attachments
drm debug log (46.00 KB, text/plain)
2013-03-12 10:18 UTC, Braggle
Details
Patch to add Chrontel 7010B support (2.41 KB, patch)
2013-05-15 14:27 UTC, Braggle
Details | Diff

Description Braggle 2013-03-12 10:18:41 UTC
Created attachment 95201 [details]
drm debug log

Hello,

On an old PC box with Intel 855GM the DVO is not detected and not available to display.

The documentation says the DVO is a Chrontel 7010 but the drm detects a Chrontel 7017 (see attachment).

Let me know if you need more informations

Thanking you in advance
Regards

The PC box MPCX48 documentation:
http://www.indunet.it/download/docs/CarPC/MPCX48-Manual.pdf

The Chrontel 7010 documentation:
http://www.chrontel.com/media/Datasheets/7010ds.pdf

Some commands outputs:

# lspci
00:00.0 Host bridge: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
00:00.1 System peripheral: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
00:00.3 System peripheral: Intel Corporation 82852/82855 GM/GME/PM/GMV Processor to I/O Controller (rev 02)
00:02.0 VGA compatible controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02)
00:02.1 Display controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02)
00:1d.0 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 02)
00:1d.1 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 02)
00:1d.2 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 02)
00:1d.7 USB Controller: Intel Corporation 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (rev 02)
00:1e.0 PCI bridge: Intel Corporation 82801 PCI Bridge (rev 82)
00:1f.0 ISA bridge: Intel Corporation 82801DB/DBL (ICH4/ICH4-L) LPC Interface Bridge (rev 02)
00:1f.1 IDE interface: Intel Corporation 82801DB (ICH4) IDE Controller (rev 02)
00:1f.3 SMBus: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) SMBus Controller (rev 02)
00:1f.5 Multimedia audio controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 02)
02:03.0 Multimedia video controller: Brooktree Corporation Bt878 Video Capture (rev 11)
02:03.1 Multimedia controller: Brooktree Corporation Bt878 Audio Capture (rev 11)
02:08.0 Ethernet controller: Intel Corporation 82801DB PRO/100 VE (MOB) Ethernet Controller (rev 82)
# i2cdetect -l
i2c-0   i2c             i915 gmbus ssc                          I2C adapter
i2c-1   i2c             i915 gmbus vga                          I2C adapter
i2c-2   i2c             i915 gmbus panel                        I2C adapter
i2c-3   i2c             i915 gmbus dpc                          I2C adapter
i2c-4   i2c             i915 gmbus dpb                          I2C adapter
i2c-5   i2c             i915 gmbus dpd                          I2C adapter
# i2cdetect -y -a 0
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
# i2cdetect -y -a 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- 37 -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- 49 -- -- -- -- -- --
50: 50 -- -- -- -- -- -- -- -- 59 -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
# i2cdetect -y -a 2
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00: 00 01 02 03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f
10: 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f
20: 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f
30: -- -- -- -- -- -- -- -- 38 39 3a 3b 3c 3d 3e 3f
40: 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f
70: 70 71 72 73 74 75 76 77 78 79 7a 7b 7c 7d 7e 7f
# i2cdetect -y -a 3
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: 50 51 52 53 54 55 56 57 -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
# i2cdetect -y -a 4
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- 75 -- -- -- -- -- -- -- -- -- --
# i2cdetect -y -a 5
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
Comment 1 Daniel Vetter 2013-03-18 18:44:27 UTC
The ch7xxx driver seems to have support for your dvo chipset, and we probe it before the ch7017 driver. Dunno why that doesn't work. I guess you'll have to poke around in the probe code to figure out what's going on.

Note that we don't have support for any TV dvo chips, so if that's what you want you have to first write the driver.

Generally though we don't support dvo chips beyond what's there already, gen2 is purely in maintenance mode.
Comment 2 Jani Nikula 2013-04-10 11:32:49 UTC
WILL_NOT_FIX?
Comment 3 Braggle 2013-05-14 08:26:40 UTC
I think I have two problems. First in this PC the DVO is not on the correct i2c address (0x75 instead of 0x76). The second problem is the version ID of this chip (0x05) is not defined in the driver. I've tried to fix it myself but it doesn't work and I don't know why.
Comment 4 Jani Nikula 2013-05-14 09:05:39 UTC
Please paste the patches you've tried and the dmesg with drm.debug=0xe running the patches.
Comment 5 Braggle 2013-05-15 14:24:56 UTC
I found my mistake. The driver use 2 registers to identify the chip. My patch works fine now.
Comment 6 Braggle 2013-05-15 14:27:49 UTC
Created attachment 101711 [details]
Patch to add Chrontel 7010B support
Comment 7 Braggle 2013-05-15 15:27:45 UTC
This patch also works as-is on the versions 3.8.13, 3.9.2 and 3.10-rc1
Comment 8 Jani Nikula 2013-05-16 05:57:45 UTC
Braggle, at a quick glance, the patch looks fine. Please submit it to the intel-gfx mailing list for proper review and inclusion to the driver. Include a Signed-off-by line and a Bugzilla: reference to this bug. Thanks.
Comment 9 Daniel Vetter 2013-05-20 20:00:40 UTC
Patch merged to dinq as

commit 98304ad186296dc1e655399e28d5973c21db6a73
Author: braggle@free.fr <braggle@free.fr>
Date:   Thu May 16 12:57:38 2013 +0200

    drm/i915: add support for dvo Chrontel 7010B

Thanks for tracking this down.

Note You need to log in before you can comment on or make changes to this bug.