On Sat, 26 Oct 2024 22:08:14 -0400 Qingyao Sun <sunqingyao19970...@icloud.com> wrote:
> failed to open /dev/dri/card1: Permission denied xenodm allows card0 but not card1. /etc/X11/xenodm/GiveConsole and /etc/X11/xenodm/TakeConsole have the lines chown $USER:$GROUP /dev/dri/card0 chown $USER:$GROUP /dev/dri/renderD128 chown root:wheel /dev/dri/card0 chown root:wheel /dev/dri/renderD128 Might need to be /dev/dri/card* and /dev/dri/renderD* to allow more than 1 card. You have 2 cards (drm1 at amdgpu0, drm0 at inteldrm0). I would "ls -l /dev/dri" to check owners, and try some chown commands as root, before editing GiveConsole and TakeConsole. Most OpenBSD users have only 1 card. I don't know whether 2 cards works on OpenBSD. I can see both cards in your Xorg.0.log, > [ 15.465] (--) PCI:*(0@0:2:0) 8086:5912:1028:07a1 rev 4, Mem @ > 0xee000000/16777216, 0xc0000000/268435456, I/O @ 0x0000f000/64 > [ 15.465] (--) PCI: (3@0:0:0) 1002:743f:1028:0041 rev 195, Mem @ > 0xd0000000/268435456, 0xe0000000/2097152, 0xef000000/1048576, I/O @ > 0x0000e000/256 but Xorg takes only 1 card, then "xrandr --listproviders" has only 1. This line stood out, > [ 15.462] (==) Not automatically adding GPU devices This seems to be Xorg refusing to add more than 1 GPU (cd /usr/xenocara/xserver && grep -R autoAddGPU). The default seems to add more GPUs on Linux, and use only 1 GPU on other systems like OpenBSD, so maybe multiple GPUs only works on Linux. I guess 2 ways for /etc/X11/xorg.conf to try multiple GPUs on OpenBSD. These might not work, I don't have xorg.conf on my own systems. The automatic way would be xorg.conf with no Device sections and Section "ServerFlags" Option "AutoAddGPU" "on" EndSection The manual way would have no AutoAddGPU and 2 Device sections (1 for each card). You have it for amdgpu0, > Section "Device" > Identifier "AMDgpu" > Driver "amdgpu" > BusID "PCI:3:0:0" > EndSection I don't know it for inteldrm0. Your Xorg.0.log had modesetting claim 0@0:2:0, so I guess, Section "Device" Identifier "Intel" Driver "modesetting" BusID "PCI:0:2:0" EndSection (The Identifier doesn't need to be "Intel", but does need to be different from the other device's Identifier. I don't know whether the Driver line is needed.) If either way works, then "xrandr --listproviders" would list both cards. --gkoehler