Hi Daniel, At 2024-12-10 01:06:05, "Daniel Stone" <dan...@fooishbar.org> wrote: >Hi Andy, > >On Mon, 9 Dec 2024 at 12:32, Andy Yan <andys...@163.com> wrote: >> diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c >> b/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c >> index bd8db45eeba6..1f101a3c3942 100644 >> --- a/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c >> +++ b/drivers/gpu/drm/rockchip/rockchip_drm_vop2.c >> @@ -1224,7 +1224,15 @@ static int vop2_plane_atomic_check(struct drm_plane >> *plane, >> return -EINVAL; >> } >> } >> + } >> >> + if (fb->format->format == DRM_FORMAT_XRGB2101010 || >> fb->format->format == DRM_FORMAT_XBGR2101010) { >> + if (vop2->data->soc_id == 3588) { >> + if (!rockchip_afbc(plane, fb->modifier)) { >> + drm_err(vop2->drm, "Unsupported linear 32 >> bpp for %s\n", win->data->name); >> + return -EINVAL; >> + } >> + } > >Please do this in the format_mod_supported() hook, so userspace can >see the true support of each format/modifier per plane. This will then >be checked in drm_atomic_plane_check() so you don't need to open-code >it here.
Thanks, will do in V6. > >Cheers, >Daniel