AMD FirePro W600 不支持多屏显示

AMD FirePro W600 不支持多屏显示

我正在尝试使用两块 AMD FirePro W600 卡设置一个连接了 9 台显示器的系统,我需要将每台显示器配置为单独的 X-screen。到目前为止,我设法让两辆车都正常工作,即每台连接的显示器(测试中为 4 台)都能正确显示桌面,并且我可以使用显示设置在空间上对齐它们。

但是,我无法配置多个 X-screens。我使用 Ubuntu 的变体(18.04 和 18.10)进行了测试,使用了 Linux 安装附带的驱动程序,并尝试了 PPA 中的驱动程序(ppa:oibaf/graphics-drivers)和官方 AMD 驱动程序(amdgpu-pro-18.20 和 amdgpu-pro-18.30)。

我开始使用由以下程序提供的 XOrgConfCreator 创建 Xorg 配置:PsychToolbox matlab 包,而且还尝试了我使用 Xorg --configure 创建的变体。

第一个 PsychToolbox 变体导致登录时屏幕闪烁,我无法再登录。我发现 radeon 驱动程序仍在加载,因此禁用了它(基本上按照以下步骤操作描述在这里)。这样我就可以登录,并且所有连接的屏幕都处于活动状态。但是,X-screen 配置被忽略了,这意味着我没有单独的屏幕。虽然 xorg.conf 文件已加载,但当搞砸这个文件时,我最终得到了一个黑色的登录屏幕。但是,设备部分中的屏幕分配没有效果。我修改了 xorg.conf 文件,但无论我尝试什么,我要么得到一个黑色的登录,要么没有效果。

我在网上没有找到任何明确的信息表明我使用这张卡的所有尝试都是徒劳的。但我没有主意了,打算使用 AMD 并尝试使用 Nvidia 配置(最多 8 个屏幕)。也许这里有人对如何解决 AMD 卡的问题有一些建议。

我附加了 PsychToolbox Xorg 配置文件,并附加了日志文件,以及来自几个询问系统信息的调用的输出。

感谢您的任何建议,

系统信息:

$ lspci | grep VGA

01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cape Verde PRO [FirePro W600]

02:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cape Verde PRO [FirePro W600]


$ xrandr --listactivemonitors 

Monitors: 4

0: +DisplayPort-4    3840/600x2160/340+0+0        DisplayPort-4

1: +DisplayPort-1-9  1920/521x1080/293+5760+1080  DisplayPort-1-9

2: +DisplayPort-1-10 1920/521x1080/293+3840+0     DisplayPort-1-10

3: +DisplayPort-1-11 1920/521x1080/293+3840+1080  DisplayPort-1-11


$ sudo lshw -C display

*-display                 

    description: VGA compatible controller

    product: Cape Verde PRO [FirePro W600]

    vendor: Advanced Micro Devices, Inc. [AMD/ATI]

    physical id: 0

    bus info: pci@0000:01:00.0

    version: 00

    width: 64 bits

    clock: 33MHz

    capabilities: pm pciexpress msi vga_controller bus_master cap_list rom

    configuration: driver=amdgpu latency=0

    resources: irq:43 memory:e0000000-efffffff memory:fbe00000-fbe3ffff ioport:e000(size=256) memory:c0000-dffff

*-display

    description: VGA compatible controller

    product: Cape Verde PRO [FirePro W600]

    vendor: Advanced Micro Devices, Inc. [AMD/ATI]

    physical id: 0

    bus info: pci@0000:02:00.0

    version: 00

    width: 64 bits

    clock: 33MHz

    capabilities: pm pciexpress msi vga_controller bus_master cap_list rom

    configuration: driver=amdgpu latency=0


    resources: irq:44 memory:d0000000-dfffffff memory:fbd00000-fbd3ffff ioport:d000(size=256) memory:fbd40000-fbd5ffff


$ sudo inxi -F -x

System:    Host: pop-os Kernel: 4.15.0-42-lowlatency x86_64 bits: 64 gcc: 7.3.0

        Desktop: Xfce 4.12.3 (Gtk 2.24.31) Distro: Pop!_OS 18.04 LTS

Machine:   Device: desktop Mobo: ASUSTeK model: PRIME X299-A v: Rev 1.xx serial: 170603472500479

        UEFI [Legacy]: American Megatrends v: 1301 date: 03/07/2018

CPU:       Quad core Intel Core i7-7740X (-MT-MCP-) arch: Skylake rev.9 cache: 8192 KB

        flags: (lm nx sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx) bmips: 34368

        clock speeds: max: 4500 MHz 1: 800 MHz 2: 800 MHz 3: 800 MHz 4: 800 MHz 5: 800 MHz 6: 800 MHz

        7: 800 MHz 8: 800 MHz

Graphics:  Card-1: Advanced Micro Devices [AMD/ATI] Cape Verde PRO [FirePro W600] bus-ID: 01:00.0

        Card-2: Advanced Micro Devices [AMD/ATI] Cape Verde PRO [FirePro W600] bus-ID: 02:00.0

        Display Server: X.Org 1.19.6 driver: (unloaded: amdgpu)

        Resolution: [email protected], [email protected], [email protected], [email protected]

        OpenGL: renderer: ATI FirePro V(FireGL V) Graphics Adapter (VERDE, DRM 3.23.0, 4.15.0-42-lowlatency, LLVM 7.0.1)

        version: 4.5 Mesa 19.0.0-devel (git-8f401b0 2018-12-11 bionic-oibaf-ppa) Direct Render: Yes

$ dmesg | grep amd
[    0.000000] Linux version 4.15.0-42-lowlatency (buildd@lgw01-amd64-023) (gcc version 7.3.0 (Ubuntu 7.3.0-16ubuntu3)) #45-Ubuntu SMP PREEMPT Thu Nov 15 23:24:08 UTC 2018 (Ubuntu 4.15.0-42.45-lowlatency 4.15.18)
[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-4.15.0-42-lowlatency root=UUID=74a40da3-ff9d-4fac-97be-0a1cf8046513 ro quiet splash radeon.cik_support=0 amdgpu.cik_support=1 radeon.si_support=0 amdgpu.si_support=1 modprobe.blacklist=radeon vt.handoff=1
[    0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-4.15.0-42-lowlatency root=UUID=74a40da3-ff9d-4fac-97be-0a1cf8046513 ro quiet splash radeon.cik_support=0 amdgpu.cik_support=1 radeon.si_support=0 amdgpu.si_support=1 modprobe.blacklist=radeon vt.handoff=1
[    0.839805] pcie_mp2_amd: AMD(R) PCI-E MP2 Communication Driver Version: 1.0
[    0.953879] [drm] amdgpu kernel modesetting enabled.
[    0.956397] fb: switching to amdgpudrmfb from VESA VGA
[    0.971826] amdgpu 0000:01:00.0: VRAM: 2048M 0x000000F400000000 - 0x000000F47FFFFFFF (2048M used)
[    0.971827] amdgpu 0000:01:00.0: GTT: 1024M 0x0000000000000000 - 0x000000003FFFFFFF
[    0.971941] [drm] amdgpu: 2048M of VRAM memory ready
[    0.971942] [drm] amdgpu: 3072M of GTT memory ready.
[    0.972429] amdgpu 0000:01:00.0: PCIE GART of 1024M enabled (table at 0x000000F400040000).
[    0.972458] amdgpu 0000:01:00.0: amdgpu: using MSI.
[    0.972541] [drm] amdgpu: irq initialized.
[    0.972583] [drm] amdgpu: dpm initialized
[    0.973138] amdgpu 0000:01:00.0: fence driver on ring 0 use gpu addr 0x0000000000400080, cpu addr 0x        (ptrval)
[    0.973190] amdgpu 0000:01:00.0: fence driver on ring 1 use gpu addr 0x0000000000400100, cpu addr 0x        (ptrval)
[    0.973237] amdgpu 0000:01:00.0: fence driver on ring 2 use gpu addr 0x0000000000400180, cpu addr 0x        (ptrval)
[    0.973284] amdgpu 0000:01:00.0: fence driver on ring 3 use gpu addr 0x0000000000400200, cpu addr 0x        (ptrval)
[    0.973326] amdgpu 0000:01:00.0: fence driver on ring 4 use gpu addr 0x0000000000400280, cpu addr 0x        (ptrval)
[    1.333254] fbcon: amdgpudrmfb (fb0) is primary device
[    1.333357] amdgpu 0000:01:00.0: fb0: amdgpudrmfb frame buffer device
[    1.345258] amdgpu 0000:01:00.0: kfd not supported on this ASIC
[    1.345267] [drm] Initialized amdgpu 3.23.0 20150101 for 0000:01:00.0 on minor 0
[    1.345294] amdgpu 0000:02:00.0: enabling device (0000 -> 0003)
[    1.880927] amdgpu 0000:02:00.0: VRAM: 2048M 0x000000F400000000 - 0x000000F47FFFFFFF (2048M used)
[    1.880928] amdgpu 0000:02:00.0: GTT: 1024M 0x0000000000000000 - 0x000000003FFFFFFF
[    1.880940] [drm] amdgpu: 2048M of VRAM memory ready
[    1.880941] [drm] amdgpu: 3072M of GTT memory ready.
[    1.881411] amdgpu 0000:02:00.0: PCIE GART of 1024M enabled (table at 0x000000F400040000).
[    1.881443] amdgpu 0000:02:00.0: amdgpu: using MSI.
[    1.881493] [drm] amdgpu: irq initialized.
[    1.881516] [drm] amdgpu: dpm initialized
[    1.881812] amdgpu 0000:02:00.0: fence driver on ring 0 use gpu addr 0x0000000000400080, cpu addr 0x        (ptrval)
[    1.881830] amdgpu 0000:02:00.0: fence driver on ring 1 use gpu addr 0x0000000000400100, cpu addr 0x        (ptrval)
[    1.881845] amdgpu 0000:02:00.0: fence driver on ring 2 use gpu addr 0x0000000000400180, cpu addr 0x        (ptrval)
[    1.881861] amdgpu 0000:02:00.0: fence driver on ring 3 use gpu addr 0x0000000000400200, cpu addr 0x        (ptrval)
[    1.881874] amdgpu 0000:02:00.0: fence driver on ring 4 use gpu addr 0x0000000000400280, cpu addr 0x        (ptrval)
[    2.286971] amdgpu 0000:02:00.0: fb1: amdgpudrmfb frame buffer device
[    2.287015] amdgpu 0000:02:00.0: kfd not supported on this ASIC
[    2.287021] [drm] Initialized amdgpu 3.23.0 20150101 for 0000:02:00.0 on minor 1
[    5.284487] amdgpu 0000:02:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=none
[    5.284489] amdgpu 0000:01:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=io+mem

$ lsmod | grep amd
amdkfd                180224  2
amd_iommu_v2           20480  1 amdkfd
amdgpu               2703360  21
chash                  16384  1 amdgpu
i2c_algo_bit           16384  1 amdgpu
ttm                   102400  1 amdgpu
drm_kms_helper        172032  1 amdgpu
drm                   397312  10 drm_kms_helper,amdgpu,ttm

Xorg 配置

# Auto generated xorg.conf - Created by Psychtoolbox XOrgConfCreator.

Section "ServerLayout"
Identifier    "PTB-Hydra"
Screen 0      "Screen0" 0 0
Screen 1      "Screen1" RightOf "Screen0"
Screen 2      "Screen2" RightOf "Screen1"
Screen 3      "Screen3" RightOf "Screen2"
EndSection

Section "Device"
    Identifier "AMDGPU"
    Driver "amdgpu"
    Option "AccelMethod" "glamor"
    Option "DRI" "3"
EndSection

Section "Monitor"
    Identifier    "DisplayPort-4"
EndSection

Section "Monitor"
    Identifier    "DisplayPort-1-9"
EndSection

Section "Monitor"
    Identifier    "DisplayPort-1-10"
EndSection

Section "Monitor"
    Identifier    "DisplayPort-1-11"
EndSection

Section "Device"
    Identifier  "Card0"
    Driver      "amdgpu"
    Option      "ZaphodHeads" "DisplayPort-4"
    Option      "Monitor-DisplayPort-4" "DisplayPort-4"
    Screen 0
EndSection

Section "Device"
    Identifier  "Card1"
    Driver      "amdgpu"
    Option      "ZaphodHeads" "DisplayPort-1-9"
    Option      "Monitor-DisplayPort-1-9" "DisplayPort-1-9"
    Screen 1
EndSection

Section "Device"
    Identifier  "Card2"
    Driver      "amdgpu"
    Option      "ZaphodHeads" "DisplayPort-1-10"
    Option      "Monitor-DisplayPort-1-10" "DisplayPort-1-10"
    Screen 2
EndSection

Section "Device"
    Identifier  "Card3"
    Driver      "amdgpu"
    Option      "ZaphodHeads" "DisplayPort-1-11"
    Option      "Monitor-DisplayPort-1-11" "DisplayPort-1-11"
    Screen 3
EndSection

Section "Screen"
    Identifier    "Screen0"
    Device        "Card0"
    Monitor       "DisplayPort-4"
EndSection

Section "Screen"
    Identifier    "Screen1"
    Device        "Card1"
    Monitor       "DisplayPort-1-9"
EndSection

Section "Screen"
    Identifier    "Screen2"
    Device        "Card2"
    Monitor       "DisplayPort-1-10"
EndSection

Section "Screen"
    Identifier    "Screen3"
    Device        "Card3"
    Monitor       "DisplayPort-1-11"
EndSection

答案1

事实证明,主要问题似乎是 amdgpu 驱动程序中的一个错误,希望现在能够修复。

看:

相关内容