You are not logged in.
Hi,
I have a Dell Precision M6800 which has these graphic cards:
00:02.0 VGA compatible controller: Intel Corporation 4th Gen Core Processor Integrated Graphics Controller (rev 06)
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Saturn XT [FirePro M6100]
My ATI graphic card is supported by the xf86-video-ati driver based on http://www.x.org/wiki/RadeonFeature/ .
Since I have multiple cards, I followed the instructions of https://wiki.archlinux.org/index.php/PRIME and I have
DRI_PRIME=1 glxinfo | grep "OpenGL renderer"
OpenGL renderer string: Gallium 0.4 on AMD BONAIRE
But when I plug my screen using my laptop display port, I don't see it in xrandr:
Screen 0: minimum 8 x 8, current 1920 x 1080, maximum 32767 x 32767
eDP1 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 382mm x 215mm
1920x1080 60.01*+
1400x1050 59.98
1280x1024 60.02
1280x960 60.00
1024x768 60.00
800x600 60.32 56.25
640x480 59.94
VGA2 disconnected (normal left inverted right x axis y axis)
DP4 disconnected (normal left inverted right x axis y axis)
HDMI1 disconnected (normal left inverted right x axis y axis)
VIRTUAL1 disconnected (normal left inverted right x axis y axis)
If I plug this screen on the VGA output, it is detected but the maximum resolution allowed by xrandr is 1920x1080 and my screen is a 2560x1080 so the image is stretched .
My guess is that xrandr sees only the output of my intel card, how can I have it see the outputs supported by my ATI card?
I also guess that my radeon card is not powered up, because cat /sys/kernel/debug/dri/0/radeon_pm_info gives me.
PX asic powered off
I tried DRI_PRIME=1 glxgears and that made me crash my X server with a segfault
[ 554.701] (EE)
[ 554.701] (EE) Backtrace:
[ 554.701] (EE) 0: /usr/bin/X (xorg_backtrace+0x56) [0x58f186]
[ 554.701] (EE) 1: /usr/bin/X (0x400000+0x192fc9) [0x592fc9]
[ 554.701] (EE) 2: /usr/lib/libpthread.so.0 (0x7fb2738f1000+0xf4b0) [0x7fb2739004b0]
[ 554.701] (EE) 3: /usr/lib/xorg/modules/drivers/intel_drv.so (0x7fb26d165000+0x1034a8) [0x7fb26d2684a8]
[ 554.701] (EE) 4: /usr/bin/X (0x400000+0x15ea73) [0x55ea73]
[ 554.701] (EE) 5: /usr/bin/X (0x400000+0x15f843) [0x55f843]
[ 554.701] (EE) 6: /usr/bin/X (DRI2GetBuffersWithFormat+0xb) [0x55fc8b]
[ 554.701] (EE) 7: /usr/bin/X (0x400000+0x16172b) [0x56172b]
[ 554.701] (EE) 8: /usr/bin/X (0x400000+0x36b2f) [0x436b2f]
[ 554.701] (EE) 9: /usr/bin/X (0x400000+0x3ad16) [0x43ad16]
[ 554.701] (EE) 10: /usr/lib/libc.so.6 (__libc_start_main+0xf0) [0x7fb27255e000]
[ 554.701] (EE) 11: /usr/bin/X (0x400000+0x250fe) [0x4250fe]
[ 554.701] (EE)
Its a bad sign, but I'm fine if we find a workaround to only use the radeon card. What I can read from the Xorg log files before this crash is the following:
[ 545.834] (II) RADEON(G0): Printing probed modes for output DisplayPort-1-0
[ 545.834] (II) RADEON(G0): Modeline "2560x1080"x60.0 185.58 2560 2624 2688 2784 1080 1083 1093 1111 +hsync -vsync (66.7 kHz eP)
So my radeon detects this mode, I just don't see it in xrandr and don't know how to use it. I tried DRI_PRIME=1 xrandr but saw no difference with a standard xrandr.
Additional information:
dmesg|grep radeon gives me
dmesg|grep radeon
[ 5.097162] [drm] radeon kernel modesetting enabled.
[ 5.118130] radeon 0000:01:00.0: enabling device (0000 -> 0003)
[ 10.764770] radeon 0000:01:00.0: VRAM: 2048M 0x0000000000000000 - 0x000000007FFFFFFF (2048M used)
[ 10.764772] radeon 0000:01:00.0: GTT: 1024M 0x0000000080000000 - 0x00000000BFFFFFFF
[ 10.764852] [drm] radeon: 2048M of VRAM memory ready
[ 10.764853] [drm] radeon: 1024M of GTT memory ready.
[ 10.766910] [drm] radeon/BONAIRE_mc2.bin: 31792 bytes
[ 10.774998] [drm] radeon: dpm initialized
[ 10.782479] radeon 0000:01:00.0: WB enabled
[ 10.782490] radeon 0000:01:00.0: fence driver on ring 0 use gpu addr 0x0000000080000c00 and cpu addr 0xffff8807ff9e9c00
[ 10.782491] radeon 0000:01:00.0: fence driver on ring 1 use gpu addr 0x0000000080000c04 and cpu addr 0xffff8807ff9e9c04
[ 10.782492] radeon 0000:01:00.0: fence driver on ring 2 use gpu addr 0x0000000080000c08 and cpu addr 0xffff8807ff9e9c08
[ 10.782493] radeon 0000:01:00.0: fence driver on ring 3 use gpu addr 0x0000000080000c0c and cpu addr 0xffff8807ff9e9c0c
[ 10.782494] radeon 0000:01:00.0: fence driver on ring 4 use gpu addr 0x0000000080000c10 and cpu addr 0xffff8807ff9e9c10
[ 10.782874] radeon 0000:01:00.0: fence driver on ring 5 use gpu addr 0x0000000000076c98 and cpu addr 0xffffc9000a336c98
[ 10.783472] radeon 0000:01:00.0: fence driver on ring 6 use gpu addr 0x0000000080000c18 and cpu addr 0xffff8807ff9e9c18
[ 10.783473] radeon 0000:01:00.0: fence driver on ring 7 use gpu addr 0x0000000080000c1c and cpu addr 0xffff8807ff9e9c1c
[ 10.783487] radeon 0000:01:00.0: irq 46 for MSI/MSI-X
[ 10.783496] radeon 0000:01:00.0: radeon: using MSI.
[ 10.783516] [drm] radeon: irq initialized.
[ 11.056307] radeon 0000:01:00.0: No connectors reported connected with modes
[ 11.057358] radeon 0000:01:00.0: fb1: radeondrmfb frame buffer device
[ 11.057360] radeon 0000:01:00.0: registered panic notifier
[ 11.058383] [drm] Initialized radeon 2.38.0 20080528 for 0000:01:00.0 on minor 0
Anyone knows how to be able to use this new screen with my radeon card?
Thanks in advance!
Last edited by jolivier (2014-07-02 16:02:01)
Offline
Ok I found a solution by changing my Xorg configuration and added my radeon card (although the wiki states that is should be useless)
Section "Device"
Identifier "Radeon"
Driver "radeon"
BusId "PCI:1:0:0"
EndSection
Section "Monitor"
Identifier "DisplayPort-1"
EndSection
Section "Monitor"
Identifier "DisplayPort-2"
EndSection
Section "Monitor"
Identifier "eDP1"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Radeon"
Monitor "DisplayPort-2"
SubSection "Display"
Depth 24
Modes "2560x1080"
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Radeon"
Monitor "DisplayPort-1"
SubSection "Display"
Depth 24
Modes "1920x1080"
EndSubSection
EndSection
Section "Screen"
Identifier "Screen2"
Device "Intel"
Monitor "eDP1"
SubSection "Display"
Depth 24
Modes "1920x1080"
EndSubSection
EndSection
Section "ServerLayout"
Identifier "Default Layout"
Screen 0 "Screen0"
Screen 1 "Screen1" RightOf "Screen0"
Screen 2 "Screen2" RightOf "Screen1"
EndSection
(I plugged two external screens to my DirectPort ports).
This works but I then have two different screens (:0.0 and :0.1) and the intel drivers keeps on segfaulting when I use them together or when I try xinerama. So I disabled my intel monitor and screen and everything is fine except the fact that I cannot use my laptop screen with my radeon card so I am left with only two screens out of 3 but I will investigate more this issue deeper later on.
Offline