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

Sascha Hauer
2022-04-11T09:13:00Z

On Fri, Apr 08, 2022 at 05:54:24PM +0200, Piotr Oniszczuk wrote:
>
>
> > 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?

I don't think so.

> 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

Ok, so #37 for video, #43 for GUI.

Where is the OSD rendered? Is it rendered on the GUI layer?

> .......
>
>
> 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

Base plane.

> 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

Video plane, rendered full screen above the base plane without alpha.

> 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

Here should be the GUI, but this plane is not active.

With this state I would expect to see a full screen video without
anything on it. Is that the case? If yes, then fine.

Could you post a state where you expect something else than is actually
seen?

Sascha

--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |