Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Display modesetting / repositioning doesn't work with multi-GPU #8512

Open
CodingKoopa opened this issue Dec 26, 2024 · 1 comment
Open

Display modesetting / repositioning doesn't work with multi-GPU #8512

CodingKoopa opened this issue Dec 26, 2024 · 1 comment
Labels
bug Not working as intended

Comments

@CodingKoopa
Copy link

Please fill out the following:

$ ls -l /sys/class/drm
total 0
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card1 -> ../../devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/drm/card1
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card1-DP-1 -> ../../devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/drm/card1/card1-DP-1
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card1-eDP-1 -> ../../devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/drm/card1/card1-eDP-1
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card1-Writeback-1 -> ../../devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/drm/card1/card1-Writeback-1
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card2 -> ../../devices/pci0000:00/0000:00:08.1/0000:c4:00.0/drm/card2
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card2-DP-2 -> ../../devices/pci0000:00/0000:00:08.1/0000:c4:00.0/drm/card2/card2-DP-2
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card2-DP-3 -> ../../devices/pci0000:00/0000:00:08.1/0000:c4:00.0/drm/card2/card2-DP-3
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card2-DP-4 -> ../../devices/pci0000:00/0000:00:08.1/0000:c4:00.0/drm/card2/card2-DP-4
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card2-DP-5 -> ../../devices/pci0000:00/0000:00:08.1/0000:c4:00.0/drm/card2/card2-DP-5
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card2-DP-6 -> ../../devices/pci0000:00/0000:00:08.1/0000:c4:00.0/drm/card2/card2-DP-6
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card2-DP-7 -> ../../devices/pci0000:00/0000:00:08.1/0000:c4:00.0/drm/card2/card2-DP-7
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card2-DP-8 -> ../../devices/pci0000:00/0000:00:08.1/0000:c4:00.0/drm/card2/card2-DP-8
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card2-DP-9 -> ../../devices/pci0000:00/0000:00:08.1/0000:c4:00.0/drm/card2/card2-DP-9
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card2-eDP-2 -> ../../devices/pci0000:00/0000:00:08.1/0000:c4:00.0/drm/card2/card2-eDP-2
lrwxrwxrwx 1 root root    0 Dec 25 20:33 card2-Writeback-2 -> ../../devices/pci0000:00/0000:00:08.1/0000:c4:00.0/drm/card2/card2-Writeback-2
lrwxrwxrwx 1 root root    0 Dec 25 20:33 renderD128 -> ../../devices/pci0000:00/0000:00:01.1/0000:01:00.0/0000:02:00.0/0000:03:00.0/drm/renderD128
lrwxrwxrwx 1 root root    0 Dec 25 20:33 renderD129 -> ../../devices/pci0000:00/0000:00:08.1/0000:c4:00.0/drm/renderD129
-r--r--r-- 1 root root 4096 Dec 25 20:44 version
  • wlr-randr output: (this is after sending a command to adjust eDP2 away from (1920, 0)
$ wlr-randr
DP-3 "Microstep Optix MAG24C 0000000000001 (DP-3 via HDMI)"
  Make: Microstep
  Model: Optix MAG24C
  Serial: 0000000000001
  Physical size: 520x290 mm
  Enabled: yes
  Modes:
    1920x1080 px, 60.000000 Hz (preferred, current)
(SNIP)
    720x400 px, 70.082001 Hz
  Position: 0,0
  Transform: normal
  Scale: 1.000000
  Adaptive Sync: disabled
eDP-2 "BOE 0x0BC9 (eDP-2)"
  Make: BOE
  Model: 0x0BC9
  Serial: (null)
  Physical size: 340x220 mm
  Enabled: yes
  Modes:
    2560x1600 px, 165.000000 Hz (preferred, current)
    2560x1600 px, 60.001999 Hz (preferred)
(SNIP)
    640x480 px, 165.000000 Hz
  Position: 1920,0
  Transform: normal
  Scale: 2.000000
  Adaptive Sync: enabled
  • Configuration File:

    • I reset my configuration by moving ~/.config/sway/ to ~/.config/sway.bak and was able to reproduce.
  • Description:

This issue started after I installed a dGPU (the Framework 16 Graphics Module) in my Framework 16. The iGPU (AMD Radeon 780M) has been working just fine on its own; however, since installing the dGPU (AMD Radeon RX 7700S), I have not been able to reposition my displays in Sway. The internal display (eDP-2) is apparently connected to a mux s.t. the dGPU is used if present. As for the external display (DP-3), it is connected to an HDMI port that only goes to the iGPU. I don't currently have the necessary USB-C to HDMI cable needed to connect my monitor to the dGPU.

My main test has been moving eDP2 from (1920,0) to (1920,280), but I can't seem to get any repositioning or modesetting to work. I have been trying:

  • manually issuing swaymsg "output eDP-2 pos 1920 280", which doesn't error but also doesn't take effect
  • wdisplays, which (appears to) revert to the original layout immediately clicking apply
  • nwg-displays, which itself keeps the layout change (despite it not taking effect in sway)

Initially I was suspicious that I was getting something like the display name wrong (since they did in fact change), but every time I try using power off / power on, it works without issue.

I have found multiple issues pertaining to multi-display with multi-GPU (including different GPUs for different displays, as in #7460), but in my case, both displays are working; I just can't move them around.

@CodingKoopa CodingKoopa added the bug Not working as intended label Dec 26, 2024
@CodingKoopa
Copy link
Author

CodingKoopa commented Dec 26, 2024

I just removed the dGPU and noticed that my initial assessment was wrong: all of this still occurs with just my iGPU. The reason why I don't notice is that, even if I revert to the default Sway configuration, from somewhere it gets the layout that I configured at some point (layout changes and setting eDP-1 to use 1.5 fractional scaling - definitely not a Sway default!). I don't understand where It's getting this from, but I've uploaded that log here (can Ctrl-F for 1.5). My feeling at this point is that it's an amdgpu issue.

(That is to say: modesetting/reposition doesn't work with iGPU either, but I don't notice since I've already setup my preferred layout. Perhaps someone more competent can correct the issue title accordingly.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Not working as intended
Development

No branches or pull requests

1 participant