All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lucas Stach <l.stach@pengutronix.de>
To: Sascha Hauer <s.hauer@pengutronix.de>,
	Piotr Oniszczuk <piotr.oniszczuk@gmail.com>
Cc: "devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	Benjamin Gaignard <benjamin.gaignard@collabora.com>,
	Peter Geis <pgwipeout@gmail.com>,
	Sandy Huang <hjc@rock-chips.com>,
	dri-devel@lists.freedesktop.org,
	"open list:ARM/Rockchip SoC..."
	<linux-rockchip@lists.infradead.org>,
	Lucas Stach <lst@pengutronix.de>,
	Michael Riesch <michael.riesch@wolfvision.net>,
	kernel@pengutronix.de, Andy Yan <andy.yan@rock-chips.com>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v9 00/23] drm/rockchip: RK356x VOP2 support
Date: Tue, 12 Apr 2022 10:10:57 +0200	[thread overview]
Message-ID: <e2ef484b60fe9c5fc077240a26bd18275974dc4a.camel@pengutronix.de> (raw)
In-Reply-To: <20220412075034.GS4012@pengutronix.de>

Am Dienstag, dem 12.04.2022 um 09:50 +0200 schrieb Sascha Hauer:
> On Mon, Apr 11, 2022 at 01:07:56PM +0200, Piotr Oniszczuk wrote:
> > this is DRI state when there is no any Qt.vars overwrites.
> > (so all is autodetected/setup like in other  working SoCs; VOP2 gives here black screen UI):
> > 
> > 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
> > 
> > plane[31]: Smart0-win0
> >         crtc=video_port0
> >         fb=53
> >                 allocated by = [fbcon]
> >                 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=3
> >                                 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=(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
> > plane[43]: Cluster0-win0
> >         crtc=video_port0
> >         fb=58
> >                 allocated by = mythfrontend
> >                 refcount=2
> >                 format=AR24 little-endian (0x34325241)
> 
> Here is your problem. The cluster windows only allow AFBC compressed
> formats. AR24 is supported by the cluster windows, but not by the GPU,
> see panfrost_afbc_format() in Mesa:
> 
> > enum pipe_format
> > panfrost_afbc_format(const struct panfrost_device *dev, enum pipe_format format)
> > {
> >         /* Don't allow swizzled formats on v7 */
> >         switch (format) {
> >         case PIPE_FORMAT_B8G8R8A8_UNORM:
> >         case PIPE_FORMAT_B8G8R8X8_UNORM:
> >         case PIPE_FORMAT_A8R8G8B8_UNORM:
> >         case PIPE_FORMAT_X8R8G8B8_UNORM:
> >         case PIPE_FORMAT_X8B8G8R8_UNORM:
> >         case PIPE_FORMAT_A8B8G8R8_UNORM:
> >         case PIPE_FORMAT_B8G8R8_UNORM:
> >         case PIPE_FORMAT_B5G6R5_UNORM:
> >                 if (dev->arch >= 7)
> >                         return PIPE_FORMAT_NONE;
> > 
> >                 break;
> >         default:
> >                 break;
> >         }
> > 
> 
> Somehow negotiation of the format goes wrong. Applications shouldn't
> pick these formats when the GPU is used for rendering. I don't know how
> and where this should be fixed properly, but your application should use
> DRM_FORMAT_ABGR8888 aka AB24 aka PIPE_FORMAT_R8G8B8A8_UNORM instead of
> DRM_FORMAT_ARGB8888 aka AR24 aka PIPE_FORMAT_B8G8R8A8_UNORM.
> 
This could be both a Mesa/Panfrost or application issue. The
application is supposed to try to allocate with a arbitrary chosen
format and the valid modifiers queried from the plane it wants to put
the surface on. However I'm not sure if all applications have a
fallback path in place to try another format swizzling if the surface
allocation fails. Now there are two possible failures here:

1. The application feeds a wrong modifier list to the GBM
implementation, as it may have queried another plane in the assumption
that supported modifiers are uniform across all planes.

2. The GBM implementation (Panfrost) actually allocates a surface
instead of failing the allocation, even if it does not support any
combination of the provided format and modifier list.

Regards,
Lucas

> Could you try the following patch? It removed the formats in question
> from the list of supported formats in the hope that your application
> then picks one of the supported formats.
> 
> Sascha
> 
> -----------------------8<-----------------------------
> 
> From 7427109cfd16803902b55cd5536b9212abd09665 Mon Sep 17 00:00:00 2001
> From: Sascha Hauer <s.hauer@pengutronix.de>
> Date: Tue, 12 Apr 2022 09:42:32 +0200
> Subject: [PATCH] fixup! drm: rockchip: Add VOP2 driver
> 
> The cluster windows only allow AFBC compressed formats. Not all of the
> offered formats are supported by the GPU though. Applications pick one
> of the formats and assume that this is also supported by the GPU they
> use to render on them, but this is not the case for all formats.
> Particularly DRM_FORMAT_XRGB8888 and DRM_FORMAT_ARGB8888 are not
> supported by the GPU and choosing them results in a black screen.
> Drop these formats for now.
> 
> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
> ---
>  drivers/gpu/drm/rockchip/rockchip_vop2_reg.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c
> index 9bf0637bf8e26..38412766e3659 100644
> --- a/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c
> +++ b/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c
> @@ -16,8 +16,6 @@
>  #include "rockchip_drm_vop2.h"
>  
>  static const uint32_t formats_win_full_10bit[] = {
> -	DRM_FORMAT_XRGB8888,
> -	DRM_FORMAT_ARGB8888,
>  	DRM_FORMAT_XBGR8888,
>  	DRM_FORMAT_ABGR8888,
>  	DRM_FORMAT_RGB888,
> -- 
> 2.30.2
> 
> 



WARNING: multiple messages have this Message-ID (diff)
From: Lucas Stach <l.stach@pengutronix.de>
To: Sascha Hauer <s.hauer@pengutronix.de>,
	Piotr Oniszczuk <piotr.oniszczuk@gmail.com>
Cc: dri-devel@lists.freedesktop.org,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"open list:ARM/Rockchip SoC..."
	<linux-rockchip@lists.infradead.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	kernel@pengutronix.de, "Andy Yan" <andy.yan@rock-chips.com>,
	"Benjamin Gaignard" <benjamin.gaignard@collabora.com>,
	"Michael Riesch" <michael.riesch@wolfvision.net>,
	"Sandy Huang" <hjc@rock-chips.com>,
	"Heiko Stübner" <heiko@sntech.de>,
	"Peter Geis" <pgwipeout@gmail.com>,
	"Lucas Stach" <lst@pengutronix.de>
Subject: Re: [PATCH v9 00/23] drm/rockchip: RK356x VOP2 support
Date: Tue, 12 Apr 2022 10:10:57 +0200	[thread overview]
Message-ID: <e2ef484b60fe9c5fc077240a26bd18275974dc4a.camel@pengutronix.de> (raw)
In-Reply-To: <20220412075034.GS4012@pengutronix.de>

Am Dienstag, dem 12.04.2022 um 09:50 +0200 schrieb Sascha Hauer:
> On Mon, Apr 11, 2022 at 01:07:56PM +0200, Piotr Oniszczuk wrote:
> > this is DRI state when there is no any Qt.vars overwrites.
> > (so all is autodetected/setup like in other  working SoCs; VOP2 gives here black screen UI):
> > 
> > 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
> > 
> > plane[31]: Smart0-win0
> >         crtc=video_port0
> >         fb=53
> >                 allocated by = [fbcon]
> >                 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=3
> >                                 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=(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
> > plane[43]: Cluster0-win0
> >         crtc=video_port0
> >         fb=58
> >                 allocated by = mythfrontend
> >                 refcount=2
> >                 format=AR24 little-endian (0x34325241)
> 
> Here is your problem. The cluster windows only allow AFBC compressed
> formats. AR24 is supported by the cluster windows, but not by the GPU,
> see panfrost_afbc_format() in Mesa:
> 
> > enum pipe_format
> > panfrost_afbc_format(const struct panfrost_device *dev, enum pipe_format format)
> > {
> >         /* Don't allow swizzled formats on v7 */
> >         switch (format) {
> >         case PIPE_FORMAT_B8G8R8A8_UNORM:
> >         case PIPE_FORMAT_B8G8R8X8_UNORM:
> >         case PIPE_FORMAT_A8R8G8B8_UNORM:
> >         case PIPE_FORMAT_X8R8G8B8_UNORM:
> >         case PIPE_FORMAT_X8B8G8R8_UNORM:
> >         case PIPE_FORMAT_A8B8G8R8_UNORM:
> >         case PIPE_FORMAT_B8G8R8_UNORM:
> >         case PIPE_FORMAT_B5G6R5_UNORM:
> >                 if (dev->arch >= 7)
> >                         return PIPE_FORMAT_NONE;
> > 
> >                 break;
> >         default:
> >                 break;
> >         }
> > 
> 
> Somehow negotiation of the format goes wrong. Applications shouldn't
> pick these formats when the GPU is used for rendering. I don't know how
> and where this should be fixed properly, but your application should use
> DRM_FORMAT_ABGR8888 aka AB24 aka PIPE_FORMAT_R8G8B8A8_UNORM instead of
> DRM_FORMAT_ARGB8888 aka AR24 aka PIPE_FORMAT_B8G8R8A8_UNORM.
> 
This could be both a Mesa/Panfrost or application issue. The
application is supposed to try to allocate with a arbitrary chosen
format and the valid modifiers queried from the plane it wants to put
the surface on. However I'm not sure if all applications have a
fallback path in place to try another format swizzling if the surface
allocation fails. Now there are two possible failures here:

1. The application feeds a wrong modifier list to the GBM
implementation, as it may have queried another plane in the assumption
that supported modifiers are uniform across all planes.

2. The GBM implementation (Panfrost) actually allocates a surface
instead of failing the allocation, even if it does not support any
combination of the provided format and modifier list.

Regards,
Lucas

> Could you try the following patch? It removed the formats in question
> from the list of supported formats in the hope that your application
> then picks one of the supported formats.
> 
> Sascha
> 
> -----------------------8<-----------------------------
> 
> From 7427109cfd16803902b55cd5536b9212abd09665 Mon Sep 17 00:00:00 2001
> From: Sascha Hauer <s.hauer@pengutronix.de>
> Date: Tue, 12 Apr 2022 09:42:32 +0200
> Subject: [PATCH] fixup! drm: rockchip: Add VOP2 driver
> 
> The cluster windows only allow AFBC compressed formats. Not all of the
> offered formats are supported by the GPU though. Applications pick one
> of the formats and assume that this is also supported by the GPU they
> use to render on them, but this is not the case for all formats.
> Particularly DRM_FORMAT_XRGB8888 and DRM_FORMAT_ARGB8888 are not
> supported by the GPU and choosing them results in a black screen.
> Drop these formats for now.
> 
> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
> ---
>  drivers/gpu/drm/rockchip/rockchip_vop2_reg.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c
> index 9bf0637bf8e26..38412766e3659 100644
> --- a/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c
> +++ b/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c
> @@ -16,8 +16,6 @@
>  #include "rockchip_drm_vop2.h"
>  
>  static const uint32_t formats_win_full_10bit[] = {
> -	DRM_FORMAT_XRGB8888,
> -	DRM_FORMAT_ARGB8888,
>  	DRM_FORMAT_XBGR8888,
>  	DRM_FORMAT_ABGR8888,
>  	DRM_FORMAT_RGB888,
> -- 
> 2.30.2
> 
> 



_______________________________________________
Linux-rockchip mailing list
Linux-rockchip@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-rockchip

WARNING: multiple messages have this Message-ID (diff)
From: Lucas Stach <l.stach@pengutronix.de>
To: Sascha Hauer <s.hauer@pengutronix.de>,
	Piotr Oniszczuk <piotr.oniszczuk@gmail.com>
Cc: dri-devel@lists.freedesktop.org,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"open list:ARM/Rockchip SoC..."
	<linux-rockchip@lists.infradead.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	kernel@pengutronix.de, "Andy Yan" <andy.yan@rock-chips.com>,
	"Benjamin Gaignard" <benjamin.gaignard@collabora.com>,
	"Michael Riesch" <michael.riesch@wolfvision.net>,
	"Sandy Huang" <hjc@rock-chips.com>,
	"Heiko Stübner" <heiko@sntech.de>,
	"Peter Geis" <pgwipeout@gmail.com>,
	"Lucas Stach" <lst@pengutronix.de>
Subject: Re: [PATCH v9 00/23] drm/rockchip: RK356x VOP2 support
Date: Tue, 12 Apr 2022 10:10:57 +0200	[thread overview]
Message-ID: <e2ef484b60fe9c5fc077240a26bd18275974dc4a.camel@pengutronix.de> (raw)
In-Reply-To: <20220412075034.GS4012@pengutronix.de>

Am Dienstag, dem 12.04.2022 um 09:50 +0200 schrieb Sascha Hauer:
> On Mon, Apr 11, 2022 at 01:07:56PM +0200, Piotr Oniszczuk wrote:
> > this is DRI state when there is no any Qt.vars overwrites.
> > (so all is autodetected/setup like in other  working SoCs; VOP2 gives here black screen UI):
> > 
> > 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
> > 
> > plane[31]: Smart0-win0
> >         crtc=video_port0
> >         fb=53
> >                 allocated by = [fbcon]
> >                 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=3
> >                                 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=(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
> > plane[43]: Cluster0-win0
> >         crtc=video_port0
> >         fb=58
> >                 allocated by = mythfrontend
> >                 refcount=2
> >                 format=AR24 little-endian (0x34325241)
> 
> Here is your problem. The cluster windows only allow AFBC compressed
> formats. AR24 is supported by the cluster windows, but not by the GPU,
> see panfrost_afbc_format() in Mesa:
> 
> > enum pipe_format
> > panfrost_afbc_format(const struct panfrost_device *dev, enum pipe_format format)
> > {
> >         /* Don't allow swizzled formats on v7 */
> >         switch (format) {
> >         case PIPE_FORMAT_B8G8R8A8_UNORM:
> >         case PIPE_FORMAT_B8G8R8X8_UNORM:
> >         case PIPE_FORMAT_A8R8G8B8_UNORM:
> >         case PIPE_FORMAT_X8R8G8B8_UNORM:
> >         case PIPE_FORMAT_X8B8G8R8_UNORM:
> >         case PIPE_FORMAT_A8B8G8R8_UNORM:
> >         case PIPE_FORMAT_B8G8R8_UNORM:
> >         case PIPE_FORMAT_B5G6R5_UNORM:
> >                 if (dev->arch >= 7)
> >                         return PIPE_FORMAT_NONE;
> > 
> >                 break;
> >         default:
> >                 break;
> >         }
> > 
> 
> Somehow negotiation of the format goes wrong. Applications shouldn't
> pick these formats when the GPU is used for rendering. I don't know how
> and where this should be fixed properly, but your application should use
> DRM_FORMAT_ABGR8888 aka AB24 aka PIPE_FORMAT_R8G8B8A8_UNORM instead of
> DRM_FORMAT_ARGB8888 aka AR24 aka PIPE_FORMAT_B8G8R8A8_UNORM.
> 
This could be both a Mesa/Panfrost or application issue. The
application is supposed to try to allocate with a arbitrary chosen
format and the valid modifiers queried from the plane it wants to put
the surface on. However I'm not sure if all applications have a
fallback path in place to try another format swizzling if the surface
allocation fails. Now there are two possible failures here:

1. The application feeds a wrong modifier list to the GBM
implementation, as it may have queried another plane in the assumption
that supported modifiers are uniform across all planes.

2. The GBM implementation (Panfrost) actually allocates a surface
instead of failing the allocation, even if it does not support any
combination of the provided format and modifier list.

Regards,
Lucas

> Could you try the following patch? It removed the formats in question
> from the list of supported formats in the hope that your application
> then picks one of the supported formats.
> 
> Sascha
> 
> -----------------------8<-----------------------------
> 
> From 7427109cfd16803902b55cd5536b9212abd09665 Mon Sep 17 00:00:00 2001
> From: Sascha Hauer <s.hauer@pengutronix.de>
> Date: Tue, 12 Apr 2022 09:42:32 +0200
> Subject: [PATCH] fixup! drm: rockchip: Add VOP2 driver
> 
> The cluster windows only allow AFBC compressed formats. Not all of the
> offered formats are supported by the GPU though. Applications pick one
> of the formats and assume that this is also supported by the GPU they
> use to render on them, but this is not the case for all formats.
> Particularly DRM_FORMAT_XRGB8888 and DRM_FORMAT_ARGB8888 are not
> supported by the GPU and choosing them results in a black screen.
> Drop these formats for now.
> 
> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
> ---
>  drivers/gpu/drm/rockchip/rockchip_vop2_reg.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c
> index 9bf0637bf8e26..38412766e3659 100644
> --- a/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c
> +++ b/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c
> @@ -16,8 +16,6 @@
>  #include "rockchip_drm_vop2.h"
>  
>  static const uint32_t formats_win_full_10bit[] = {
> -	DRM_FORMAT_XRGB8888,
> -	DRM_FORMAT_ARGB8888,
>  	DRM_FORMAT_XBGR8888,
>  	DRM_FORMAT_ABGR8888,
>  	DRM_FORMAT_RGB888,
> -- 
> 2.30.2
> 
> 



_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: Lucas Stach <l.stach@pengutronix.de>
To: Sascha Hauer <s.hauer@pengutronix.de>,
	Piotr Oniszczuk <piotr.oniszczuk@gmail.com>
Cc: dri-devel@lists.freedesktop.org,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"open list:ARM/Rockchip SoC..."
	<linux-rockchip@lists.infradead.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	kernel@pengutronix.de, "Andy Yan" <andy.yan@rock-chips.com>,
	"Benjamin Gaignard" <benjamin.gaignard@collabora.com>,
	"Michael Riesch" <michael.riesch@wolfvision.net>,
	"Sandy Huang" <hjc@rock-chips.com>,
	"Heiko Stübner" <heiko@sntech.de>,
	"Peter Geis" <pgwipeout@gmail.com>,
	"Lucas Stach" <lst@pengutronix.de>
Subject: Re: [PATCH v9 00/23] drm/rockchip: RK356x VOP2 support
Date: Tue, 12 Apr 2022 10:10:57 +0200	[thread overview]
Message-ID: <e2ef484b60fe9c5fc077240a26bd18275974dc4a.camel@pengutronix.de> (raw)
In-Reply-To: <20220412075034.GS4012@pengutronix.de>

Am Dienstag, dem 12.04.2022 um 09:50 +0200 schrieb Sascha Hauer:
> On Mon, Apr 11, 2022 at 01:07:56PM +0200, Piotr Oniszczuk wrote:
> > this is DRI state when there is no any Qt.vars overwrites.
> > (so all is autodetected/setup like in other  working SoCs; VOP2 gives here black screen UI):
> > 
> > 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
> > 
> > plane[31]: Smart0-win0
> >         crtc=video_port0
> >         fb=53
> >                 allocated by = [fbcon]
> >                 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=3
> >                                 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=(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
> > plane[43]: Cluster0-win0
> >         crtc=video_port0
> >         fb=58
> >                 allocated by = mythfrontend
> >                 refcount=2
> >                 format=AR24 little-endian (0x34325241)
> 
> Here is your problem. The cluster windows only allow AFBC compressed
> formats. AR24 is supported by the cluster windows, but not by the GPU,
> see panfrost_afbc_format() in Mesa:
> 
> > enum pipe_format
> > panfrost_afbc_format(const struct panfrost_device *dev, enum pipe_format format)
> > {
> >         /* Don't allow swizzled formats on v7 */
> >         switch (format) {
> >         case PIPE_FORMAT_B8G8R8A8_UNORM:
> >         case PIPE_FORMAT_B8G8R8X8_UNORM:
> >         case PIPE_FORMAT_A8R8G8B8_UNORM:
> >         case PIPE_FORMAT_X8R8G8B8_UNORM:
> >         case PIPE_FORMAT_X8B8G8R8_UNORM:
> >         case PIPE_FORMAT_A8B8G8R8_UNORM:
> >         case PIPE_FORMAT_B8G8R8_UNORM:
> >         case PIPE_FORMAT_B5G6R5_UNORM:
> >                 if (dev->arch >= 7)
> >                         return PIPE_FORMAT_NONE;
> > 
> >                 break;
> >         default:
> >                 break;
> >         }
> > 
> 
> Somehow negotiation of the format goes wrong. Applications shouldn't
> pick these formats when the GPU is used for rendering. I don't know how
> and where this should be fixed properly, but your application should use
> DRM_FORMAT_ABGR8888 aka AB24 aka PIPE_FORMAT_R8G8B8A8_UNORM instead of
> DRM_FORMAT_ARGB8888 aka AR24 aka PIPE_FORMAT_B8G8R8A8_UNORM.
> 
This could be both a Mesa/Panfrost or application issue. The
application is supposed to try to allocate with a arbitrary chosen
format and the valid modifiers queried from the plane it wants to put
the surface on. However I'm not sure if all applications have a
fallback path in place to try another format swizzling if the surface
allocation fails. Now there are two possible failures here:

1. The application feeds a wrong modifier list to the GBM
implementation, as it may have queried another plane in the assumption
that supported modifiers are uniform across all planes.

2. The GBM implementation (Panfrost) actually allocates a surface
instead of failing the allocation, even if it does not support any
combination of the provided format and modifier list.

Regards,
Lucas

> Could you try the following patch? It removed the formats in question
> from the list of supported formats in the hope that your application
> then picks one of the supported formats.
> 
> Sascha
> 
> -----------------------8<-----------------------------
> 
> From 7427109cfd16803902b55cd5536b9212abd09665 Mon Sep 17 00:00:00 2001
> From: Sascha Hauer <s.hauer@pengutronix.de>
> Date: Tue, 12 Apr 2022 09:42:32 +0200
> Subject: [PATCH] fixup! drm: rockchip: Add VOP2 driver
> 
> The cluster windows only allow AFBC compressed formats. Not all of the
> offered formats are supported by the GPU though. Applications pick one
> of the formats and assume that this is also supported by the GPU they
> use to render on them, but this is not the case for all formats.
> Particularly DRM_FORMAT_XRGB8888 and DRM_FORMAT_ARGB8888 are not
> supported by the GPU and choosing them results in a black screen.
> Drop these formats for now.
> 
> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
> ---
>  drivers/gpu/drm/rockchip/rockchip_vop2_reg.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c b/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c
> index 9bf0637bf8e26..38412766e3659 100644
> --- a/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c
> +++ b/drivers/gpu/drm/rockchip/rockchip_vop2_reg.c
> @@ -16,8 +16,6 @@
>  #include "rockchip_drm_vop2.h"
>  
>  static const uint32_t formats_win_full_10bit[] = {
> -	DRM_FORMAT_XRGB8888,
> -	DRM_FORMAT_ARGB8888,
>  	DRM_FORMAT_XBGR8888,
>  	DRM_FORMAT_ABGR8888,
>  	DRM_FORMAT_RGB888,
> -- 
> 2.30.2
> 
> 



  reply	other threads:[~2022-04-12  8:11 UTC|newest]

Thread overview: 333+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-28 15:10 [PATCH v9 00/23] drm/rockchip: RK356x VOP2 support Sascha Hauer
2022-03-28 15:10 ` Sascha Hauer
2022-03-28 15:10 ` Sascha Hauer
2022-03-28 15:10 ` Sascha Hauer
2022-03-28 15:10 ` [PATCH v9 01/23] clk: rk3568: Mark hclk_vo as critical Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-29 13:22   ` Dmitry Osipenko
2022-03-29 13:22     ` Dmitry Osipenko
2022-03-29 13:22     ` Dmitry Osipenko
2022-03-29 13:22     ` Dmitry Osipenko
2022-04-06 11:15   ` Robin Murphy
2022-04-06 11:15     ` Robin Murphy
2022-04-06 11:15     ` Robin Murphy
2022-04-06 11:15     ` Robin Murphy
2022-03-28 15:10 ` [PATCH v9 02/23] drm/rockchip: Embed drm_encoder into rockchip_decoder Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10 ` [PATCH v9 03/23] drm/rockchip: Add crtc_endpoint_id to rockchip_encoder Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10 ` [PATCH v9 04/23] drm/rockchip: dw_hdmi: rename vpll clock to reference clock Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10 ` [PATCH v9 05/23] dt-bindings: display: rockchip: dw-hdmi: use "ref" as clock name Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10 ` [PATCH v9 06/23] arm64: dts: rockchip: rk3399: rename HDMI ref clock to 'ref' Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:10   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 07/23] drm/rockchip: dw_hdmi: add rk3568 support Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 08/23] dt-bindings: display: rockchip: dw-hdmi: Add compatible for rk3568 HDMI Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 09/23] drm/rockchip: dw_hdmi: add regulator support Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 10/23] dt-bindings: display: rockchip: dw-hdmi: Add " Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 11/23] drm/rockchip: dw_hdmi: Use auto-generated tables Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 12/23] drm/rockchip: dw_hdmi: drop mode_valid hook Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 13/23] drm/rockchip: dw_hdmi: Set cur_ctr to 0 always Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 14/23] drm/rockchip: dw_hdmi: add default 594Mhz clk for 4K@60hz Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 15/23] dt-bindings: display: rockchip: dw-hdmi: Make unwedge pinctrl optional Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 16/23] arm64: dts: rockchip: rk356x: Add VOP2 nodes Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 17/23] arm64: dts: rockchip: rk356x: Add HDMI nodes Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 18/23] arm64: dts: rockchip: rk3568-evb: Enable VOP2 and hdmi Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 19/23] arm64: dts: rockchip: enable vop2 and hdmi tx on quartz64a Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 20/23] drm/rockchip: Make VOP driver optional Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-29 11:56   ` Andy Yan
2022-03-29 11:56     ` Andy Yan
2022-03-29 11:56     ` Andy Yan
2022-03-29 11:56     ` Andy Yan
2022-03-30  6:39     ` Sascha Hauer
2022-03-30  6:39       ` Sascha Hauer
2022-03-30  6:39       ` Sascha Hauer
2022-03-30  6:39       ` Sascha Hauer
2022-03-30 12:50       ` Andy Yan
2022-03-30 12:50         ` Andy Yan
2022-03-30 12:50         ` Andy Yan
2022-03-30 12:50         ` Andy Yan
2022-03-31  7:06         ` Sascha Hauer
2022-03-31  7:06           ` Sascha Hauer
2022-03-31  7:06           ` Sascha Hauer
2022-03-31  7:06           ` Sascha Hauer
2022-03-31  7:20           ` Andy Yan
2022-03-31  7:20             ` Andy Yan
2022-03-31  7:20             ` Andy Yan
2022-03-31  7:20             ` Andy Yan
2022-03-31  8:18             ` Sascha Hauer
2022-03-31  8:18               ` Sascha Hauer
2022-03-31  8:18               ` Sascha Hauer
2022-03-31  8:18               ` Sascha Hauer
2022-03-31 11:00               ` Andy Yan
2022-03-31 11:00                 ` Andy Yan
2022-03-31 11:00                 ` Andy Yan
2022-03-31 11:00                 ` Andy Yan
2022-04-01 12:55                 ` Sascha Hauer
2022-04-01 12:55                   ` Sascha Hauer
2022-04-01 12:55                   ` Sascha Hauer
2022-04-01 12:55                   ` Sascha Hauer
2022-04-02  1:25                   ` Andy Yan
2022-04-02  1:25                     ` Andy Yan
2022-04-02  1:25                     ` Andy Yan
2022-04-02  1:25                     ` Andy Yan
2022-04-05  9:05                     ` Sascha Hauer
2022-04-05  9:05                       ` Sascha Hauer
2022-04-05  9:05                       ` Sascha Hauer
2022-04-05  9:05                       ` Sascha Hauer
2022-04-06  1:43                       ` Andy Yan
2022-04-06  1:43                         ` Andy Yan
2022-04-06  1:43                         ` Andy Yan
2022-04-06  1:43                         ` Andy Yan
2022-04-06  7:04                         ` Sascha Hauer
2022-04-06  7:04                           ` Sascha Hauer
2022-04-06  7:04                           ` Sascha Hauer
2022-04-06  7:04                           ` Sascha Hauer
2022-04-06  7:47                           ` Andy Yan
2022-04-06  7:47                             ` Andy Yan
2022-04-06  7:47                             ` Andy Yan
2022-04-06  7:47                             ` Andy Yan
2022-04-06  8:00                             ` Sascha Hauer
2022-04-06  8:00                               ` Sascha Hauer
2022-04-06  8:00                               ` Sascha Hauer
2022-04-06  8:00                               ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 21/23] drm: rockchip: Add VOP2 driver Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 22/23] dt-bindings: display: rockchip: Add binding for VOP2 Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11 ` [PATCH v9 23/23] dt-bindings: display: rockchip: dw-hdmi: fix ports description Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-28 15:11   ` Sascha Hauer
2022-03-29  7:31 ` [PATCH v9 00/23] drm/rockchip: RK356x VOP2 support Piotr Oniszczuk
2022-03-29  7:31   ` Piotr Oniszczuk
2022-03-29  7:31   ` Piotr Oniszczuk
2022-03-29  7:31   ` Piotr Oniszczuk
2022-03-30  7:28   ` Sascha Hauer
2022-03-30  7:28     ` Sascha Hauer
2022-03-30  7:28     ` Sascha Hauer
2022-03-30  7:28     ` Sascha Hauer
2022-03-30  8:41     ` piotro.oniszczuk@google.com
2022-03-30  8:41       ` piotro.oniszczuk@google.com
2022-03-30  8:41       ` piotro.oniszczuk@google.com
2022-03-30  8:41       ` piotro.oniszczuk@google.com
2022-03-30  9:45       ` Sascha Hauer
2022-03-30  9:45         ` Sascha Hauer
2022-03-30  9:45         ` Sascha Hauer
2022-03-30  9:45         ` Sascha Hauer
2022-03-30 10:01         ` piotro.oniszczuk@google.com
2022-03-30 10:01           ` piotro.oniszczuk@google.com
2022-03-30 10:01           ` piotro.oniszczuk@google.com
2022-03-30 10:01           ` piotro.oniszczuk@google.com
2022-03-30 10:20           ` Sascha Hauer
2022-03-30 10:20             ` Sascha Hauer
2022-03-30 10:20             ` Sascha Hauer
2022-03-30 10:20             ` Sascha Hauer
2022-03-30 14:52             ` Piotr Oniszczuk
2022-03-30 14:52               ` Piotr Oniszczuk
2022-03-30 14:52               ` Piotr Oniszczuk
2022-03-30 14:52               ` Piotr Oniszczuk
2022-03-30 19:20               ` Sascha Hauer
2022-03-30 19:20                 ` Sascha Hauer
2022-03-30 19:20                 ` Sascha Hauer
2022-03-30 19:20                 ` Sascha Hauer
2022-03-30 19:35                 ` Piotr Oniszczuk
2022-03-30 19:35                   ` Piotr Oniszczuk
2022-03-30 19:35                   ` Piotr Oniszczuk
2022-03-30 19:35                   ` Piotr Oniszczuk
2022-03-30 19:59                   ` Sascha Hauer
2022-03-30 19:59                     ` Sascha Hauer
2022-03-30 19:59                     ` Sascha Hauer
2022-03-30 19:59                     ` Sascha Hauer
2022-03-31 12:13                 ` Andy Yan
2022-03-31 12:13                   ` Andy Yan
2022-03-31 12:13                   ` Andy Yan
2022-03-31 12:13                   ` Andy Yan
2022-03-31 12:19                   ` Sascha Hauer
2022-03-31 12:19                     ` Sascha Hauer
2022-03-31 12:19                     ` Sascha Hauer
2022-03-31 12:19                     ` Sascha Hauer
2022-03-31 14:53                   ` Piotr Oniszczuk
2022-03-31 14:53                     ` Piotr Oniszczuk
2022-03-31 14:53                     ` Piotr Oniszczuk
2022-03-31 14:53                     ` Piotr Oniszczuk
2022-03-31 15:00                     ` Sascha Hauer
2022-03-31 15:00                       ` Sascha Hauer
2022-03-31 15:00                       ` Sascha Hauer
2022-03-31 15:00                       ` Sascha Hauer
2022-03-31 15:06                       ` Piotr Oniszczuk
2022-03-31 15:06                         ` Piotr Oniszczuk
2022-03-31 15:06                         ` Piotr Oniszczuk
2022-03-31 15:06                         ` Piotr Oniszczuk
2022-03-31 15:19                         ` Piotr Oniszczuk
2022-03-31 15:19                           ` Piotr Oniszczuk
2022-03-31 15:19                           ` Piotr Oniszczuk
2022-03-31 15:19                           ` Piotr Oniszczuk
2022-04-01  1:52                     ` Andy Yan
2022-04-01  7:06                       ` Sascha Hauer
2022-04-01  7:06                         ` Sascha Hauer
2022-04-01  7:06                         ` Sascha Hauer
2022-04-01  7:06                         ` Sascha Hauer
2022-04-01 12:04                       ` Andy Yan
2022-04-01 12:53                         ` Piotr Oniszczuk
2022-04-01 12:53                           ` Piotr Oniszczuk
2022-04-01 12:53                           ` Piotr Oniszczuk
2022-04-01 12:53                           ` Piotr Oniszczuk
2022-04-01 12:52   ` Sascha Hauer
2022-04-01 12:52     ` Sascha Hauer
2022-04-01 12:52     ` Sascha Hauer
2022-04-01 12:52     ` Sascha Hauer
2022-04-01 13:05     ` Piotr Oniszczuk
2022-04-01 13:05       ` Piotr Oniszczuk
2022-04-01 13:05       ` Piotr Oniszczuk
2022-04-01 13:05       ` Piotr Oniszczuk
2022-04-06  9:47       ` Piotr Oniszczuk
2022-04-06  9:47         ` Piotr Oniszczuk
2022-04-06  9:47         ` Piotr Oniszczuk
2022-04-06  9:47         ` Piotr Oniszczuk
2022-04-06 14:58         ` Sascha Hauer
2022-04-06 14:58           ` Sascha Hauer
2022-04-06 14:58           ` Sascha Hauer
2022-04-06 14:58           ` Sascha Hauer
2022-04-06 16:00           ` Piotr Oniszczuk
2022-04-06 16:00             ` Piotr Oniszczuk
2022-04-06 16:00             ` Piotr Oniszczuk
2022-04-06 16:00             ` Piotr Oniszczuk
2022-04-07 10:16             ` Sascha Hauer
2022-04-07 10:16               ` Sascha Hauer
2022-04-07 10:16               ` Sascha Hauer
2022-04-07 10:16               ` Sascha Hauer
2022-04-07 15:02               ` Piotr Oniszczuk
2022-04-07 15:02                 ` Piotr Oniszczuk
2022-04-07 15:02                 ` Piotr Oniszczuk
2022-04-07 15:02                 ` Piotr Oniszczuk
2022-04-08  8:07         ` Sascha Hauer
2022-04-08  8:07           ` Sascha Hauer
2022-04-08  8:07           ` Sascha Hauer
2022-04-08  8:07           ` Sascha Hauer
2022-04-08 12:00           ` Sascha Hauer
2022-04-08 12:00             ` Sascha Hauer
2022-04-08 12:00             ` Sascha Hauer
2022-04-08 12:00             ` Sascha Hauer
2022-04-08 15:54             ` Piotr Oniszczuk
2022-04-08 15:54               ` Piotr Oniszczuk
2022-04-08 15:54               ` Piotr Oniszczuk
2022-04-08 15:54               ` Piotr Oniszczuk
2022-04-11  9:08               ` Sascha Hauer
2022-04-11  9:08                 ` Sascha Hauer
2022-04-11  9:08                 ` Sascha Hauer
2022-04-11  9:08                 ` Sascha Hauer
2022-04-11 11:07                 ` Piotr Oniszczuk
2022-04-11 11:07                   ` Piotr Oniszczuk
2022-04-11 11:07                   ` Piotr Oniszczuk
2022-04-11 11:07                   ` Piotr Oniszczuk
2022-04-12  7:50                   ` Sascha Hauer
2022-04-12  7:50                     ` Sascha Hauer
2022-04-12  7:50                     ` Sascha Hauer
2022-04-12  7:50                     ` Sascha Hauer
2022-04-12  8:10                     ` Lucas Stach [this message]
2022-04-12  8:10                       ` Lucas Stach
2022-04-12  8:10                       ` Lucas Stach
2022-04-12  8:10                       ` Lucas Stach
2022-04-12 10:14                       ` Piotr Oniszczuk
2022-04-12 10:14                         ` Piotr Oniszczuk
2022-04-12 10:14                         ` Piotr Oniszczuk
2022-04-12 10:14                         ` Piotr Oniszczuk
2022-04-12 11:30                         ` Daniel Stone
2022-04-12 11:30                           ` Daniel Stone
2022-04-12 11:30                           ` Daniel Stone
2022-04-12 11:30                           ` Daniel Stone
2022-04-15 11:11                           ` Piotr Oniszczuk
2022-04-15 11:11                             ` Piotr Oniszczuk
2022-04-15 11:11                             ` Piotr Oniszczuk
2022-04-15 11:11                             ` Piotr Oniszczuk
2022-04-25 14:54                             ` Daniel Stone
2022-04-25 14:54                               ` Daniel Stone
2022-04-25 14:54                               ` Daniel Stone
2022-04-25 14:54                               ` Daniel Stone
2022-04-12  9:28                     ` Piotr Oniszczuk
2022-04-12  9:28                       ` Piotr Oniszczuk
2022-04-12  9:28                       ` Piotr Oniszczuk
2022-04-12  9:28                       ` Piotr Oniszczuk
2022-04-02  1:37     ` Andy Yan
2022-04-02  1:37       ` Andy Yan
2022-04-02  1:37       ` Andy Yan
2022-04-02  1:37       ` Andy Yan
2022-04-05  9:37       ` Sascha Hauer
2022-04-05  9:37         ` Sascha Hauer
2022-04-05  9:37         ` Sascha Hauer
2022-04-05  9:37         ` Sascha Hauer
2022-04-06  2:02         ` Andy Yan
2022-04-06  2:02           ` Andy Yan
2022-04-06  2:02           ` Andy Yan
2022-04-06  2:02           ` Andy Yan
2022-04-06  8:13           ` Sascha Hauer
2022-04-06  8:13             ` Sascha Hauer
2022-04-06  8:13             ` Sascha Hauer
2022-04-06  8:13             ` Sascha Hauer
2022-04-06  8:36             ` Andy Yan
2022-04-06  8:36               ` Andy Yan
2022-04-06  8:36               ` Andy Yan
2022-04-06  8:36               ` Andy Yan
2022-04-06 14:54               ` Sascha Hauer
2022-04-06 14:54                 ` Sascha Hauer
2022-04-06 14:54                 ` Sascha Hauer
2022-04-06 14:54                 ` Sascha Hauer

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e2ef484b60fe9c5fc077240a26bd18275974dc4a.camel@pengutronix.de \
    --to=l.stach@pengutronix.de \
    --cc=andy.yan@rock-chips.com \
    --cc=benjamin.gaignard@collabora.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=hjc@rock-chips.com \
    --cc=kernel@pengutronix.de \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-rockchip@lists.infradead.org \
    --cc=lst@pengutronix.de \
    --cc=michael.riesch@wolfvision.net \
    --cc=pgwipeout@gmail.com \
    --cc=piotr.oniszczuk@gmail.com \
    --cc=s.hauer@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.