Skip to content

Draft: gbm: Allow GBM allocation of YUV surfaces

Rob Clark requested to merge robclark/mesa:gbm/yuv into main

YUV surfaces may potentially not be renderable by the GPU itself, but they can be sampled from the GPU, and exported to other devices such as video decoder which can render into them.

This is required by chrome/chromium v4l2 based video decode stack. In the context of ChromeOS, minigbm allows for allocating YUV gbm BOs. This brings parity to minigbm, so that the v4l2 codec stack can also be used on linux.

Suggested-by: #7745 Closes: #9079 Signed-off-by: Rob Clark robdclark@chromium.org


Note this probably requires a bit more driver work to deal with the pipe_surface->next trick for handling the extra planes. But not sure how to test this yet, so marking Draft for now.


See also https://chromium-review.googlesource.com/c/chromium/src/+/3380426 for related discussion.

Edited by Rob Clark

Merge request reports