Bug 195737

Summary: AMDGPU: incorrect monitor position on Xorg
Product: Drivers Reporter: Francois (francois5537)
Component: Video(DRI - non Intel)Assignee: drivers_video-dri
Status: RESOLVED WILL_FIX_LATER    
Severity: high CC: alexdeucher, francois5537
Priority: P1    
Hardware: All   
OS: Linux   
Kernel Version: 4.11.2 Subsystem:
Regression: No Bisected commit-id:
Attachments: dmesg
Xorg-log
Screen

Description Francois 2017-05-12 19:15:34 UTC
Starting KDE in Xorg on Linux 4.10.13 results in a wrong position being used by the monitor (LG 29UM58). When using Wayland instead the position is correctly calculated.
Comment 1 Francois 2017-05-12 19:17:39 UTC
A workaround is blacklisting the amdgpu module and use radeon instead, but this should not be needed on 270X.
Comment 2 Michel Dänzer 2017-05-13 08:24:39 UTC
Please attach the output of dmesg and xrandr and the Xorg log file corresponding to the problem.

What does "wrong position" mean exactly? What would be correct?
Comment 3 Francois 2017-05-13 10:25:52 UTC
(In reply to Michel Dänzer from comment #2)
> Please attach the output of dmesg and xrandr and the Xorg log file
> corresponding to the problem.
> 
> What does "wrong position" mean exactly? What would be correct?

Hi Michel,

Thanks for your reply. :)
I'll attach the logs and a screenshot later today.


When starting starting Xorg instead of Wayland on amdgpu (blacklisting radeon), the screen position is moving 5 pixels to the right, instead of being aligned in the center.

When using the radeon module (and blacklisting amdgpu), the screen position is aligned correctly. It therefore seems the width/position of the screen is calculated incorrectly, but only on X.
Comment 4 Francois 2017-05-25 09:00:03 UTC
Created attachment 256713 [details]
dmesg
Comment 5 Francois 2017-05-25 09:00:21 UTC
Created attachment 256715 [details]
Xorg-log
Comment 6 Francois 2017-05-25 09:02:37 UTC
Created attachment 256717 [details]
Screen
Comment 7 Francois 2017-05-25 09:03:41 UTC
Sorry for the delay. I've added the requested logs and provided a photo of what is happening on my screen atm. when using AMDGPU.

Thanks and please let me know if more info is needed. :)
Comment 8 Alex Deucher 2017-05-25 14:04:26 UTC
setting amdgpu.audio=0 should work around it. Audio support for SI in amdgpu will land upstream for 4.13
Comment 9 Francois 2017-05-28 12:37:57 UTC
@Alex Deucher: Thanks! :) This indeed fixes the incorrect monitor/screen position.

$ dmesg|grep -i amd
[    0.000000] Command line: initrd=\intel-ucode.img initrd=\initramfs-linux.img cryptdevice=UUID=ec38-43d6-bd67-d8ab219518dc:root:allow-discards root=/dev/mapper/root amdgpu.audio=0 intel_iommu=pt nowatchdog rw
[    0.000000] RAMDISK: [mem 0x7eeb6000-0x7fffefff]
[    0.000000] Kernel command line: initrd=\intel-ucode.img initrd=\initramfs-linux.img cryptdevice=UUID=8d188525-ec38-43d6-bd67-d8ab219518dc:root:allow-discards root=/dev/mapper/root amdgpu.audio=0 intel_iommu=pt nowatchdog rw
[    0.805446] [drm] amdgpu kernel modesetting enabled.
[    0.805937] fb: switching to amdgpudrmfb from EFI VGA
[    0.974815] amdgpu 0000:01:00.0: Invalid PCI ROM header signature: expecting 0xaa55, got 0xffff
[    0.974956] amdgpu 0000:01:00.0: VRAM: 2048M 0x0000000000000000 - 0x000000007FFFFFFF (2048M used)
[    0.974956] amdgpu 0000:01:00.0: GTT: 2048M 0x0000000080000000 - 0x00000000FFFFFFFF
[    0.975306] [drm] amdgpu: 2048M of VRAM memory ready
[    0.975307] [drm] amdgpu: 2048M of GTT memory ready.
[    0.993417] amdgpu 0000:01:00.0: PCIE GART of 2048M enabled (table at 0x0000000000040000).
[    0.993454] amdgpu 0000:01:00.0: amdgpu: using MSI.
[    0.993464] [drm] amdgpu: irq initialized.
[    0.993507] [drm] amdgpu: dpm initialized
[    0.993716] [drm] AMDGPU Display Connectors
[    0.993905] amdgpu 0000:01:00.0: fence driver on ring 0 use gpu addr 0x0000000080000010, cpu addr 0xffff880427d4c010
[    0.994002] amdgpu 0000:01:00.0: fence driver on ring 1 use gpu addr 0x0000000080000020, cpu addr 0xffff880427d4c020
[    0.994134] amdgpu 0000:01:00.0: fence driver on ring 2 use gpu addr 0x0000000080000030, cpu addr 0xffff880427d4c030
[    0.994179] amdgpu 0000:01:00.0: fence driver on ring 3 use gpu addr 0x0000000080000040, cpu addr 0xffff880427d4c040
[    0.994264] amdgpu 0000:01:00.0: fence driver on ring 4 use gpu addr 0x0000000080000050, cpu addr 0xffff880427d4c050
[    1.274891] fbcon: amdgpudrmfb (fb0) is primary device
[    1.520850] amdgpu 0000:01:00.0: fb0: amdgpudrmfb frame buffer device
[    1.815781] [drm] Initialized amdgpu 3.10.0 20150101 for 0000:01:00.0 on minor 0