Bug 58894

Summary: Radeon HD 7690M XT only shows 1280x1024, not able to get 1920x1080
Product: xorg Reporter: Benny Ammitzbøll <benny>
Component: Driver/RadeonAssignee: xf86-video-ati maintainers <xorg-driver-ati>
Status: CLOSED FIXED QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: unspecified   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Xorg.0.log
none
kernel .config
none
dmesg log
none
glxinfo output
none
/var/log/messages none

Description Benny Ammitzbøll 2012-12-30 23:01:11 UTC
Created attachment 72318 [details]
Xorg.0.log

I have been trying to get Gentoo up and running on my new HP Envy 17 3D laptop. Tried ATI/AMD binary driver, but did not work (complained about VBIOS problem). Have since tried xf86-driver-ati and have got KDE up and running, but only in 1280x1024 and only if I also have xf86-driver-vesa so I'm not sure if the Radeon driver is really active or not. Also, backlight is not working - is shining in full power it seems.

glxinfo output attached. glxgears runs with approx. 1500 fps which is slower than my previous laptop (dell vostro 3700).

Attached xorg log, dmesg output, kernel .config.

/Benny
Comment 1 Benny Ammitzbøll 2012-12-30 23:02:16 UTC
Created attachment 72319 [details]
kernel .config
Comment 2 Benny Ammitzbøll 2012-12-30 23:03:53 UTC
Created attachment 72320 [details]
dmesg log
Comment 3 Benny Ammitzbøll 2012-12-30 23:04:57 UTC
Created attachment 72321 [details]
glxinfo output
Comment 4 Alex Deucher 2013-01-02 14:34:13 UTC
What are the pci ids for your chip?
Comment 5 Benny Ammitzbøll 2013-01-02 15:47:31 UTC
bla-hpenvy17 ~ # lspci -nn  | grep VGA
00:02.0 VGA compatible controller [0300]: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller [8086:0116] (rev 09)
01:00.0 VGA compatible controller [0300]: Advanced Micro Devices [AMD] nee ATI Whistler XT [AMD Radeon HD 6700M Series] [1002:6740]
Comment 6 Alex Deucher 2013-01-02 15:50:51 UTC
You've got a hybrid laptop with two GPUs.  You need to use vgaswitcheroo to select which one is active.  I suspect you have the Intel GPU selected and you are ending up with the vesa driver loading on the Intel GPU.
Comment 7 Benny Ammitzbøll 2013-01-02 16:19:17 UTC
Ok, I have also discovered that I've got a muxless Intel/ATI hybrid graphics card by reading e.g. http://forums.gentoo.org/viewtopic-t-909802-start-0.html.

I've tried experimenting again with fglrx which refuses to run with the latest xf86-video-intel and I have not been able to get an older version of xf86-video-intel to compile. I then tried using xf86-video-intel alone which actually gives me 1920x1080, but only on the HDMI output - the LCD (eDP) screen is blank. Also, glxgears performance is not good and there are some flickering problems...

I'll give the xf86-driver-ati another go trying out the vgaswitcheroo...
Comment 8 Michel Dänzer 2013-01-02 17:16:14 UTC
(In reply to comment #4)
> What are the pci ids for your chip?

BTW, this can be seen in the log file:

[    50.286] (--) PCI:*(0:0:2:0) 8086:0116:103c:168a rev 9, Mem @ 0xc0000000/4194304, 0xb0000000/268435456, I/O @ 0x00005000/64
[    50.286] (--) PCI: (0:1:0:0) 1002:6740:103c:168a rev 0, Mem @ 0xa0000000/268435456, 0xc2800000/131072, I/O @ 0x00004000/256, BIOS @ 0x????????/13107

The asterisk also confirms that the Intel GPU is the primary VGA adapter.


(In reply to comment #7)
> I'll give the xf86-driver-ati another go trying out the vgaswitcheroo...

I don't think VGA switcheroo applies to muxless laptops. Have you tried just starting X with the intel and radeon drivers?
Comment 9 Benny Ammitzbøll 2013-01-02 19:31:58 UTC
(In reply to comment #8)
> (In reply to comment #4)
> > What are the pci ids for your chip?
> 
> BTW, this can be seen in the log file:
> 
> [    50.286] (--) PCI:*(0:0:2:0) 8086:0116:103c:168a rev 9, Mem @
> 0xc0000000/4194304, 0xb0000000/268435456, I/O @ 0x00005000/64
> [    50.286] (--) PCI: (0:1:0:0) 1002:6740:103c:168a rev 0, Mem @
> 0xa0000000/268435456, 0xc2800000/131072, I/O @ 0x00004000/256, BIOS @
> 0x????????/13107
> 
> The asterisk also confirms that the Intel GPU is the primary VGA adapter.

Ok, thanks for the info.

> 
> 
> (In reply to comment #7)
> > I'll give the xf86-driver-ati another go trying out the vgaswitcheroo...
> 
> I don't think VGA switcheroo applies to muxless laptops. Have you tried just
> starting X with the intel and radeon drivers?

I will try it out.
Comment 10 Alex Deucher 2013-01-02 20:02:05 UTC
Your system appears to be MUXed rather than MUX-less:

[drm] Radeon Display Connectors
[drm] Connector 0:
[drm]   eDP-1
[drm]   HPD2
[drm]   DDC: 0x6440 0x6440 0x6444 0x6444 0x6448 0x6448 0x644c 0x644c
[drm]   Encoders:
[drm]     LCD1: INTERNAL_UNIPHY1
[drm] Connector 1:
[drm]   DP-1
[drm]   HPD3
[drm]   DDC: 0x6450 0x6450 0x6454 0x6454 0x6458 0x6458 0x645c 0x645c
[drm]   Encoders:
[drm]     DFP1: INTERNAL_UNIPHY2
[drm] Connector 2:
[drm]   DP-2
[drm]   HPD4
[drm]   DDC: 0x6460 0x6460 0x6464 0x6464 0x6468 0x6468 0x646c 0x646c
[drm]   Encoders:
[drm]     DFP2: INTERNAL_UNIPHY2
[drm] Connector 3:
[drm]   HDMI-A-1
[drm]   HPD1
[drm]   DDC: 0x6430 0x6430 0x6434 0x6434 0x6438 0x6438 0x643c 0x643c
[drm]   Encoders:
[drm]     DFP3: INTERNAL_UNIPHY1

You just need to use vga-switcheroo to select which GPU the displays are connected to.
Comment 11 Alex Deucher 2013-01-02 20:03:25 UTC
If it were MUX-less, there would be fewer or no display connectors listed in the dmesg output.
Comment 12 Benny Ammitzbøll 2013-01-03 16:06:02 UTC
Created attachment 72461 [details]
/var/log/messages
Comment 13 Benny Ammitzbøll 2013-01-03 16:08:29 UTC
Ok, I can get the radeon up and running on the LCD in 1920x1080 using vga-switcheroo, but things are a bit weird. When I boot the machine, the screen goes blank when xdm (KDE) starts. If I then connect an external monitor using HDMI and press ctrl+alt+f1  can get a console on the external monitor where I can issue a "hprofile graphics.radeon" and switch to using radeon - LCD screen is running and I can get KDE up as well.

But I get a number of crashes reported in /var/log/messages when KDE starts and also when I connect/disconnect the HDMI conection to the external monitor - see attached /var/log/messages.

I would like to just boot up and get radeon + KDE without all that of course. I've tried adding the "hprofile graphics.radeon" to the /etc/init.d/xdm script (removing the start/stop of xdm from the hprofile graphics scripts), but this is not really working - still have to fiddle with an external monitor to get a picture.

Any ideas?
Comment 14 Benny Ammitzbøll 2013-01-06 12:22:48 UTC
Status now is that default my system boots with the intel graphics. I can never get the LCD (eDP) display working with that, only an external monitor. KDE can start, but there are flickering problems if I move the mouse pointer in the top left of the screen (???).

I can switch to radeon using hprofile graphics.radeon (vgaswitcheroo) and also get KDE running. By putting this into /etc/init.d/xdm start() I get this as default. BUT the LCD (eDP) is blank until I connect an external monitor. Then the LCD gets turned on while the external monitor remains blank. In KDE I can enable the external monitor output and get a picture here as well.

With radeon enabled I get these entries in /var/log/messages (seems to be when plugging/unplugging the external monitor):

Jan  6 12:48:58 bla-hpenvy17 kernel: ------------[ cut here ]------------
Jan  6 12:48:58 bla-hpenvy17 kernel: WARNING: at drivers/gpu/drm/i915/intel_dp.c:424 intel_dp_aux_ch+0x114/0x314 [i915]()
Jan  6 12:48:58 bla-hpenvy17 kernel: Hardware name: HP ENVY 17 Notebook PC
Jan  6 12:48:58 bla-hpenvy17 kernel: dp_aux_ch not started status 0xffffffff
Jan  6 12:48:58 bla-hpenvy17 kernel: Modules linked in: ipv6 snd_hda_codec_hdmi snd_hda_codec_idt snd_hda_intel snd_hda_codec i915 coretemp snd_hwdep snd_pcm radeon arc4 intel_agp iwldvm ttm mac80211 drm_kms_helper led_class snd_timer intel_gtt kvm drm agpgart snd i2c_algo_bit iwlwifi pcspkr joydev microcode cfg80211 snd_page_alloc atl1c i2c_i801 rfkill xts gf128mul aes_x86_64 aes_generic cbc sha256_generic libiscsi scsi_transport_iscsi tg3 libphy e1000 fuse nfs lockd sunrpc jfs multipath linear raid10 raid456 async_raid6_recov async_memcpy async_pq async_xor xor async_tx raid6_pq raid1 raid0 dm_snapshot dm_crypt dm_mirror dm_region_hash dm_log dm_mod hid_sunplus hid_sony hid_samsung hid_pl hid_petalynx hid_gyration sl811_hcd usbhid xhci_hcd ohci_hcd uhci_hcd usb_storage ehci_hcd usbcore usb_common aic94xx libsas lpfc qla2xxx megaraid_sas megaraid_mbox megaraid_mm megaraid aacraid sx8 DAC960 cciss 3w_9xxx 3w_xxxx mptsas scsi_transport_sas mptfc scsi_transport_fc scsi_tgt mptspi mptscsih mptbase atp870u dc395x qla1280 imm parport dmx3191d sym53c8xx gdth advansys initio BusLogic arcmsr aic7xxx aic79xx scsi_transport_spi sg pdc_adma sata_inic162x sata_mv ata_piix ahci libahci sata_qstor sata_vsc sata_uli sata_sis sata_sx4 sata_nv sata_via sata_svw sata_sil24 sata_sil sata_promise pata_sl82c105 pata_cs5530 pata_cs5520 pata_via pata_jmicron pata_marvell pata_sis pata_netcell pata_sc1200 pata_pdc202xx_old pata_triflex pata_atiixp pata_opti pata_amd pata_ali pata_it8213 pata_pcmcia pcmcia pcmcia_core pata_ns87415 pata_ns87410 pata_serverworks pata_artop pata_it821x pata_optidma pata_hpt3x2n pata_hpt3x3 pata_hpt37x pata_hpt366 pata_cmd64x pata_efar pata_rz1000 pata_sil680 pata_radisys pata_pdc2027x pata_mpiix libata
Jan  6 12:48:58 bla-hpenvy17 kernel: Pid: 17420, comm: upowerd Not tainted 3.6.11-gentoo #2
Jan  6 12:48:58 bla-hpenvy17 kernel: Call Trace:
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffffa069e52c>] ? intel_dp_aux_ch+0x114/0x314 [i915]
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffff8102e512>] warn_slowpath_common+0x80/0x98
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffff8102e5be>] warn_slowpath_fmt+0x41/0x43
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffffa069e52c>] intel_dp_aux_ch+0x114/0x314 [i915]
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffffa069e973>] intel_dp_aux_native_read_retry+0x81/0xef [i915]
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffff8109813f>] ? __alloc_pages_nodemask+0x16c/0x69f
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffffa069ea00>] intel_dp_get_dpcd+0x1f/0x36 [i915]
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffffa069f8f5>] intel_dp_detect+0x9a/0x235 [i915]
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffffa06533c9>] status_show+0x3d/0x7c [drm]
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffff8137f555>] dev_attr_show+0x22/0x49
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffff810986fc>] ? __get_free_pages+0x12/0x4f
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffff81110ff6>] sysfs_read_file+0xa9/0x12b
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffff810bddea>] vfs_read+0xad/0x129
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffff810bdeab>] sys_read+0x45/0x6c
Jan  6 12:48:58 bla-hpenvy17 kernel: [<ffffffff81483762>] system_call_fastpath+0x16/0x1b
Jan  6 12:48:58 bla-hpenvy17 kernel: ---[ end trace c1b5fa09e10b6b5f ]---

So bottom line:

intel: Blank/black LCD after boot, never able to get it enabled. In KDE there are flickering problems when moving mouse pointer in some areas.

radeon: Blank/black LCD after boot, but can get enabled by plugging external monitor. Strange warning messages in the log when plugging/unplugging external monitor.
Comment 15 Benny Ammitzbøll 2013-01-07 10:58:17 UTC
Another observation using vgaswitcheroo: I can switch to radeon, but if I switch back to intel the system gets very sluggish. Using top I can see a "kworker" process/thread using 100% CPU.

Note that I did this switching without KDE started.
Comment 16 Benny Ammitzbøll 2013-01-09 09:51:46 UTC
Please let me know if you need more information or if I should file this bug elsewhere.
Comment 17 Alex Deucher 2013-01-09 14:22:21 UTC
(In reply to comment #16)
> Please let me know if you need more information or if I should file this bug
> elsewhere.

That's probably an intel kernel driver bug.  The intel kernel driver should probably treat the display as disconnected on a muxed system when switcheroo has switched to the other GPU.
Comment 18 Benny Ammitzbøll 2013-01-10 08:04:32 UTC
Is it also an intel driver bug that the LCD display stays blank/black after boot, even if I switch to radeon? Only when connecting an external monitor the LCD display gets turned on. I can then disconnect and connect an external monitor without any problems, but the only way to get the LCD turned on initially is by connecting an external monitor. This workaround is ok at home and at work, but not while travelling...
Comment 19 Alex Deucher 2013-01-10 16:46:25 UTC
(In reply to comment #18)
> Is it also an intel driver bug that the LCD display stays blank/black after
> boot, even if I switch to radeon? Only when connecting an external monitor
> the LCD display gets turned on. I can then disconnect and connect an
> external monitor without any problems, but the only way to get the LCD
> turned on initially is by connecting an external monitor. This workaround is
> ok at home and at work, but not while travelling...

You should open a new radeon bug for those.  Does a dpms cycle fix the panel?  E.g.,
xset dpms force off
Comment 20 Benny Ammitzbøll 2013-01-17 09:33:55 UTC
Tried logging in with blank LCD screen and doing an "xset dpms force off". The LCD remained blank, but the backlight started changing every few seconds (lighter -> darker -> lighter etc.).
Comment 21 Benny Ammitzbøll 2013-01-29 11:14:07 UTC
Original problem of this bug fixed, so closing it. Created new ones for the other issues: https://bugs.freedesktop.org/show_bug.cgi?id=60011 and https://bugs.freedesktop.org/show_bug.cgi?id=60009.

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.