Quantcast
Channel: Raspberry Pi Forums
Viewing all articles
Browse latest Browse all 5855

Troubleshooting • Re: Rotated HDMI image output, but with double cursors on VNC (but not on RD)

$
0
0
It sounds like "video=...panel_orientation" is also configuring DRM in a manner that Wayfire doesn't undo.
Can you run "kmsprint -p", and you'll get an output like

Code:

pi@bookworm64:~ $ kmsprint -pConnector 0 (32) HDMI-A-1 (connected)    EDID (1) = blob-id 264 len 256 (immutable)    DPMS (2) = 0 (On) [On=0|Standby=1|Suspend=2|Off=3]    TILE (4) = blob-id 0 (immutable)    link-status (5) = 0 (Good) [Good=0|Bad=1]    non-desktop (6) = 0 [0 - 1] (immutable)    HDR_OUTPUT_METADATA (7) = blob-id 0    CRTC_ID (20) = object id 86    left margin (33) = 0 [0 - 100]    right margin (34) = 0 [0 - 100]    top margin (35) = 0 [0 - 100]    bottom margin (36) = 0 [0 - 100]    Colorspace (37) = 0 (Default) [Default=0|SMPTE_170M_YCC=1|BT709_YCC=2|XVYCC_601=3|XVYCC_709=4|SYCC_601=5|opYCC_601=6|opRGB=7|BT2020_CYCC=8|BT2020_RGB=9|BT2020_YCC=10|DCI-P3_RGB_D65=11|DCI-P3_RGB_Theater=12]    max bpc (38) = 8 [8 - 12]    Broadcast RGB (39) = 0 (Automatic) [Automatic=0|Full=1|Limited 16:235=2]  Encoder 0 (31) TMDS    Crtc 3 (86) 3840x2160@60.00 594.000 3840/176/88/296/+ 2160/8/10/72/- 60 (60.00) P|D         OUT_FENCE_PTR (19) = 0 [0 - 18446744073709551615]        ACTIVE (22) = 1 [0 - 1]        MODE_ID (23) = blob-id 266 len 68        VRR_ENABLED (24) = 0 [0 - 1]      Plane 3 (78) fb-id: 265 (crtcs: 3) 0,0 3840x2160 -> 0,0 3840x2160 (XR24 AR24 AB24 XB24 RG16 BG16 AR15 XR15 RG24 BG24 YU16 YV16 YU12 YV12 NV12 NV21 NV16 NV61 P030 XR30 AR30 AB30 XB30 RGB8 BGR8 XR12 AR12 XB12 AB12 BX12 BA12 RX12 RA12)          type (8) = 1 (Primary) [Overlay=0|Primary=1|Cursor=2] (immutable)          SRC_X (9) = 0 [0 - 4294967295]          SRC_Y (10) = 0 [0 - 4294967295]          SRC_W (11) = 251658240 [0 - 4294967295]          SRC_H (12) = 141557760 [0 - 4294967295]          CRTC_X (13) = 0 [-2147483648 - 2147483647]          CRTC_Y (14) = 0 [-2147483648 - 2147483647]          CRTC_W (15) = 3840 [0 - 2147483647]          CRTC_H (16) = 2160 [0 - 2147483647]          FB_ID (17) = object id 265          IN_FENCE_FD (18) = -1 [-1 - 2147483647]          CRTC_ID (20) = object id 86          IN_FORMATS (30) = blob-id 79 len 280 (immutable)          alpha (80) = 65535 [0 - 65535]          pixel blend mode (81) = 0 (Pre-multiplied) [Pre-multiplied=0|Coverage=1|None=2]          rotation (82) = 0x1 (rotate-0) [rotate-0=0x1|rotate-180=0x4|reflect-x=0x10|reflect-y=0x20]   <<<<<<<<<<<<<<<<<          COLOR_ENCODING (83) = 1 (ITU-R BT.709 YCbCr) [ITU-R BT.601 YCbCr=0|ITU-R BT.709 YCbCr=1|ITU-R BT.2020 YCbCr=2]          COLOR_RANGE (84) = 0 (YCbCr limited range) [YCbCr limited range=0|YCbCr full range=1]          zpos (85) = 0 [0 - 0] (immutable)        FB 265 3840x2160 RG16
I suspect your line for rotation on the plane will read 0x4 for rotate-180, which Wayfire doesn't bother checking for at present. It's the same issue if you add "video=....,rotate=180" as it rotates the primary plane only (as that is all the console worries about), so the cursor on the live display ends up inverted.

I did create a PR to fix this in wlroots (https://gitlab.freedesktop.org/wlroots/ ... uests/4508), but haven't had a chance to go back to it. I'll see if we'll patch wlroots locally to deal with this.
Here is the output:

Code:

Helios@HeliosRPi4:~ $ kmsprint -pConnector 0 (32) HDMI-A-1 (disconnected)    EDID (1) = blob-id 0 (immutable)    DPMS (2) = 0 (On) [On=0|Standby=1|Suspend=2|Off=3]    TILE (4) = blob-id 0 (immutable)    link-status (5) = 0 (Good) [Good=0|Bad=1]    non-desktop (6) = 0 [0 - 1] (immutable)    HDR_OUTPUT_METADATA (7) = blob-id 0    CRTC_ID (20) = object id 0    left margin (33) = 0 [0 - 100]    right margin (34) = 0 [0 - 100]    top margin (35) = 0 [0 - 100]    bottom margin (36) = 0 [0 - 100]    Colorspace (37) = 0 (Default) [Default=0|SMPTE_170M_YCC=1|BT709_YCC=2|XVYCC_601=3|XVYCC_709=4|SYCC_601=5|opYCC_601=6|opRGB=7|BT2020_CYCC=8|BT2020_RGB=9|BT2020_YCC=10|DCI-P3_RGB_D65=11|DCI-P3_RGB_Theater=12]    max bpc (38) = 8 [8 - 12]    Broadcast RGB (39) = 0 (Automatic) [Automatic=0|Full=1|Limited 16:235=2]  Encoder 0 (31) TMDSConnector 1 (41) HDMI-A-2 (connected)    EDID (1) = blob-id 339 len 256 (immutable)    DPMS (2) = 3 (Off) [On=0|Standby=1|Suspend=2|Off=3]    TILE (4) = blob-id 0 (immutable)    link-status (5) = 0 (Good) [Good=0|Bad=1]    non-desktop (6) = 0 [0 - 1] (immutable)    HDR_OUTPUT_METADATA (7) = blob-id 0    CRTC_ID (20) = object id 0    left margin (33) = 0 [0 - 100]    right margin (34) = 0 [0 - 100]    top margin (35) = 0 [0 - 100]    bottom margin (36) = 0 [0 - 100]    panel orientation (42) = 1 (Upside Down) [Normal=0|Upside Down=1|Left Side Up=2|Right Side Up=3] (immutable)    Colorspace (43) = 0 (Default) [Default=0|SMPTE_170M_YCC=1|BT709_YCC=2|XVYCC_601=3|XVYCC_709=4|SYCC_601=5|opYCC_601=6|opRGB=7|BT2020_CYCC=8|BT2020_RGB=9|BT2020_YCC=10|DCI-P3_RGB_D65=11|DCI-P3_RGB_Theater=12]    max bpc (44) = 8 [8 - 12]    Broadcast RGB (45) = 0 (Automatic) [Automatic=0|Full=1|Limited 16:235=2]  Encoder 1 (40) TMDS
and as you say, panel orientation is 1 (upside down).

I'll wait to hear from you for a potential quick fix.

If not, for the time being it is more important that my touchscreen responds to touch properly and I can use RDC to do remote connect with the mouse and curser tracking properly. That means I would revert cmdline.txt back to original and use the on-screen config to set panel and touchscreen to inverted.

Thanks so much for your help @6by9! Really appreciate the guidance

Statistics: Posted by TriLife — Mon May 20, 2024 8:06 pm



Viewing all articles
Browse latest Browse all 5855

Trending Articles