Announcement

Collapse
No announcement yet.

AMD Unleashes Initial AMDGPU Driver Support For GCN 1.0 / Southern Islands GPUs

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #71
    Ah, an update: https://cgit.freedesktop.org/~agd5f/...ext-4.8-wip-si

    runpm works now.

    glxinfo almost works now:
    Code:
    [FONT=monospace][COLOR=#000000]LIBGL_DEBUG=verbose DRI_PRIME=1 glxinfo | grep OpenGL [/COLOR]
    libGL: pci id for fd 5: 1002:6800, driver radeonsi
    libGL: OpenDriver: trying /usr/lib/xorg/modules/dri/tls/radeonsi_dri.so
    libGL: OpenDriver: trying /usr/lib/xorg/modules/dri/radeonsi_dri.so
    Invalid CIK pipe configuration, assuming P2
    libGL: Using DRI3 for screen 0
    [COLOR=#ff5454][B]OpenGL[/B][/COLOR][COLOR=#000000] vendor string: X.Org [/COLOR]
    [COLOR=#ff5454][B]OpenGL[/B][/COLOR][COLOR=#000000] renderer string: Gallium 0.4 on AMD PITCAIRN (DRM 3.2.0, LLVM 3.9.0) [/COLOR]
    [COLOR=#ff5454][B]OpenGL[/B][/COLOR][COLOR=#000000] core profile version string: 4.3 (Core Profile) Mesa 11.3.0-devel (git-3d2ad56) [/COLOR]
    [COLOR=#ff5454][B]OpenGL[/B][/COLOR][COLOR=#000000] core profile shading language version string: 4.30 [/COLOR]
    [COLOR=#ff5454][B]OpenGL[/B][/COLOR][COLOR=#000000] core profile context flags: (none) [/COLOR]
    [COLOR=#ff5454][B]OpenGL[/B][/COLOR][COLOR=#000000] core profile profile mask: core profile [/COLOR]
    [COLOR=#ff5454][B]OpenGL[/B][/COLOR][COLOR=#000000] core profile extensions:[/COLOR][/FONT]
    but then it hangs.

    Is there some public resource to track the progress or do the developers just keep pushing their WIP state until they have something to announce?

    Edit: Oops, how did I not see https://lists.freedesktop.org/archiv...ay/117413.html
    Last edited by haagch; 20 May 2016, 07:14 PM.

    Comment


    • #72
      with latest drm-next-4.8-wip-si GNOME works but looks bad (a lot of hotizontal lines in colors of my wallpapers)

      i've also tried fluxbox and ddx:modeseting and always looks the same.

      in dmesg i see a lot of:
      Code:
      "kernel: [drm] IH: CP EOP ring 0"
      sometimes:
      Code:
      "kernel: [drm:dce_v6_0_crtc_cursor_set2 [amdgpu]] *ERROR* bad cursor width or height 128 x 128"
      or
      Code:
      "kernel: [drm] xxxx: dce_v6_0_afmt_setmode ----no impl !!!!!!!!"
      i will try run glxinfo from gnome and look what's happen

      and glxinfo gives me this:
      Code:
      OpenGL renderer string: Gallium 0.4 on AMD CAPE VERDE (DRM 3.2.0, LLVM 3.9.0)
      OpenGL core profile version string: 4.2 (Core Profile) Mesa 11.3.0-devel (git-6a0e4f6)
      ...etc
      and glxheads:
      Code:
      before device_init
      after device_init
      before winsys_init
      after winsys_init
      before screen_create
      before backend init
      after backend init
      after screen_create
      before backend init
      after backend init
      Name: :0
      Display: 0x1f98020
      Window: 0xe00002
      Context: 0x1fb0140
      GL_VERSION: 3.0 Mesa 11.3.0-devel (git-6a0e4f6)
      GL_VENDOR: X.Org
      GL_RENDERER: Gallium 0.4 on AMD CAPE VERDE (DRM 3.2.0, LLVM 3.9.0)
      Last edited by frosth; 22 May 2016, 04:44 AM.

      Comment


      • #73
        Originally posted by frosth View Post
        Code:
        before device_init
        after device_init
        before winsys_init
        after winsys_init
        before screen_create
        before backend init
        after backend init
        after screen_create
        before backend init
        after backend init
        So marek was probably right about it being a rebase error and you can just revert/take out https://cgit.freedesktop.org/~mareko...0bc4d6e21ccdd1

        PRIME sadly doesn't work yet, produces some kernel error in some buffer copy function, but for some reason my journald logs seem to be corrupted/gone.

        Comment


        • #74
          main problem is when i start X i see nothing on the screen except lot of lines. i don't think revert this commit help... but will try it later ofc

          Comment


          • #75
            Yea, it's just debug output to find out where exactly it was hanging with the version that was first published, but with a fresh rebase it has resolved itself.
            For broken X output... Well, wait for the developers to debug it a bit or maybe look on #radeon on the freenode irc, maybe someone there knows something.

            Comment


            • #76
              Originally posted by bridgman View Post
              Sorry, missed the single-slot reference. If you add that, and keep the insistence on using newest architecture for AMD but not for NVidia, then definitely NVidia has a solution and we do not.

              I don't really understand that constraint though, since AFAICS you are not planning to use the card for anything but desktop & light OpenGL. Something like the R5 230 would fit your needs and is available in single-slot passive form. We keep the VLIW architecture going for low-end parts (where you don't generally see compute workloads) because it was very space-efficient and worked very well for graphics.
              Originally posted by drSeehas View Post
              Oh, it is not me, it is tajjada.
              I agree with you. A Cedar would do:
              https://geizhals.eu/?cat=gra16_512&x...082_1%7E1481_1


              OK,

              I listened to your advice. After buying my NVIDIA gt710, I decided to give AMD a try as well, as you said. I decided to buy a card from amazon, as amazon makes it easy to return it if I don't like it.

              So, I got a XFX Radeon HD5450, which, according to XFX's website, should support 2560x1600 max digital resolution. My monitor is 2560x1080 (144Hz FreeSync, which I use with my powerful gaming card (AMD R9 Nano), but I wouldn't mind using only 60Hz from Linux with my new cheap crappy card, so the new card I am buying doesn't have to support anything >60Hz), and only has HDMI and DisplayPort input, but these low-end cards obviously don't have DP, so HDMI is the only option left. And I use my R9 Nano via DisplayPort on the same monitor anyway, so DP is already occupied.

              The card arrived, and it turned out it only supported 1920x1080 and couldn't run my monitor at 2560x1080. So it was the wrong aspect ratio, and overall quite ugly. I tried some xrandr tricks, but I couldn't get my native resolution to work (even though the manufacturer website said that the maximum resolution supported is 2560x1600, greater than the one of my monitor), or even a custom resolution with the same aspect ratio as my screen, but lower than native. Then, I noticed that XFX's website said: "Supported HDMI standard: 1.2a." I don't know much about HDMI standards, but I assumed that it was too old to support my resolution, and the high resolution is only supported via DVI. So I tried plugging in my monitor into the card's DVI output using a DVI-HDMI adapter. I got no video output at all.

              So I returned the card to amazon.

              I still didn't give up, and decided to give the R5 230 a try. The only one which was in stock and could arrive the next day (I had to, I needed to travel soon after, so couldn't wait more), was, again, by XFX. It should be the same GPU, but looking at XFX's website, it said "Supported HDMI standard: 1.4a" this time. So I thought, great, this seems newer, maybe it will work. So I ordered that card. It arrived the next day, and, guess what, same problem. Maximum resolution supported with HDMI was 1920x1080. FFS, why can't manufacturers clearly list the supported resolutions for each individual output of the card. So I returned it as well. Maybe I should have tried one of the other manufacturers (Sapphire, etc), but I really doubt it would have made a difference.

              My NVIDIA GT710 works flawlessly with the nouveau driver, supports my screen resolution, and is even powerful enough to use hardware video decoding with some postprocessing shaders with the mpv media player, which is nice. Although I could certainly live without the postprocessing shaders (so even a weaker GPU would be fine), as long as H264 hardware decode is available, which is why I didn't mind giving old AMD cards a try. I guess I will stick with my NVIDIA GT710. It works great.

              Again, sorry for this. I am generally an AMD fan, and overall prefer AMD gpus in most cases. All my other cards are AMD (including my main high-end gaming card: an R9 Nano), and I bought an AMD card for my sister's PC as well. I also recommend AMD cards to others, especially to Linux users, because of the amazing open-source driver support. However, this time, NVIDIA clearly had the superior product for me: a cheap, single slot, passively cooled card, with a modern GPU architecture, which supports high resolutions up to 2560x1600 on both DVI *and* HDMI, that I can use with any of my monitors, and is even powerful enough for postprocessing shaders with video hardware decoding (which I certainly appreciate), and powerful enough to play Xonotic on almost max settings (not a requirement, I just did it for testing; I don't really care about playing games on the card, but still, I appreciate it).

              Comment


              • #77
                Hmm... I expected problems with the 5450 (HDMI 1.2a maxes out at 1920 IIRC) but the R5 230 definitely should support 2560x1600 with digital out. Not sure if 2560x1080 is a standard resolution in the driver yet, so you might have needed a custom modeline or something.
                Test signature

                Comment


                • #78
                  Originally posted by tajjada View Post
                  The card arrived, and it turned out it only supported 1920x1080 and couldn't run my monitor at 2560x1080. So it was the wrong aspect ratio, and overall quite ugly. I tried some xrandr tricks, but I couldn't get my native resolution to work (even though the manufacturer website said that the maximum resolution supported is 2560x1600, greater than the one of my monitor), or even a custom resolution with the same aspect ratio as my screen, but lower than native. Then, I noticed that XFX's website said: "Supported HDMI standard: 1.2a." I don't know much about HDMI standards, but I assumed that it was too old to support my resolution, and the high resolution is only supported via DVI. So I tried plugging in my monitor into the card's DVI output using a DVI-HDMI adapter. I got no video output at all.
                  The R5 230 (caicos) only supports 2560x1080 over duallink DVI or DP. It doesn't support it over HDMI. Using an HDMI-DVI adapter won't work since that only supports single link. You need a duallink DVI cable to the monitor.

                  Comment


                  • #79
                    So, I see, work continues: https://cgit.freedesktop.org/~agd5f/...ext-4.8-wip-si

                    Are there any estimates when it'll be actually usable?

                    On my intel+radeon hybrid system there are still severe issues.

                    Running glxinfo looks well at first, but then hangs. Looking at it with strace, the backend init seems to succeed two times, but the third time it hangs:
                    Code:
                    write(1, "before backend init\n", 20before backend init
                    )   = 20
                    ioctl(6, _IOC(_IOC_READ|_IOC_WRITE, 0x64, 0x43, 0x18), 0x7ffd24028510) = 0
                    ioctl(6, _IOC(_IOC_READ|_IOC_WRITE, 0x64, 0x44, 0x18), 0x7ffd240284f0) = 0
                    ioctl(6, _IOC(_IOC_READ|_IOC_WRITE, 0x64, 0x43, 0x18), 0x7ffd24028540) = 0
                    ioctl(6, _IOC(_IOC_READ|_IOC_WRITE, 0x64, 0x49, 0x20), 0x7ffd24028540) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
                    --- SIGWINCH {si_signo=SIGWINCH, si_code=SI_KERNEL} ---
                    ioctl(6, _IOC(_IOC_READ|_IOC_WRITE, 0x64, 0x49, 0x20), 0x7ffd24028540) = ? ERESTARTSYS (To be restarted if SA_RESTART is set)
                    --- SIGWINCH {si_signo=SIGWINCH, si_code=SI_KERNEL} ---                                                                                                                                      
                    ioctl(6, _IOC(_IOC_READ|_IOC_WRITE, 0x64, 0x49, 0x20)
                    And then I have to hard reset, because any further attempt to use the radeon GPU hangs X completely - including when trying to reboot and it presumably activates the gpu from runpm in order to exit X.

                    Running glxgears opens the window, but only shows some artifacts. Probably because buffer copying with PRIME doesn't work. This time my journal worked so here it is:
                    Code:
                    [FONT=monospace][COLOR=#000000]Mai 28 11:55:13 c-l kernel: [/COLOR][COLOR=#000000][B]------------[ cut here ]------------[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B]WARNING: CPU: 7 PID: 657 at drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c:1190 amdgpu_copy_buffer+0x1b1/0x1c0 [amdgpu][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B]Modules linked in: sha256_ssse3 sha256_generic hmac drbg ansi_cprng ctr ccm cmac rfcomm mousedev btrfs xor bnep msr raid6_pq iTCO_wdt iTCO_vendor_support arc4 iwldvm intel_rapl snd_h[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] lpc_ich soundcore mei shpchp thermal battery evdev mac_hid ac fjes tpm_tis tpm sch_fq_codel nfs lockd grace sunrpc fscache clevo_wmi(O) wmi fuse ip_tables x_tables ext4 crc16 jbd2 m[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B]CPU: 7 PID: 657 Comm: Xorg Tainted: G           O    4.6.0-rc7-mainline #17[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B]Hardware name: CLEVO                             P170EM/P170EM, BIOS 4.6.5 08/22/2012[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] 0000000000000286 00000000cd306996 ffff8807fdd679a0 ffffffff8131ecb8[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] 0000000000000000 0000000000000000 ffff8807fdd679e0 ffffffff81084e3a[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] 000004a609ec0000 0000000000000008 000000000005a000 000000000ff08000[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B]Call Trace:[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffff8131ecb8>] dump_stack+0x76/0x9e[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffff81084e3a>] __warn+0xda/0x100[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffff81084fa0>] warn_slowpath_null+0x30/0x40[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa08d2d91>] amdgpu_copy_buffer+0x1b1/0x1c0 [amdgpu][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa08d2e55>] amdgpu_move_blit+0xb5/0x190 [amdgpu][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa08d222b>] ? amdgpu_ttm_backend_bind+0x8b/0x1e0 [amdgpu][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa08d3301>] amdgpu_bo_move+0xc1/0x230 [amdgpu][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa060ffeb>] ttm_bo_handle_move_mem+0x29b/0x5e0 [ttm][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa0611189>] ttm_bo_validate+0x219/0x230 [ttm][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffff8150caf3>] ? scm_detach_fds+0x253/0x2b0[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa08d405b>] amdgpu_bo_pin_restricted+0x1bb/0x370 [amdgpu][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa08d4238>] amdgpu_bo_pin+0x28/0x30 [amdgpu][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa08e80f2>] amdgpu_gem_prime_pin+0x72/0x110 [amdgpu][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa001ff6d>] drm_gem_map_attach+0x6d/0x80 [drm][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffff8149df9c>] dma_buf_attach+0x8c/0x110[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa010e4bf>] i915_gem_prime_import+0x3f/0x100 [i915][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa00203e8>] drm_gem_prime_fd_to_handle+0xc8/0x1b0 [drm][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa00206f0>] drm_prime_fd_to_handle_ioctl+0x40/0x50 [drm][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa000603e>] drm_ioctl+0x15e/0x550 [drm][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffffa00206b0>] ? drm_prime_handle_to_fd_ioctl+0x70/0x70 [drm][/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffff813272fc>] ? timerqueue_add+0x6c/0xc0[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffff810fc290>] ? enqueue_hrtimer+0x50/0xc0[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffff8123cc4a>] ? __fget+0x8a/0xc0[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffff81231912>] do_vfs_ioctl+0xb2/0x5e0[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffff8123cc4a>] ? __fget+0x8a/0xc0[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffff81231ec8>] SyS_ioctl+0x88/0xa0[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B] [<ffffffff81634572>] entry_SYSCALL_64_fastpath+0x1a/0xa4[/B][/COLOR][COLOR=#000000] [/COLOR]
                    Mai 28 11:55:13 c-l kernel: [COLOR=#000000][B]---[ end trace 467d756c62324b4a ]---[/B][/COLOR][/FONT]
                    Apart from amdgpu, the intel driver (I think) still randomly locks up the machine without leaving a trace in any logs. As of at least a couple of days now Linus' git master branch does this too. If nobody else is doing it, I will have to bisect that, which always sucks with completely lockups.

                    Comment


                    • #80
                      Is this what I should be looking for for my 2013 Mac Pro?

                      It comes with two Firepro D300 cards, which seem to be rebranded W7000 cards with half the RAM (2 GB instead of 4). Ubuntu Gnome 16.04 booted nicely after I put nomodeset in the kernel line, but it runs using LLVMPIPE.

                      From what I gather for now I should go back to 14.04 and the fglrx driver, but if AMDGPU support is close, I'd rather hold out and try this.

                      Can anyone shed some light on what I'd need to do to get this running? I guess actually using the two cards will be out of the question?

                      Comment

                      Working...
                      X