Bug 92045

Summary: Xserver does not detect Fiji Radeon R9 Nano. Modesetting set to wrong resolution.
Product: xorg Reporter: charlie <bug0xa3d2>
Component: Driver/AMDgpuAssignee: xf86-video-ati maintainers <xorg-driver-ati>
Status: RESOLVED DUPLICATE QA Contact: Xorg Project Team <xorg-team>
Severity: normal    
Priority: medium    
Version: git   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:
Attachments:
Description Flags
Xorg log file when attempting to start X
none
Output of dmesg after startup.
none
This file show library paths.
none
Build options--xserver.cfg
none
Build options--mesa.cfg
none
Build options--xf86-video-amdgpu.cfg none

Description charlie 2015-09-19 06:19:12 UTC
Created attachment 118354 [details]
Xorg log file when attempting to start X

Modesetting does not match native monitor resolution of 3840x2160 but instead blanks out then, I guess, sets a resolution of 1920x1080 at startup.  Xserver does not detect a Fiji device after the startx command.

Hardware: Club3D Radeon R9 Nano
________
These git's were updated and compiled Fri. Sept. 18, 2015:

kernel
llvm
lib/libvdpau
mesa/drm
mesa/mesa
xserver
driver/glamor
driver/xf86-video-ati
driver/xf86-video-amdgpu
________
Some output of lspci -v:

00:01.0 VGA compatible controller: AMD/ATI [Advanced Micro Devices, Inc.] Device 130f (prog-if 00 [VGA controller])
        Subsystem: ASUSTeK Computer Inc. Device 85cb
        Flags: bus master, fast devsel, latency 0, IRQ 32
        Memory at d0000000 (64-bit, prefetchable) [size=256M]
        Memory at f0800000 (64-bit, prefetchable) [size=8M]
        I/O ports at f000 [size=256]
        Memory at feb00000 (32-bit, non-prefetchable) [size=256K]
        Expansion ROM at feb40000 [disabled] [size=128K]
        Capabilities: <access denied>
        Kernel driver in use: radeon
        Kernel modules: radeon


01:00.0 VGA compatible controller: AMD/ATI [Advanced Micro Devices, Inc.] Device 7300 (rev ca) (prog-if 00 [VGA controller])
        Subsystem: AMD/ATI [Advanced Micro Devices, Inc.] Device 0b36
        Flags: bus master, fast devsel, latency 0, IRQ 35
        Memory at e0000000 (64-bit, prefetchable) [size=256M]
        Memory at f0000000 (64-bit, prefetchable) [size=2M]
        I/O ports at e000 [size=256]
        Memory at fea00000 (32-bit, non-prefetchable) [size=256K]
        Expansion ROM at fea40000 [disabled] [size=128K]
        Capabilities: <access denied>
        Kernel driver in use: amdgpu
        Kernel modules: amdgpu
________
Firmware has been installed into the correct directories:

/lib/firmware/amdgpu/fiji_ce.bin
/lib/firmware/amdgpu/fiji_mc.bin
/lib/firmware/amdgpu/fiji_me.bin
/lib/firmware/amdgpu/fiji_mec.bin
/lib/firmware/amdgpu/fiji_mec2.bin
/lib/firmware/amdgpu/fiji_pfp.bin
/lib/firmware/amdgpu/fiji_rlc.bin
/lib/firmware/amdgpu/fiji_sdma.bin
/lib/firmware/amdgpu/fiji_sdma1.bin
/lib/firmware/amdgpu/fiji_smc.bin
/lib/firmware/amdgpu/fiji_uvd.bin
/lib/firmware/amdgpu/fiji_vce.bin
________
firmware location added to kernel config -- "cat /usr/src/linux/.config | grep fiji":

CONFIG_EXTRA_FIRMWARE="radeon/KAVERI_pfp.bin radeon/KAVERI_me.bin radeon/KAVERI_rlc.bin radeon/KAVERI_ce.bin radeon/KAVERI_mec.bin radeon/KAVERI_sdma.bin amdgpu/fiji_ce.bin amdgpu/fiji_mc.bin amdgpu/fiji_me.bin amdgpu/fiji_mec2.bin amdgpu/fiji_mec.bin amdgpu/fiji_pfp.bin amdgpu/fiji_rlc.bin amdgpu/fiji_sdma1.bin amdgpu/fiji_sdma.bin amdgpu/fiji_smc.bin amdgpu/fiji_uvd.bin amdgpu/fiji_vce.bin"
Comment 1 charlie 2015-09-19 06:20:34 UTC
Created attachment 118355 [details]
Output of dmesg after startup.
Comment 2 charlie 2015-09-19 06:31:51 UTC
Created attachment 118356 [details]
This file show library paths.
Comment 3 charlie 2015-09-19 06:36:13 UTC
Created attachment 118357 [details]
Build options--xserver.cfg
Comment 4 charlie 2015-09-19 06:37:43 UTC
Created attachment 118358 [details]
Build options--mesa.cfg
Comment 5 charlie 2015-09-19 06:39:09 UTC
Created attachment 118359 [details]
Build options--xf86-video-amdgpu.cfg
Comment 6 Andy Furniss 2015-09-19 09:38:56 UTC
Have a look in 

/etc/X11/xorg.conf.d/something.conf

I don't know what "something" will be for you but look and find the Driver line under Section Device.

Change it to 

    Driver      "amdgpu"
Comment 7 Andy Furniss 2015-09-19 09:56:08 UTC
(In reply to charlie from comment #3)
> Created attachment 118357 [details]
> Build options--xserver.cfg

I don't know if it happens by default now or not, but when I build xserver I use 

--enable-glamor

as AFAIK you get newer/different/better? glamor over using the "old" driver/glamor.
Comment 8 charlie 2015-09-20 02:06:34 UTC
I forgot that I made an /etc/X11/xorg.conf file.

Changing "Driver" line from "ati" to "amdgpu" allowed xserver start.  Also, deleting xorg.conf worked as well.

Modesetting is still limited to 1920x1080 after kernel loads.  And, the resolution will not go beyond 1920x1080 at 30hz after X starts.
Comment 9 charlie 2015-09-20 02:13:37 UTC
I don't know what you mean by, "as AFAIK you get newer/different/better? glamor over using the "old" driver/glamor."  Do you mean I don't have to compile "driver/glamor" if I build xserver with "--enable-glamor" flag which is the newer method of building X?  I will try it now.
Comment 10 charlie 2015-09-20 03:08:08 UTC
After further testing--modesetting detects correctly monitor resolution through HDMI but not through any of the Display Ports.
Comment 11 Andy Furniss 2015-09-20 09:44:35 UTC
(In reply to charlie from comment #9)
> I don't know what you mean by, "as AFAIK you get newer/different/better?
> glamor over using the "old" driver/glamor."  Do you mean I don't have to
> compile "driver/glamor" if I build xserver with "--enable-glamor" flag which
> is the newer method of building X?  I will try it now.

Yes AFAIK.

If you have Xorg.0.logs before and after you should be able to see a difference in module version like -

grep glamoregl /var/log/Xorg.0.log -A 1
[    23.286] (II) LoadModule: "glamoregl"
[    23.332] (II) Loading /usr/lib/xorg/modules/libglamoregl.so
[    23.450] (II) Module glamoregl: vendor="X.Org Foundation"
[    23.450]    compiled for 1.17.99, module version = 1.0.0

I don't have an old log, but IIRC if you are using the driver/glamor you will see a different/lower version.

http://cgit.freedesktop.org/xorg/driver/glamor/log/

shows no updates for > a year.

As for your dp res issue - I can't help there, I have a different card + no dp monitor to test.
Comment 12 charlie 2015-09-20 19:10:24 UTC
Is your card an R9 Nano card?  If it is then the issue maybe Club 3D specific.  If you have a R9 Fury X then the DP issue maybe only R9 Nano specific.
Comment 13 charlie 2015-09-20 19:11:28 UTC
P.S. This is if you had a Display Port monitor.
Comment 14 charlie 2015-09-26 00:04:25 UTC
Today, I compiled kernel git https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=03e8f644868f147e021e8660346890e731c2e435 (Merge branch 'for-linus-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs)

Display Port will still only set to 1920x1280 at 30hz.
Comment 15 charlie 2015-11-17 00:52:41 UTC
In git kernel listed here:http://cgit.freedesktop.org/~agd5f/linux/?h=amdgpu-powerplay the Display Port bug is gone.  Modesetting can now work at a monitor resolution of 3840x2160@60hz.  I think this bug can be closed now.
Comment 16 Alex Deucher 2015-11-17 15:05:18 UTC

*** This bug has been marked as a duplicate of bug 91896 ***

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.