LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (https://www.linuxquestions.org/questions/slackware-14/)
-   -   Slackware multi monitor config (https://www.linuxquestions.org/questions/slackware-14/slackware-multi-monitor-config-4175643001/)

jpallaria 11-24-2018 04:25 PM

Slackware multi monitor config
 
Hey, I've been following the beginners guide for my Slackware 14.2 install, and I'm working on the display configuration part, but I've run into some trouble and I need your help. For my hardware, I'm using an amd APU (ryzen 3 2200g) with no graphics card attached. I'm also doing an EFI setup with ELILO and the huge kernel (if that matters). I have not fully upgraded my slackpkg stuff yet, and I've chosen XFCE for my desktop environment.

The guide says to use either:
Code:

# X -configure
or
# xorgconfig

X -configure works ok for my single monitor when I "startx"; xorgconfig does not seem to be installed by default. My second monitor is undetected, according to my xrandr -q command. I checked out the xorg.conf man pages as well as the Multihead article on the arch wiki in order to write my own config file. Right now I have 2 files in my /etc/X11/xorg.conf.d/

10-monitor.conf:
Code:

Section "Monitor"
    Identifier "DVI1"
    Option "primary" "true"
EndSection
 
Section "Monitor"
    Identifier "HDMI1"
    Option "LeftOf" "DVI1"
EndSection
 
Section "Screen"
    Identifier "Screen0"
    Device "AMD"
    Monitor "DVI1"
    Monitor "HDMI1"
    DefaultDepth 24
    SubSection "Display"
        Depth 24
    EndSubSection
EndSection

20-amd.conf:
Code:

Section "Device"
        Identifier "AMD"
        Driver "amdgpu"
EndSection

The server fails on the device section, and I'm not sure how to continue. I've made sure that the xf86-video-amdgpu-1.1.0-x86_64-1.txz package is installed. Changing the driver back to "vesa" will start the server again, but it's the same result as the "X -configure" option. Is there something I'm missing?

Xorg.0.log: https://pastebin.com/6ca8XfPJ

jpallaria 11-25-2018 04:14 PM

Here is the modified .conf file I created based on what you sent me mrmazda, but I'm getting the same error I got before. Vesa is working, and xrandr -q shows the same "default" monitor connection. Also, I don't have a GPU connected; I'm using an APU and the onboard ports from my mobo.

Code:

#50-device.conf
Section "Device"
        Identifier "AMD"
        Driver "amdgpu"

        Option "monitor-DVI1"        "primary"
        Option "monitor-HDMI1"        "secondary"
EndSection

#50-monitor1.conf
Section "Monitor"
        Identifier        "primary"
        Option                "DPMS"        "off"
        Option                "PreferredMode"        "1920x1080"
EndSection

#50-monitor2.conf
Section "Monitor"
        Identifier        "secondary"
        Option                "DPMS"        "off"
        Option                "DefaultModes"        "on"
        Option                "PreferredMode"        "1920x1080"
        Option                "RightOf"        "primary"
EndSection

#50-screen1.conf
Section "Screen"
        Identifier        "ScreenLeft"
        Device                "amdgpu"
        Monitor                "primary"
EndSection

#50-screen2.conf
Section "Screen"
        Identifier        "ScreenRight"
        Device                "amdgpu"
        Monitor                "secondary"
EndSection

Original thread: https://www.linuxquestions.org/quest...on-4175642949/

mrmazda 11-25-2018 04:38 PM

Quote:

Originally Posted by jpallaria (Post 5929925)
Code:

        Option "monitor-DVI1"        "primary"
        Option "monitor-HDMI1"        "secondary"


Do those match up to the output from
Code:

xrandr --listproviders
???

jpallaria 11-25-2018 04:41 PM

My xrandr --listproviders shows
Code:

Providers: number : 0

mrmazda 11-25-2018 04:55 PM

Quote:

Originally Posted by jpallaria (Post 5929933)
My xrandr --listproviders shows
Code:

Providers: number : 0

That correlates to my comment in the first thread "The log reports no devices detected". I don't know what's missing that prevents any devices from being detected. What does
Code:

inxi -Gxx
report? Are there any clues to detection failure in the journal or dmesg?

jpallaria 11-25-2018 07:23 PM

Well, I did some more reading and figured I might need an LLVM of 5.0 or greater and Mesa of 18.0 or more for best compatibility with the 2200g APU I'm using. My slackware-14.2 inxi command was showing older versions of these, so, I installed slackware-current, but, it looks like these packages haven't changed since.

Code:

bash-4.3# inxi -Gxx
Graphics:  Device-1: Advanced Micro Devices [AMD/ATI] vendor: Micro-Star MSI driver: N/A bus ID: 38:00.0 chip ID: 1002:15dd
          Display: server: X.Org 1.18.3 driver: ati,vesa unloaded: modesetting,radeon alternate: fbdev
          resolution: 1920x1080~N/A
          OpenGL: renderer: Gallium 0.4 on llvmpipe (LLVM 3.8 128 bits) v: 3.3 Mesa 11.2.2 compat-v: 3.0 direct render: Yes

As far as dmesg goes, I found a few lines under "AMD", but I'm not too familiar with these type of entries..

Code:

bash-4.3# dmesg | grep "AMD"
[    0.000000] ACPI: SSDT 0x000000009D705140 00533D (v02 AMD    AmdTable 00000002 MSFT 02000002)
[    0.000000] ACPI: SSDT 0x000000009D70A480 0007DC (v01 AMD    AMD CPU  00000001 AMD  00000001)
[    0.000000] ACPI: CRAT 0x000000009D70AC60 000810 (v01 AMD    AMD CRAT 00000001 AMD  00000001)
[    0.000000] ACPI: CDIT 0x000000009D70B470 000029 (v01 AMD    AMD CDIT 00000001 AMD  00000001)
[    0.000000] ACPI: SSDT 0x000000009D70B4A0 002D89 (v01 AMD    AMD AOD  00000001 INTL 20120913)
[    0.000000] ACPI: IVRS 0x000000009D70E2F0 0000D0 (v02 AMD    AMD IVRS 00000001 AMD  00000000)
[    0.000000] ACPI: SSDT 0x000000009D70E3F8 000E96 (v01 AMD    AmdTable 00000001 INTL 20120913)
[    0.000000] ACPI: SSDT 0x000000009D70F290 000850 (v01 AMD    AmdTable 00000001 INTL 20120913)
[    0.000000] ACPI: SSDT 0x000000009D70FAE0 001A41 (v01 AMD    AmdTable 00000001 INTL 20120913)
[    0.000000] ACPI: SSDT 0x000000009D711528 0000F8 (v01 AMD    AMD PT  00001000 INTL 20120913)
[    0.007046] ACPI Exception: AE_ALREADY_EXISTS, (SSDT:  AMD PT) while loading table (20150930/tbxfload-193)
[    0.826665] smpboot: CPU0: AMD Ryzen 3 2200G with Radeon Vega Graphics (family: 0x17, model: 0x11, stepping: 0x0)
[    1.376199] AMD-Vi: Unable to write to IOMMU perf counter.
[    1.379626] AMD-Vi: Found IOMMU at 0000:00:00.2 cap 0x40
[    1.379629] AMD-Vi:  Extended features:  PPR NX GT IA GA PC
[    1.379633] AMD-Vi: Interrupt remapping enabled
[    1.379745] AMD-Vi: Lazy IO/TLB flushing enabled
[    1.380455] perf: AMD NB counters detected
[    1.380458] perf: AMD L2I counters detected


I will keep reading; my hardware is kind of new as well, so that might be part of the issue.

mrmazda 11-25-2018 08:08 PM

Quote:

Originally Posted by jpallaria (Post 5929981)
Code:

...chip ID: 1002:15dd...
Display: server: X.Org 1.18.3 driver: ati,vesa unloaded: modesetting,radeon alternate: fbdev...


The chip ID according to pci-ids.ucw.cz is a Raven Ridge series APU, but it doesn't identify the actual model. The next line reports the (prescribed) amdgpu driver is neither in use nor available. Is package xf86-video-amdgpu actually installed? For server 1.18.3 you're probably on the right track about newness being an issue. It may be the primary or only issue, since 1.18.3 is more than 30 months old. Before deciding newness is a complete blocker, you might give the modesetting driver a try, but it looks to me like you're going to need a more thorough upgrade to current, which according to PACKAGES.TXT has 1.20.3.

jpallaria 11-26-2018 02:00 AM

I messed around with the modesetting driver a little bit, but I ended up doing a full upgrade instead. I double checked and, yes, the amdgpu driver package was installed. My command results and log errors are slightly different now, though, and the device section is being detected. I guess that is (some) progress.

inxi output while in the tty thing (before doing the default/vesa startx):

Code:

bash-4.4# inxi -Gxx
Graphics:
  Device-1: AMD Raven Ridge [Radeon Vega Series / Radeon Vega Mobile Series]
  vendor: Micro-Star MSI driver: N/A bus ID: 38:00.0 chip ID: 1002:15dd
  Display: server: X.Org 1.20.3 driver: none
  unloaded: amdgpu alternate: fbdev resolution: 1920x1080~N/A
  "Advanced Graphics aren't available while in the tty thing" (or something like that)


Xorg.0.log (I copied just the amdgpu part)

Code:

[  9020.298] (II) LoadModule: "amdgpu"
[  9020.298] (II) Loading /usr/lib64/xorg/modules/drivers/amdgpu_drv.so
[  9020.299] (II) Module amdgpu: vendor="X.Org Foundation"
[  9020.299]        compiled for 1.20.1, module version = 18.1.0
[  9020.299]        Module class: X.Org Video Driver
[  9020.299]        ABI class: X.Org Video Driver, version 24.0
[  9020.299] (II) AMDGPU: Driver for AMD Radeon:
        All GPUs supported by the amdgpu kernel driver
[  9020.299] (--) using VT number 7

[  9020.300] (II) AMDGPU(0): [KMS] drm report modesetting isn't supported.
[  9020.300] (II) AMDGPU(1): [KMS] drm report modesetting isn't supported.
[  9020.300] (EE) Screen 0 deleted because of no matching config section.
[  9020.300] (II) UnloadModule: "amdgpu"
[  9020.300] (EE) Screen 0 deleted because of no matching config section.
[  9020.300] (II) UnloadModule: "amdgpu"
[  9020.300] (EE) Device(s) detected, but none match those in the config file.
[  9020.300] (EE)
Fatal server error:
[  9020.300] (EE) no screens found(EE)
[  9020.300] (EE)
Please consult the The X.Org Foundation support
        at http://wiki.x.org
 for help.
[  9020.300] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[  9020.300] (EE)
[  9020.306] (EE) Server terminated with error (1). Closing log file.

I changed my .conf files, but I'm still trying to figure out this "config section" thing.

Code:

#20-device.conf
Section "Device"
        Identifier "AMD0"
        Driver "amdgpu"
        Screen 0
EndSection

Section "Device"
        Identifier "AMD1"
        Driver "amdgpu"
        Screen 1
EndSection

#30-primary-monitor.conf
Section "Monitor"
        Identifier "DVI1"
        Option "DPMS" "off"
        Option "DDC" "off"
        Option "DefaultModes" "on"
        Option "PreferredMode" "1920x1080"
        Option "Position" "0 0"
EndSection

Section "Screen"
        Identifier "Primary"
        Device "AMD0"
        Monitor "DVI1"
        DefaultDepth 24
        SubSection "Display"
                Depth 24
                Modes "1920x1080"
                ViewPort 0 0
                Virtual 1920 1080
        EndSubSection
EndSection

#30-secondary-monitor.conf
Section "Monitor"
        Identifier "HDMI1"
        Option "DPMS" "off"
        Option "DDC" "off"
        Option "DefaultModes" "on"
        Option "PreferredMode" "1920x1080"
        Option "Position" "1920 0"
EndSection

Section "Screen"
        Identifier "Secondary"
        Device "AMD1"
        Monitor "HDMI1"
        DefaultDepth 24
        SubSection "Display"
                Depth 24
                Modes "1920x1080"
                ViewPort 1920 0
                Virtual 1920 1080
        EndSubSection
EndSection

#90-serverlayout.conf
Section "ServerLayout"
        Identifier "Main"
        Screen 0 "Primary"
        Screen 1 "Secondary" RightOf "Primary"
EndSection


mrmazda 11-26-2018 03:03 AM

What does xrandr --listproviders produce now?

Qury 11-26-2018 04:38 AM

Hey,

When i try to find out a problem i like to do it methodically so maybe this will help you too:
- assume the CPU is OK
- next: Motherboard -> is there any setting in BIOS in relation to video output, maybe you have to enable some settings to get the secondary output enabled
- next: Monitor + cable -> is your monitor and cables in good working order (connected, powered on,etc)
- next: OS does your OS detect the monitor/video device, etc...
- next: configuration is the detected device(s) configured correctly?

So since your monitor is not detected correctly, i would go ahead and check the bios settings first (assuming your external monitor and cable is all good).

mrmazda 11-26-2018 05:46 AM

You ought to be able to get going with a minimum of adapting of xorg.conf from what follows (I have no hardware supported by the amdgpu driver):
Code:

$ uname -a
Linux fi965 4.19.2-1-default #1 SMP PREEMPT Tue Nov 13 20:56:49 UTC 2018 (8adee6e) x86_64 x86_64 x86_64 GNU/Linux

$ inxi -Gxx
Graphics:  Device-1: Advanced Micro Devices [AMD/ATI] Cedar [Radeon HD 5000/6000/7350/8350 Series] vendor: PC Partner Limited
          driver: radeon v: kernel bus ID: 01:00.0 chip ID: 1002:68f9
          Display: server: X.Org 1.20.3 driver: modesetting resolution: 1920x1200~60Hz, 1920x1080~60Hz
          OpenGL: renderer: AMD CEDAR (DRM 2.50.0 / 4.19.2-1-default LLVM 6.0.1) v: 3.3 Mesa 18.1.7 compat-v: 3.1
          direct render: Yes

$ xrandr --listproviders
Providers: number : 1
Provider 0: id: 0x46; cap: 0xf (Source Output, Sink Output, Source Offload, Sink Offload); crtcs: 4; outputs: 3; associated providers: 0; name: modesetting
    output DVI-I-1
    output HDMI-1
    output VGA-1

$ cat /etc/X11/xorg.conf
Section "Device"
        Identifier      "ATI"
        Driver  "modesetting"
        Option  "monitor-DVI-I-1"      "ddvi"  # ATI DVI
        Option  "monitor-HDMI-1"        "dhdmi" # ATI HDMI
EndSection

Section "Monitor"
        Identifier      "ddvi"
        Option          "Primary"      "true"
        Option          "PreferredMode" "1920x1200"
EndSection

Section "Monitor"
        Identifier      "dhdmi"
        Option          "PreferredMode" "1920x1080"
        Option          "RightOf"      "ddvi"
EndSection

Section "Screen"
        Identifier      "ScreenLeft"
        Device          "ATI"
        Monitor        "ddvi"
EndSection

Section "Screen"
        Identifier      "ScreenRight"
        Device          "ATI"
        Monitor        "dhdmi"
EndSection

$ xrandr | egrep 'onnect|creen|\*' | grep -v disconn | sort -r
Screen 0: minimum 320 x 200, current 3840 x 1200, maximum 8192 x 8192
HDMI-1 connected 1920x1080+1920+0 (normal left inverted right x axis y axis) 698mm x 393mm
DVI-I-1 connected 1920x1200+0+0 (normal left inverted right x axis y axis) 519mm x 324mm
  1920x1200    59.95*+
  1920x1080    60.00*+  59.96    60.00    59.94    59.93    24.00    23.98


bassmadrigal 11-26-2018 12:24 PM

Quote:

Originally Posted by jpallaria (Post 5929981)
Well, I did some more reading and figured I might need an LLVM of 5.0 or greater and Mesa of 18.0 or more for best compatibility with the 2200g APU I'm using. My slackware-14.2 inxi command was showing older versions of these, so, I installed slackware-current, but, it looks like these packages haven't changed since.

If they didn't change, then I don't believe you successfully upgraded to -current. Both have been continually updated during -current's development process. LLVM was upgraded to v7.0 back in Sep 2018 and mesa was upgraded to v18.2.5 almost 2 weeks ago.

But you definitely need to be running -current to properly support Ryzen APUs. As you found, 14.2 is just too old to support them.

jpallaria 11-26-2018 08:51 PM

Quote:

If they didn't change, then I don't believe you successfully upgraded to -current. Both have been continually updated during -current's development process. LLVM was upgraded to v7.0 back in Sep 2018 and mesa was upgraded to v18.2.5 almost 2 weeks ago.
Yes, my mistake bass, I had -current installed, but didn't do a full slack upgrade yet when I posted. Once upgraded, I was getting the correct output you are talking about (using the basic vesa driver to get the OpenGL stuff):

Code:

bash-4.4# inxi -Gxx
Graphics:  Device-1: AMD Raven Ridge [Radeon Vega Series / Radeon Vega Mobile Series] vendor: Micro-Star MSI driver: N/A
          bus ID: 38:00.0 chip ID: 1002:15dd
          Display: server: X.Org 1.20.3 driver: vesa resolution: 1920x1080~N/A
          OpenGL: renderer: llvmpipe (LLVM 7.0 128 bits) v: 3.3 Mesa 18.2.5 compat-v: 3.1 direct render: Yes


I'll mess around with the modesetting some more to see if I can get something going; if I can't, then it's not really a big deal. Do people ever just stick with the base terminal for stuff? I'm only going to be reading about slackpkg things for now and maybe a basic server setup. Mostly I just wanted to get a base system going before I continued.

mrmazda 11-26-2018 08:53 PM

It turns out I do have a PCIe card supported by the amdgpu driver, though not anywhere near as new as a Raven Ridge:
Code:

$ uname -a
Linux hpg33 4.18.15-1-default #1 SMP PREEMPT Thu Oct 18 08:56:17 UTC 2018 (5a53676) x86_64 x86_64 x86_64 GNU/Linux

$ cat /proc/cmdline
...video=791 video=1440x900@60 radeon.si_support=0 amdgpu.si_support=1...

$ inxi -Gxx
Graphics:  Device-1: Advanced Micro Devices [AMD/ATI] Oland [Radeon HD 8570 / R7 240/340 OEM] vendor: Dell driver: amdgpu
          v: kernel bus ID: 04:00.0 chip ID: 1002:6611
          Display: server: X.Org 1.20.3 driver: amdgpu resolution: 1920x1200~60Hz, 2560x1080~60Hz
          OpenGL: renderer: AMD Radeon HD 8500 Series (OLAND DRM 3.26.0 4.18.15-1-default LLVM 6.0.1) v: 4.5 Mesa 18.1.7
          compat-v: 3.1 direct render: Yes

$ xrandr --listproviders
Providers: number : 1
Provider 0: id: 0x53; cap: 0xf (Source Output, Sink Output, Source Offload, Sink Offload); crtcs: 2; outputs: 2; associated providers: 0; name: AMD Radeon HD 8500 Series @ pci:0000:04:00.0
    output DVI-I-0
    output DisplayPort-0

$ cat /etc/X11/xorg.conf
Section "Device"
        Identifier      "AMD"
        Driver  "amdgpu"
        Option  "monitor-DisplayPort-0" "ddp"  # ATI DisplayPort
        Option  "monitor-DVI-I-0"      "ddvi"  # amdgpu DVI
EndSection

Section "Monitor"
        Identifier      "ddvi"
        Option          "Primary"      "true"
        Option          "DPMS"  "off"
        Option          "PreferredMode" "1920x1200"
        DisplaySize    948    254    # 120 DPI @ 4480x1200
EndSection

Section "Monitor"
        Identifier      "ddp"
        Option          "DPMS"  "off"
        Option          "RightOf"      "ddvi"
        Option          "PreferredMode" "2560x1080"
EndSection

Section "Screen"
        Identifier      "ScreenLeft"
        Device          "AMD"
        Monitor        "ddvi"
EndSection

Section "Screen"
        Identifier      "ScreenRight"
        Device          "AMD"
        Monitor        "ddp"
EndSection

$ xrandr | egrep 'onnect|creen|\*' | grep -v disconn | sort -r
Screen 0: minimum 320 x 200, current 4480 x 1200, maximum 16384 x 16384
DisplayPort-0 connected 2560x1080+1920+0 (normal left inverted right x axis y axis) 673mm x 284mm
DVI-I-0 connected primary 1920x1200+0+0 (normal left inverted right x axis y axis) 519mm x 324mm
  2560x1080    60.00*+
  1920x1200    59.95*+
$


jpallaria 12-01-2018 01:03 PM

I updated my BIOS and reinstalled/upgraded -current. I'm trying to use the modesetting driver, and after seeing this:
Code:

(EE) open /dev/dri/card0: No such file or directory
I found the man pages for the modesetting option:

Option "kmsdev" "string"
The framebuffer device to use. Default: /dev/dri/card0.

My current hardware is not using a GPU in the PCI slot, so /dev/dri/card0 doesn't exist. Is there somewhere I should be pointing this kmsdev instead?


All times are GMT -5. The time now is 03:22 AM.