Bug 1214987

Summary: Nouveau Prime display offload monitor defaults to 1080i
Product: [openSUSE] openSUSE Distribution Reporter: Linus Kardell <linus.kardell>
Component: KDE Workspace (Plasma)Assignee: E-Mail List <opensuse-kde-bugs>
Status: IN_PROGRESS --- QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P3 - Medium CC: linus.kardell
Version: Leap 15.5   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Linus Kardell 2023-09-05 09:25:18 UTC
On my system I've got a Radeon RX 6500 XT with two monitors plugged into it, and a GeForce GT 1030 DDR4 (using nouveau) with a third monitor (a Philips PHL 223V5) plugged in via HDMI, using Prime display offload. The third monitor defaults to 1080i, making everything on it vibrate. There is also no option to choose between 1080i and 1080p in the Plasma display settings, instead I have to switch it to 1080p using xrandr. Not sure why 1080i is even available as an option, it doesn't show up when the monitor is plugged directly into the Radeon card.

Operating System: openSUSE Leap 15.5
KDE Plasma Version: 5.27.4
KDE Frameworks Version: 5.103.0
Qt Version: 5.15.8
Kernel Version: 5.14.21-150500.55.19-default (64-bit)
Graphics Platform: X11
Processors: 16 × AMD Ryzen 7 1700X Eight-Core Processor
Memory: 62.7 Gibyte of RAM
Graphics Processor: AMD Radeon RX 6500 XT
Comment 1 Stefan Dirsch 2023-09-05 10:11:51 UTC
For some reason X thinks 1080i would be the native mode of this monitor. Could you please attache the output of 

  xrandr --verbose -q

At least you have a workaround. You didn't add the working 1080p mode manually by xrandr, did you?
Comment 2 Linus Kardell 2023-09-05 11:56:50 UTC
xrandr --verbose -q (for that monitor):

HDMI-1-1 connected 1920x1080+5120+0 (0x5b) normal (normal left inverted right x axis y axis) 477mm x 268mm
        Identifier: 0xb9
        Timestamp:  89644693
        Subpixel:   unknown
        Gamma:      1.0:1.0:1.0
        Brightness: 1.0
        Clones:    
        CRTC:       2
        CRTCs:      2 3
        Transform:  1.000000 0.000000 0.000000
                    0.000000 1.000000 0.000000
                    0.000000 0.000000 1.000000
                   filter: 
        EDID: 
                00ffffffffffff00410ccfc0a80f0000
                2e19010380301b782a3935a25952a127
                0c5054bd4b00d1c09500950fb30081c0
                818001010101023a801871382d40582c
                4500dd0c1100001e000000ff005a5643
                31353436303034303038000000fc0050
                484c2032323356350a202020000000fd
                00384c1e5311000a20202020202001aa
                020322f14f0102030506071011121314
                15161f04230917078301000065030c00
                1000023a801871382d40582c4500dd0c
                1100001e8c0ad08a20e02d10103e9600
                dd0c11000018011d007251d01e206e28
                5500dd0c1100001e8c0ad09020403120
                0c405500dd0c11000018000000000000
                0000000000000000000000000000004d
        _KDE_SCREEN_INDEX: 3 
        PRIME Synchronization: 0 
                supported: 0, 1
        dithering depth: auto 
                supported: auto, 6 bpc, 8 bpc
        dithering mode: auto 
                supported: auto, off, static 2x2, dynamic 2x2, temporal
        scaling mode: None 
                supported: None, Full, Center, Full aspect
        color vibrance: 150 
                range: (0, 200)
        vibrant hue: 90 
                range: (0, 180)
        underscan vborder: 0 
                range: (0, 128)
        underscan hborder: 0 
                range: (0, 128)
        underscan: off 
                supported: auto, off, on
        link-status: Good 
                supported: Good, Bad
        non-desktop: 0 
                range: (0, 1)
  1920x1080 (0x59) 148.500MHz +HSync +VSync +preferred
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.50KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  60.00Hz
  1920x1080 (0x5a) 148.500MHz +HSync +VSync
        h: width  1920 start 2448 end 2492 total 2640 skew    0 clock  56.25KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  50.00Hz
  1920x1080 (0x5b) 148.352MHz +HSync +VSync *current
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.43KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  59.94Hz
  1920x1080i (0xbb) 74.250MHz +HSync +VSync Interlace
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  33.75KHz
        v: height 1080 start 1084 end 1094 total 1125           clock  60.00Hz
  1920x1080i (0xbc) 74.250MHz +HSync +VSync Interlace
        h: width  1920 start 2448 end 2492 total 2640 skew    0 clock  28.12KHz
        v: height 1080 start 1084 end 1094 total 1125           clock  50.00Hz
  1920x1080i (0xbd) 74.176MHz +HSync +VSync Interlace
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  33.72KHz
        v: height 1080 start 1084 end 1094 total 1125           clock  59.94Hz
  1680x1050 (0x62) 119.000MHz +HSync -VSync
        h: width  1680 start 1728 end 1760 total 1840 skew    0 clock  64.67KHz
        v: height 1050 start 1053 end 1059 total 1080           clock  59.88Hz
  1280x1024 (0x63) 135.000MHz +HSync +VSync
        h: width  1280 start 1296 end 1440 total 1688 skew    0 clock  79.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  75.02Hz
  1280x1024 (0x64) 108.000MHz +HSync +VSync
        h: width  1280 start 1328 end 1440 total 1688 skew    0 clock  63.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  60.02Hz
  1440x900 (0xbe) 136.750MHz -HSync +VSync
        h: width  1440 start 1536 end 1688 total 1936 skew    0 clock  70.64KHz
        v: height  900 start  903 end  909 total  942           clock  74.98Hz
  1440x900 (0xbf) 88.750MHz +HSync -VSync
        h: width  1440 start 1488 end 1520 total 1600 skew    0 clock  55.47KHz
        v: height  900 start  903 end  909 total  926           clock  59.90Hz
  1280x720 (0x68) 74.250MHz +HSync +VSync
        h: width  1280 start 1390 end 1430 total 1650 skew    0 clock  45.00KHz
        v: height  720 start  725 end  730 total  750           clock  60.00Hz
  1280x720 (0x69) 74.250MHz +HSync +VSync
        h: width  1280 start 1720 end 1760 total 1980 skew    0 clock  37.50KHz
        v: height  720 start  725 end  730 total  750           clock  50.00Hz
  1280x720 (0x6a) 74.176MHz +HSync +VSync
        h: width  1280 start 1390 end 1430 total 1650 skew    0 clock  44.96KHz
        v: height  720 start  725 end  730 total  750           clock  59.94Hz
  1024x768 (0x6b) 78.750MHz +HSync +VSync
        h: width  1024 start 1040 end 1136 total 1312 skew    0 clock  60.02KHz
        v: height  768 start  769 end  772 total  800           clock  75.03Hz
  1024x768 (0x6c) 65.000MHz -HSync -VSync
        h: width  1024 start 1048 end 1184 total 1344 skew    0 clock  48.36KHz
        v: height  768 start  771 end  777 total  806           clock  60.00Hz
  800x600 (0x6d) 49.500MHz +HSync +VSync
        h: width   800 start  816 end  896 total 1056 skew    0 clock  46.88KHz
        v: height  600 start  601 end  604 total  625           clock  75.00Hz
  800x600 (0x6e) 40.000MHz +HSync +VSync
        h: width   800 start  840 end  968 total 1056 skew    0 clock  37.88KHz
        v: height  600 start  601 end  605 total  628           clock  60.32Hz
  720x576 (0x6f) 27.000MHz -HSync -VSync
        h: width   720 start  732 end  796 total  864 skew    0 clock  31.25KHz
        v: height  576 start  581 end  586 total  625           clock  50.00Hz
  720x480 (0x70) 27.027MHz -HSync -VSync
        h: width   720 start  736 end  798 total  858 skew    0 clock  31.50KHz
        v: height  480 start  489 end  495 total  525           clock  60.00Hz
  720x480 (0x71) 27.000MHz -HSync -VSync
        h: width   720 start  736 end  798 total  858 skew    0 clock  31.47KHz
        v: height  480 start  489 end  495 total  525           clock  59.94Hz
  640x480 (0x72) 31.500MHz -HSync -VSync
        h: width   640 start  656 end  720 total  840 skew    0 clock  37.50KHz
        v: height  480 start  481 end  484 total  500           clock  75.00Hz
  640x480 (0xc0) 31.500MHz -HSync -VSync
        h: width   640 start  664 end  704 total  832 skew    0 clock  37.86KHz
        v: height  480 start  489 end  492 total  520           clock  72.81Hz
  640x480 (0xc1) 30.240MHz -HSync -VSync
        h: width   640 start  704 end  768 total  864 skew    0 clock  35.00KHz
        v: height  480 start  483 end  486 total  525           clock  66.67Hz
  640x480 (0x73) 25.200MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.50KHz
        v: height  480 start  490 end  492 total  525           clock  60.00Hz
  640x480 (0x74) 25.175MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.47KHz
        v: height  480 start  490 end  492 total  525           clock  59.94Hz
  720x400 (0x75) 28.320MHz -HSync +VSync
        h: width   720 start  738 end  846 total  900 skew    0 clock  31.47KHz
        v: height  400 start  412 end  414 total  449           clock  70.08Hz
  1920x1080 (0x59) 148.500MHz +HSync +VSync
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.50KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  60.00Hz
  1920x1080 (0x5a) 148.500MHz +HSync +VSync
        h: width  1920 start 2448 end 2492 total 2640 skew    0 clock  56.25KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  50.00Hz
  1920x1080 (0x5b) 148.352MHz +HSync +VSync
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.43KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  59.94Hz
  1680x1050 (0x62) 119.000MHz +HSync -VSync
        h: width  1680 start 1728 end 1760 total 1840 skew    0 clock  64.67KHz
        v: height 1050 start 1053 end 1059 total 1080           clock  59.88Hz
  1280x1024 (0x63) 135.000MHz +HSync +VSync
        h: width  1280 start 1296 end 1440 total 1688 skew    0 clock  79.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  75.02Hz
  1280x1024 (0x64) 108.000MHz +HSync +VSync
        h: width  1280 start 1328 end 1440 total 1688 skew    0 clock  63.98KHz
        v: height 1024 start 1025 end 1028 total 1066           clock  60.02Hz
  1280x720 (0x68) 74.250MHz +HSync +VSync
        h: width  1280 start 1390 end 1430 total 1650 skew    0 clock  45.00KHz
        v: height  720 start  725 end  730 total  750           clock  60.00Hz
  1280x720 (0x69) 74.250MHz +HSync +VSync
        h: width  1280 start 1720 end 1760 total 1980 skew    0 clock  37.50KHz
        v: height  720 start  725 end  730 total  750           clock  50.00Hz
  1280x720 (0x6a) 74.176MHz +HSync +VSync
        h: width  1280 start 1390 end 1430 total 1650 skew    0 clock  44.96KHz
        v: height  720 start  725 end  730 total  750           clock  59.94Hz
  1024x768 (0x6b) 78.750MHz +HSync +VSync
        h: width  1024 start 1040 end 1136 total 1312 skew    0 clock  60.02KHz
        v: height  768 start  769 end  772 total  800           clock  75.03Hz
  1024x768 (0x6c) 65.000MHz -HSync -VSync
        h: width  1024 start 1048 end 1184 total 1344 skew    0 clock  48.36KHz
        v: height  768 start  771 end  777 total  806           clock  60.00Hz
  800x600 (0x6d) 49.500MHz +HSync +VSync
        h: width   800 start  816 end  896 total 1056 skew    0 clock  46.88KHz
        v: height  600 start  601 end  604 total  625           clock  75.00Hz
  800x600 (0x6e) 40.000MHz +HSync +VSync
        h: width   800 start  840 end  968 total 1056 skew    0 clock  37.88KHz
        v: height  600 start  601 end  605 total  628           clock  60.32Hz
  720x576 (0x6f) 27.000MHz -HSync -VSync
        h: width   720 start  732 end  796 total  864 skew    0 clock  31.25KHz
        v: height  576 start  581 end  586 total  625           clock  50.00Hz
  720x480 (0x70) 27.027MHz -HSync -VSync
        h: width   720 start  736 end  798 total  858 skew    0 clock  31.50KHz
        v: height  480 start  489 end  495 total  525           clock  60.00Hz
  720x480 (0x71) 27.000MHz -HSync -VSync
        h: width   720 start  736 end  798 total  858 skew    0 clock  31.47KHz
        v: height  480 start  489 end  495 total  525           clock  59.94Hz
  640x480 (0x72) 31.500MHz -HSync -VSync
        h: width   640 start  656 end  720 total  840 skew    0 clock  37.50KHz
        v: height  480 start  481 end  484 total  500           clock  75.00Hz
  640x480 (0x73) 25.200MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.50KHz
        v: height  480 start  490 end  492 total  525           clock  60.00Hz
  640x480 (0x74) 25.175MHz -HSync -VSync
        h: width   640 start  656 end  752 total  800 skew    0 clock  31.47KHz
        v: height  480 start  490 end  492 total  525           clock  59.94Hz
  720x400 (0x75) 28.320MHz -HSync +VSync
        h: width   720 start  738 end  846 total  900 skew    0 clock  31.47KHz
        v: height  400 start  412 end  414 total  449           clock  70.08Hz

>At least you have a workaround.

Yes. Although it needs to be done on each boot, and possibly even after monitor power save (usually not, but I had to do it again this morning after it had been standing overnight). Though I also do so to switch it to 59.94Hz, to match my other monitors, since X doesn't deal well with mixed refresh rates.

>You didn't add the working 1080p mode manually by xrandr, did you?

No

1080p looks to be preferred in randr. Feels like the issue may be in kscreen/kwin, I found a similar issue at https://bugs.kde.org/show_bug.cgi?id=460728.
Comment 3 Stefan Dirsch 2023-09-05 13:42:41 UTC
1920x1080 (0x59) 148.500MHz +HSync +VSync +preferred
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.50KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  60.00Hz
1920x1080 (0x5a) 148.500MHz +HSync +VSync
        h: width  1920 start 2448 end 2492 total 2640 skew    0 clock  56.25KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  50.00Hz
1920x1080 (0x5b) 148.352MHz +HSync +VSync *current
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.43KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  59.94Hz

Hmm. Defaults to "1920xx1080". 3 different for the same mode name? A slightly different clock for the one in use  ("*current") than the default one ("+preferred"). How can one select between these modes using the same name? They are all called "1920x1080". Is this the non-interlaced setting, which you call "1080p"?
Comment 4 Stefan Dirsch 2023-09-05 13:47:22 UTC
1920x1080 (0x59) 148.500MHz +HSync +VSync +preferred
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  67.50KHz
        v: height 1080 start 1084 end 1089 total 1125           clock  60.00Hz

This is apparently the preferred mode. I don't see why X should switch to another mode like any of these by default ...

1920x1080i (0xbb) 74.250MHz +HSync +VSync Interlace
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  33.75KHz
        v: height 1080 start 1084 end 1094 total 1125           clock  60.00Hz
  1920x1080i (0xbc) 74.250MHz +HSync +VSync Interlace
        h: width  1920 start 2448 end 2492 total 2640 skew    0 clock  28.12KHz
        v: height 1080 start 1084 end 1094 total 1125           clock  50.00Hz
  1920x1080i (0xbd) 74.176MHz +HSync +VSync Interlace
        h: width  1920 start 2008 end 2052 total 2200 skew    0 clock  33.72KHz
        v: height 1080 start 1084 end 1094 total 1125           clock  59.94Hz
Comment 5 Stefan Dirsch 2023-09-05 13:51:59 UTC
That could really be a KDE bug. I suggest to try with a much simpler desktop like icewm.
Comment 6 Linus Kardell 2023-09-05 14:25:19 UTC
>3 different for the same mode name? A slightly different clock for the one in use  ("*current") than the default one ("+preferred").

They are for different refresh rates. 50 Hz, 59.94 Hz and 60 Hz
Comment 7 Stefan Dirsch 2023-09-05 21:53:23 UTC
(In reply to Linus Kardell from comment #6)
> >3 different for the same mode name? A slightly different clock for the one in use  ("*current") than the default one ("+preferred").
> 
> They are for different refresh rates. 50 Hz, 59.94 Hz and 60 Hz

Of course. Although the 60Hz mode would be enough. Also I don't understand how to switch between these, since they all three have the same mode name ...
Comment 8 Linus Kardell 2023-09-07 07:20:36 UTC
>Also I don't understand how to switch between these, since they all three have the same mode name

I use the "--rate" parameter for xrandr.

Anyway, this issue did not happen in IceWM or TWM. Or on the SDDM login screen for that matter. It doesn't happen until Plasma is started.
Comment 9 Stefan Dirsch 2023-09-07 11:56:37 UTC
(In reply to Linus Kardell from comment #8)
> >Also I don't understand how to switch between these, since they all three have the same mode name
> 
> I use the "--rate" parameter for xrandr.

Ok. Never used this option ...

> Anyway, this issue did not happen in IceWM or TWM. Or on the SDDM login
> screen for that matter. It doesn't happen until Plasma is started.

Ok. So seems just the KDE desktop switches to the interlaced mode for some reason. No idea why. Maybe it's a bug. 

--> Reassigning.