diff options
| author | Arun R Murthy <[email protected]> | 2025-04-07 05:43:45 +0000 |
|---|---|---|
| committer | Suraj Kandpal <[email protected]> | 2025-05-09 09:59:40 +0000 |
| commit | 9cd5cc9da7ff650f1e9818dbfd54232c00ec47ed (patch) | |
| tree | 38a172d2801d6cc252de0d5c5654ef1c101c271e /drivers/gpu/drm/drm_plane.c | |
| parent | drm/cirrus: Use non-hybrid PCI devres API (diff) | |
| download | kernel-9cd5cc9da7ff650f1e9818dbfd54232c00ec47ed.tar.gz kernel-9cd5cc9da7ff650f1e9818dbfd54232c00ec47ed.zip | |
drm/plane: Add new plane property IN_FORMATS_ASYNC
There exists a property IN_FORMATS which exposes the plane supported
modifiers/formats to the user. In some platforms when asynchronous flip
are used all of modifiers/formats mentioned in IN_FORMATS are not
supported. This patch adds a new plane property IN_FORMATS_ASYNC to
expose the async flip supported modifiers/formats so that user can use
this information ahead and do flip with unsupported
formats/modifiers. This will save flip failures.
Add a new function pointer similar to format_mod_supported specifically
for asynchronous flip.
v2: Remove async variable from drm_plane (Ville)
v3: Add new function pointer for async (Ville)
v5: Typo corrected in commit message & some correction in the kernel
documentation. (Chaitanya)
v7: Place IN_FORMATS_ASYNC next to IN_FORMATS (Ville)
v8: replace uint32_t with u32 and uint64_t with u64 (Chaitanya)
Signed-off-by: Arun R Murthy <[email protected]>
Acked-by: Xaver Hugl <[email protected]>
Acked-by: Harry Wentland <[email protected]>
Reviewed-by: Chaitanya Kumar Borah <[email protected]>
Reviewed-by: Ville Syrjälä <[email protected]>
Tested-by: Naveen Kumar <[email protected]>
Signed-off-by: Suraj Kandpal <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Diffstat (limited to 'drivers/gpu/drm/drm_plane.c')
| -rw-r--r-- | drivers/gpu/drm/drm_plane.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_plane.c b/drivers/gpu/drm/drm_plane.c index a28b22fdd7a4..fe181c100217 100644 --- a/drivers/gpu/drm/drm_plane.c +++ b/drivers/gpu/drm/drm_plane.c @@ -141,6 +141,14 @@ * various bugs in this area with inconsistencies between the capability * flag and per-plane properties. * + * IN_FORMATS_ASYNC: + * Blob property which contains the set of buffer format and modifier + * pairs supported by this plane for asynchronous flips. The blob is a struct + * drm_format_modifier_blob. Userspace cannot change this property. This is an + * optional property and if not present then user should expect a failure in + * atomic ioctl when the modifier/format is not supported by that plane under + * asynchronous flip. + * * SIZE_HINTS: * Blob property which contains the set of recommended plane size * which can used for simple "cursor like" use cases (eg. no scaling). |
