[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220127032539.9929-1-etom@igel.co.jp>
Date: Thu, 27 Jan 2022 12:25:36 +0900
From: Tomohito Esaki <etom@...l.co.jp>
To: dri-devel@...ts.freedesktop.org
Cc: Alex Deucher <alexander.deucher@....com>,
Christian König <christian.koenig@....com>,
"Pan, Xinhui" <Xinhui.Pan@....com>,
David Airlie <airlied@...ux.ie>,
Daniel Vetter <daniel@...ll.ch>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Maxime Ripard <mripard@...nel.org>,
Thomas Zimmermann <tzimmermann@...e.de>,
Ben Skeggs <bskeggs@...hat.com>,
Michel Dänzer <mdaenzer@...hat.com>,
Simon Ser <contact@...rsion.fr>,
Qingqing Zhuo <qingqing.zhuo@....com>,
Bas Nieuwenhuizen <bas@...nieuwenhuizen.nl>,
Mark Yacoub <markyacoub@...omium.org>,
Sean Paul <seanpaul@...omium.org>,
Evan Quan <evan.quan@....com>,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
Petr Mladek <pmladek@...e.com>,
Sakari Ailus <sakari.ailus@...ux.intel.com>,
Lee Jones <lee.jones@...aro.org>,
Abhinav Kumar <abhinavk@...eaurora.org>,
Dmitry Baryshkov <dmitry.baryshkov@...aro.org>,
Rob Clark <robdclark@...omium.org>,
amd-gfx@...ts.freedesktop.org, linux-kernel@...r.kernel.org,
nouveau@...ts.freedesktop.org, Daniel Stone <daniel@...ishbar.org>,
Laurent Pinchart <laurent.pinchart@...asonboard.com>,
Tomohito Esaki <etom@...l.co.jp>,
Damian Hobson-Garcia <dhobsong@...l.co.jp>,
Takanari Hayama <taki@...l.co.jp>
Subject: [RFC PATCH v5 0/3] Add support modifiers for drivers whose planes only support linear layout
Some drivers whose planes only support linear layout fb do not support format
modifiers.
These drivers should support modifiers, however the DRM core should handle this
rather than open-coding in every driver.
In this patch series, these drivers expose format modifiers based on the
following suggestion[1].
On Thu, Nov 18, 2021 at 01:02:11PM +0000, Daniel Stone wrote:
> I think the best way forward here is:
> - add a new mode_config.cannot_support_modifiers flag, and enable
> this in radeon (plus any other drivers in the same boat)
> - change drm_universal_plane_init() to advertise the LINEAR modifier
> when NULL is passed as the modifier list (including installing a
> default .format_mod_supported hook)
> - remove the mode_config.allow_fb_modifiers hook and always
> advertise modifier support, unless
> mode_config.cannot_support_modifiers is set
[1] https://patchwork.kernel.org/project/linux-renesas-soc/patch/20190509054518.10781-1-etom@igel.co.jp/#24602575
v5:
* rebase to the latest master branch (5.17-rc1+)
+ "drm/plane: Make format_mod_supported truly optional" patch [2]
[2] https://patchwork.freedesktop.org/patch/467940/?series=98255&rev=3
* change default_modifiers array from non-static to static
* remove terminator in default_modifiers array
* use ARRAY_SIZE to get the format_modifier_count
* keep a sanity check in plane init func
* modify several kerneldocs
v4: https://www.spinics.net/lists/dri-devel/msg329508.html
* modify documentation for fb_modifiers_not_supported flag in kerneldoc
v3: https://www.spinics.net/lists/dri-devel/msg329102.html
* change the order as follows:
1. add fb_modifiers_not_supported flag
2. add default modifiers
3. remove allow_fb_modifiers flag
* add a conditional disable in amdgpu_dm_plane_init()
v2: https://www.spinics.net/lists/dri-devel/msg328939.html
* rebase to the latest master branch (5.16.0+)
+ "drm/plane: Make format_mod_supported truly optional" patch [2]
v1: https://www.spinics.net/lists/dri-devel/msg327352.html
* The initial patch set
Tomohito Esaki (3):
drm: introduce fb_modifiers_not_supported flag in mode_config
drm: add support modifiers for drivers whose planes only support
linear layout
drm: remove allow_fb_modifiers
drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 6 ++---
drivers/gpu/drm/amd/amdgpu/dce_v10_0.c | 2 ++
drivers/gpu/drm/amd/amdgpu/dce_v11_0.c | 2 ++
drivers/gpu/drm/amd/amdgpu/dce_v6_0.c | 1 +
drivers/gpu/drm/amd/amdgpu/dce_v8_0.c | 2 ++
.../gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 3 +++
drivers/gpu/drm/drm_framebuffer.c | 6 ++---
drivers/gpu/drm/drm_ioctl.c | 2 +-
drivers/gpu/drm/drm_plane.c | 23 +++++++++++--------
drivers/gpu/drm/nouveau/nouveau_display.c | 6 +++--
drivers/gpu/drm/radeon/radeon_display.c | 2 ++
.../gpu/drm/selftests/test-drm_framebuffer.c | 1 -
include/drm/drm_mode_config.h | 18 +++++----------
include/drm/drm_plane.h | 3 +++
14 files changed, 45 insertions(+), 32 deletions(-)
--
2.25.1
Powered by blists - more mailing lists