mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-06 13:48:06 +02:00
gallium: introduce format modifier querying
format modifiers tokens are driver specific, and hence, need to come
in from the driver. this allows drivers to be queried for supported
format modifiers for EGL_EXT_image_dma_buf_import_modifiers.
v2: rebase to master.
v3: drivers must return false on query failure.
v4: use pscreen->is_format_supported instead of adding a separate
format query handle, remove PIPE_CAP_QUERY_DMABUF_ATTRIBS.
(Lucas Stach)
v5: add external_only parameter.
Signed-off-by: Varad Gautam <varad.gautam@collabora.com>
Cc: Lucas Stach <l.stach@pengutronix.de>
Reviewed-by: Lucas Stach <l.stach@pengutronix.de>
This commit is contained in:
parent
cf748242d1
commit
e0965a2c8e
1 changed files with 14 additions and 0 deletions
|
|
@ -343,6 +343,20 @@ struct pipe_screen {
|
|||
struct pipe_screen *,
|
||||
const struct pipe_resource *templat,
|
||||
const uint64_t *modifiers, int count);
|
||||
|
||||
/**
|
||||
* Get supported modifiers for a format.
|
||||
* If \p max is 0, the total number of supported modifiers for the supplied
|
||||
* format is returned in \p count, with no modification to \p modifiers.
|
||||
* Otherwise, \p modifiers is filled with upto \p max supported modifier
|
||||
* codes, and \p count with the number of modifiers copied.
|
||||
* The \p external_only array is used to return whether the format and
|
||||
* modifier combination can only be used with an external texture target.
|
||||
*/
|
||||
void (*query_dmabuf_modifiers)(struct pipe_screen *screen,
|
||||
enum pipe_format format, int max,
|
||||
uint64_t *modifiers,
|
||||
unsigned int *external_only, int *count);
|
||||
};
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue