Announcement

Collapse
No announcement yet.

Terascale and Southern Islands - enable amdgpu without blacklisting radeon

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

  • Terascale and Southern Islands - enable amdgpu without blacklisting radeon

    I have a laptop with a Richland APU (A10-5750M with HD 8650G) and a Southern Islands (GCN 1.0) card. I want to use the amdgpu kernel driver for the GCN card without blacklisting the radeon driver (because the HD 8650G). I tried to use the amdgpu.si_support=1 radeon.si_support=0 with the Linux 4.13, 4.15 and 4.16, but the system (I have Lubuntu 16.04.4 and Arch Linux) couldn't boot properly if I added these options. Is there any way to switch to the amdgpu kernel driver and use the RADV also (If I also can use some kind of OpenCL driver would be nice) for the GCN card?
    Thank you for any suggestion!

  • #2
    A little status update:
    If I use the amdgpu.si_support=1 radeon.si_support=0 with Lubuntu 16.04.4 and Linux 4.16, then the system boots, but I only have terminal, the GUI fails to start. When I checked the devices with lspci, I saw that the right kernel modules loaded for both GPU (radeon for the Terascale and amdgpu for the GCN), but the lightdm couldn't start. In the log files I found this part at the end:
    Fatal server error:
    AddScreen/ScreenInit failed for driver
    So the system can't initialise the display/screen when both kernel modules are in use, but I still don't know why. Or precisely can't boot properly when the amdgpu kernel driver also in use, because I think my problem is the same as this one: AMD APU + AMD GPU won't boot into GUI with amdgpu

    Comment


    • #3
      You may have to force the X driver per bus id in your xorg config.

      Comment


      • #4
        I made the following xorg.conf file (based on the Arch Linux Xorg help page):

        Code:
        Section "Device"
            Identifier             "TERASCALE"
            Driver                 "radeon"
            BusID                  "PCI:00:01.0"
        EndSection
        
        Section "Device"
            Identifier             "GCN"
            Driver                 "amdgpu"
            BusID                  "PCI:01:00.0"
        EndSection
        I put this into the /etc/X11/ folder. After this I started the system with the following GRUB_CMDLINE_LINUX_DEFAULT options:
        Code:
        amdgpu.si_support=1 radeon.si_support=0 radeon.runpm=0 amdgpu.runpm=0
        I used the runpm options because I found these:
        Bug 105573 - AddScreen/ScreenInit failed for gpu driver 0 -1 / amdgpu
        R600 + Radeon SI switchable graphics on Ubuntu 16.04+

        After the restart two thing happened:
        1. The system activates the amdgpu for the card - as expected - but still can't boot the GUI and I still get the same error:
        Code:
        [    83.962] (II) RADEON(G0): [DRI2] Setup complete
        [    83.962] (II) RADEON(G0): [DRI2]   DRI driver: radeonsi
        [    83.962] (II) RADEON(G0): [DRI2]   VDPAU driver: radeonsi
        [    83.962] (EE) RADEON(G0): failed to initialise surface manager
        [    83.962] (EE) RADEON(G0): radeon_setup_kernel_mem failed
        [    83.962] (EE) 
        Fatal server error:
        [    83.962] (EE) AddScreen/ScreenInit failed for gpu driver 0 -1
        2. The system renamed the xorg.conf file which is created by myself and put the current date after the end of the filename, so I got this:
        Code:
        xorg.conf -> xorg.conf.04132018


        So, still no success. Do you have any other idea or did I do something in the wrong way?

        Comment


        • #5
          Funnily enough starting to sound like this migration is just tons simpler with Wayland. There setting those variables in kernel line resulted in a working setup for me with no further changes.

          Comment


          • #6
            I think first I try these modification with my already existing Arch Linux and hope I can make it work.

            Comment


            • #7
              Update:
              I tried under Arch Linux the amdgpu.si_support=1 radeon.si_support=0 settings with Linux 4.16 and I also set the MODULES="amdgpu radeon" in mkinitcpio.
              1 out of 10 times the system boots and the AMDGPU works properly (I have Vulkan and other fancy stuff) but most of the time the GUI can't start with the usual error:


              Code:
              AddScreen/ScreenInit failed for gpu driver 0 -1
              It is like the russian roulette, but with amdgpu.

              Comment

              Working...
              X