Re: [PATCH v9 00/23] drm/rockchip: RK356x VOP2 support

Piotr Oniszczuk
2022-04-08T15:54:34Z

> Wiadomość napisana przez Sascha Hauer <s.hauer@pengutronix.de> w dniu 08.04.2022, o godz. 14:00:
>
>> That turned out to be simpler than I thought it would be. The zpos
>> values were never actually written to the hardware. Please try the
>> following fixup, it should fix this issue.
>
> Or better try v10 which I have just sent.
>

Sascha,

I applied v10 on 5.17.2 and...can't see difference.
I still need to play with zpos to get ui screen.
if i have playback - no OSD.
If I have OSD - no playback.

Maybe fix needs some adjustments for 3566?

Here is short summary of playings with zpos and kms plane in Qt:

QT_QPA_EGLFS_KMS_ZPOS, QT_QPA_EGLFS_KMS_PLANE_INDEX

0,0 - GUI=ok, playback=ok, OSD=nok
1,0 - GUI=ok, playback=nok, OSD=ok
2,0 - GUI=ok, playback=nok, OSD=ok

0,1 - GUI=ok, playback=nok, OSD=ok
1,1 - GUI=ok, playback=nok, OSD=ok
2,1 - GUI=ok, playback=nok, OSD=ok

0,2 - GUI=nok, playback=n/a, OSD=n/a
1,2 - GUI=nok, playback=n/a, OSD=n/a
2,2 - GUI=nok, playback=n/a, OSD=n/a

player launch:
.......
2022-04-08 17:47:57.035668 I /dev/dri/card0 Qt EGLFS/KMS Fd:5 Crtc id:49 Connector id:51 Atomic: 1
2022-04-08 17:47:57.035806 I /dev/dri/card0: Authenticated
2022-04-08 17:47:57.145447 I /dev/dri/card0: Found 3 planes; 3 for this CRTC
2022-04-08 17:47:57.145469 I /dev/dri/card0: Selected Plane #37 Overlay for video
2022-04-08 17:47:57.145515 I /dev/dri/card0: Supported DRM video formats: NV12,NV16,NV24,YVYU,VYUY
2022-04-08 17:47:57.145523 I /dev/dri/card0: Selected Plane #43 Overlay for GUI
2022-04-08 17:47:57.145567 I /dev/dri/card0: DRM device retrieved from Qt
2022-04-08 17:47:57.145574 I /dev/dri/card0: Multi-plane setup: Requested: 1 Setup: 1
.......

playback:
.....
2022-04-08 17:48:55.457823 I DRMVideo: Using Plane #37 for video
.....

DRI state with zpos=0, kms_id=0 and ongoing playback:

root@Myth-Frontend-06c7e973c2f1:~ # cat /sys/kernel/debug/dri/0/state
plane[31]: Smart0-win0
crtc=video_port0
fb=58
allocated by = mythfrontend
refcount=2
format=XR24 little-endian (0x34325258)
modifier=0x0
size=1920x1080
layers:
size[0]=1920x1080
pitch[0]=7680
offset[0]=0
obj[0]:
name=0
refcount=4
start=00000000
size=8294400
imported=no
crtc-pos=1920x1080+0+0
src-pos=1920.000000x1080.000000+0.000000+0.000000
rotation=1
normalized-zpos=0
color-encoding=ITU-R BT.601 YCbCr
color-range=YCbCr limited range
plane[37]: Esmart0-win0
crtc=video_port0
fb=65
allocated by = mythfrontend
refcount=2
format=NV12 little-endian (0x3231564e)
modifier=0x0
size=1920x1080
layers:
size[0]=1920x1080
pitch[0]=1920
offset[0]=0
obj[0]:
name=0
refcount=3
start=00000000
size=3657728
imported=yes
size[1]=960x540
pitch[1]=1920
offset[1]=2088960
obj[1]:
name=0
refcount=3
start=00000000
size=3657728
imported=yes
crtc-pos=1920x1080+0+0
src-pos=1920.000000x1080.000000+0.000000+0.000000
rotation=1
normalized-zpos=1
color-encoding=ITU-R BT.601 YCbCr
color-range=YCbCr limited range
plane[43]: Cluster0-win0
crtc=(null)
fb=0
crtc-pos=0x0+0+0
src-pos=0.000000x0.000000+0.000000+0.000000
rotation=1
normalized-zpos=0
color-encoding=ITU-R BT.601 YCbCr
color-range=YCbCr limited range
crtc[49]: video_port0
enable=1
active=1
self_refresh_active=0
planes_changed=1
mode_changed=0
active_changed=0
connectors_changed=0
color_mgmt_changed=0
plane_mask=3
connector_mask=1
encoder_mask=1
mode: "1920x1080": 50 148500 1920 2448 2492 2640 1080 1084 1089 1125 0x40 0x5
connector[51]: HDMI-A-1
crtc=video_port0
self_refresh_aware=0
root@Myth-Frontend-06c7e973c2f1:~ #