RX 580 Supported?

Thank you. I'm also running Xorg on Threadripper 1950X with an RX-580 using amdgpu and drm-next-kmod. 4K res via Display Port, without problems. And yes, I'm seeing these occasional blankings, but they are so rare and fast, that I wasn't sure if it was the screen or me blinking. :)

However, OpenCL is broken for me, and no audio to monitor nor HDMI ports (regular digital and analog audio okay). Did you manage to get one or both of those to run on RX-580?

Thanks.
 
I posted a reply in your OpenCL thread.
Regarding the HDMI audio, initially when I installed the system (as described in the tutorial above) HDMI audio was available in the Pulseaudio mixer. However, I removed it by reconfiguring the port, because I do not use an HDMI audio device.
I believe, you can recompile audio/pulseaudio and change the configuration to include HDMI support. You may have to do this also for ALSA or whatever you use for sound output.
 
Thank you for the help. Much appreciated.

Adding HDMI support to audio/pulseaudio is a good idea. Unfortunately, I see no HDMI option when running make config. There are only options for AVAHI, GCONF, SIMD, ALSA, JACK, SOXR, SPEEX, BASH, ZSH, TDB, GDBM, SIMPLE. None apply to HDMI. There is also no knob in the Makefile that seems related to HDMI.

Edit: Sound is not supported yet, according to upstream.
 
An update to my last post, FreeBSD 12.0-RELEASE is out. I have just upgraded and the minor graphical glitch is fixed. With regard to the AMDGPU graphics 12.0-RELEASE works better than 11.2-RELEASE for me.
 
Thanks for this update, sounds great! So is 12.0 using the new drm-next by default? And how much 3D-acceleration do you have, do you have more than OpenGL3.0 when you do a glxinfo?
 
The drm port has been renamed to drm-fbsd12.0-kmod and "next" is no longer available, so I had to uninstall "next" and install "fbsd12.0". I believe this is the continued code from drm-next-kmod, which has been split into ports for 11 and 12.
I cannot assess the 3D-acceleration stats. I have pasted the output of glxinfo here: https://pastebin.com/gCmhKphM , maybe you can get more out of it.
 
I have a HP 15-BS576TX laptop (bought in 2017 November) with switchable graphics - AMD Radeon 520 dGPU and Intel HD 620 iGPU. It works good in Linux using amdgpu driver although the Radeon 520 is GCN 1.0 only. Wonder, if I can install FreeBSD 12.0 on this laptop.
 
I have a HP 15-BS576TX laptop (bought in 2017 November) with switchable graphics - AMD Radeon 520 dGPU and Intel HD 620 iGPU. It works good in Linux using amdgpu driver although the Radeon 520 is GCN 1.0 only. Wonder, if I can install FreeBSD 12.0 on this laptop.
Just take a look at the table of supported models:
https://wiki.freebsd.org/Graphics/AMD-GPU-Matrix
https://wiki.freebsd.org/Graphics/Intel-GPU-Matrix

Here you can find the technical names matching your card's marketing name:
https://www.x.org/wiki/RadeonFeature/#Decoder_ring_for_engineering_vs_marketing_names

I am not completely sure but your card should be supported via radeonkms driver and not amdgpu. You have to doublecheck on that.
 
Thanks for the writeup, tested on 12.0-REL-p4 and everything works. Soon testing some 4K monitor.
 
Thanks for the writeup, tested on 12.0-REL-p4 and everything works. Soon testing some 4K monitor.

Well, it works, but compared to my old setup, it hangs often, see


Currently:
drm-fbsd12.0-kmod-4.16.g20190430 DRM modules for the linuxkpi-based KMS components
drm_info-2.1.0 Small utility to dump info about DRM devices
libdrm-2.4.98_1,1 Userspace interface to kernel Direct Rendering Module services
xf86-video-amdgpu-19.0.1 X.Org amdgpu display driver

10 1 0xffffffff82f21000 815b amdgpu_polaris10_mc_bin.ko
11 1 0xffffffff82f2a000 4421 amdgpu_polaris10_pfp_2_bin.ko
12 1 0xffffffff82f2f000 441f amdgpu_polaris10_me_2_bin.ko
13 1 0xffffffff82f34000 241f amdgpu_polaris10_ce_2_bin.ko
14 1 0xffffffff82f37000 5d3d amdgpu_polaris10_rlc_bin.ko
15 1 0xffffffff82f3d000 40431 amdgpu_polaris10_mec_2_bin.ko
16 1 0xffffffff82f7e000 40433 amdgpu_polaris10_mec2_2_bin.ko
17 1 0xffffffff82fbf000 331f amdgpu_polaris10_sdma_bin.ko
18 1 0xffffffff82fc3000 3321 amdgpu_polaris10_sdma1_bin.ko
19 1 0xffffffff82fc7000 5bbfd amdgpu_polaris10_uvd_bin.ko
20 1 0xffffffff83023000 28d1d amdgpu_polaris10_vce_bin.ko
21 1 0xffffffff8304c000 1fe51 amdgpu_polaris10_k_smc_bin.ko
 
UPDATE: Use latest 12.0-RELEASE. Instead of drm-next-kmod, use drm-fbsd12.0-kmod.

I succeeded in making RX 580 work with Xorg. There is a minor glitch: From time to time picture (and sound) freezes for half a second or so. It happens occasionally, but otherwise it behaves very well.
I am posting the tutorial here. Make sure to tweak for your processor and desired environment.
The example is for AMD RYZEN Threadripper CPU, RX 580 videocard with KDE 5.
Bash:
# I installed a standard 11.2-RELEASE FreeBSD on ZFS (2 mirrored nvme drives) with encryption

# After install:
# Important: Boot password is always with en_US keyboard layout!

# Support for AMD RYZEN/Threadripper CPU. Do not use on other CPUs!
echo "CPUTYPE=znver1" >> /etc/make.conf

# Workstation configuration with AMDGPU

    portsnap fetch extract update

    cd /usr/ports/ports-mgmt/portmaster
    make install clean BATCH=yes

    cd /usr/ports/ports-mgmt/portupgrade
    make install clean BATCH=yes

    portmaster --list-origins

    portsnap fetch update
    portmaster -Da
    # Or alternatively rebuild all ports like this: https://forums.freebsd.org/threads/rebuilding-all-ports-with-portmaster.51210/
    # Important! This takes a very long time!
  
    # Or use your favorite editor here...
    cd /usr/ports/editors/nano
    make install clean BATCH=yes


## Graphics driver amdgpu

    # Direct rendering driver DRM, choose one from "next" or "stable". Next has the latest code.
    cd /usr/ports/graphics/drm-next-kmod/
    #cd /usr/ports/graphics/drm-stable-kmod/
    make install clean BATCH=yes

    # This should have been installed by the command above but verify!
    cd /usr/ports/graphics/gpu-firmware-kmod/
    make install clean BATCH=yes

    # X driver is a must
    cd /usr/ports/x11-drivers/xf86-video-amdgpu/
    make install clean BATCH=yes

    # Xorg configuration
    # 1. create (I get segmentation faults, but the config is created properly nevertheless)
    Xorg -configure
    # 2. Verify that the used driver is amdgpu
    cat /root/xorg.conf.new | grep -s8 amdgpu
    # 3. TearFree option needs to be enabled. Otherwise vertical lines are torn badly in videos.
    nano /root/xorg.conf.new
    # (enable it in Device section)
    Option    "TearFree"    "True"
    # 4. Enable the configuration by copying to the etc location.
    mv /root/xorg.conf.new /usr/local/etc/X11/xorg.conf.d/xorg.conf

    # Load amdgpu driver in kernel, /etc/rc.conf
    kld_list="amdgpu"

    # This is a workaround for a conflict between UEFI video and AMDGPU.
    # AMDGPU will not work without this workaround, at the time of writing.
    # As a side-effect, first part of the boot process results in jumbled pixels on screen (text is not readable) but  don't panic, it starts working after a few seconds.
    #
    # edit /boot/loader.conf
    hw.syscons.disable=1
    kern.vty=vt


## Install desktop environment (I use KDE 5, but choose your preferred one). Packages are optional, not needed for AMDGPU to work properly with Xorg.

    cd /usr/ports/x11/xorg/
    make install clean BATCH=yes

    cd /usr/ports/x11/kde5/
    make install clean BATCH=yes

    cd /usr/ports/www/falkon/
    make install clean BATCH=yes

    cd /usr/ports/x11/sddm/
    make install clean BATCH=yes

    cd /usr/ports/sysutils/hal/
    make install clean BATCH=yes

    cd /usr/ports/accessibility/redshift/
    make install clean BATCH=yes

    cd /usr/ports/benchmarks/glmark2
    make install clean BATCH=yes

    #cd /usr/ports/graphics/mesa-dri
    #make install clean BATCH=yes

    #cd /usr/ports/graphics/mesa-libs
    #make install clean BATCH=yes

    cd /usr/ports/graphics/mesa-demos
    make install clean BATCH=yes

    cd /usr/ports/lang/clover
    make install clean BATCH=yes

    #cd /usr/ports/graphics/vulkan-sdk
    #make install clean BATCH=yes

    #cd /usr/ports/games/vkquake
    #make install clean BATCH=yes


    #cd /usr/ports/graphics/krita/
    #make install clean BATCH=yes

    # Start KDE automatically
    sysrc sddm_enable=YES
    sysrc hald_enable=YES
    sysrc dbus_enable=YES
    service sddm start


# drm-next-kmod requires the user to be in group "video". "wheel" group is necessary for su.
pw usermod john -G video,wheel,operator

Special thanks to pestslent1 and MYXOMOP.

Thanks! This helped me a lot! In my case i stumbled upon, that it was easier to just pkg install drm-fbsd12.0.kmod.
 
Back
Top