amdgpu: Add 10-bit color formats.
Should be fine for rendering and texturing. AMDGPU only exposes this on the primary plane though, not on the overlay or cursor. I strongly suspect the HW could also do this on the overlay but I lack a proper testcase for now. BUG=b:159011420 TEST=Run tast.video.Play.vp9_2_sw on Zork Change-Id: Ie3a5356576a960985aac0ba16665425f45bd1541 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/minigbm/+/2272566 Tested-by: Bas Nieuwenhuizen <basni@chromium.org> Reviewed-by: Miguel Casas <mcasas@chromium.org> Reviewed-by: Gurchetan Singh <gurchetansingh@chromium.org> Commit-Queue: Bas Nieuwenhuizen <basni@chromium.org>
This commit is contained in:
parent
ae6f34c87c
commit
b16076b583
1 changed files with 15 additions and 3 deletions
18
amdgpu.c
18
amdgpu.c
|
|
@ -47,9 +47,11 @@ struct amdgpu_linear_vma_priv {
|
|||
uint32_t map_flags;
|
||||
};
|
||||
|
||||
const static uint32_t render_target_formats[] = { DRM_FORMAT_ABGR8888, DRM_FORMAT_ARGB8888,
|
||||
DRM_FORMAT_RGB565, DRM_FORMAT_XBGR8888,
|
||||
DRM_FORMAT_XRGB8888 };
|
||||
const static uint32_t render_target_formats[] = {
|
||||
DRM_FORMAT_ABGR8888, DRM_FORMAT_ARGB8888, DRM_FORMAT_RGB565,
|
||||
DRM_FORMAT_XBGR8888, DRM_FORMAT_XRGB8888, DRM_FORMAT_ABGR2101010,
|
||||
DRM_FORMAT_ARGB2101010, DRM_FORMAT_XBGR2101010, DRM_FORMAT_XRGB2101010,
|
||||
};
|
||||
|
||||
const static uint32_t texture_source_formats[] = { DRM_FORMAT_GR88, DRM_FORMAT_R8,
|
||||
DRM_FORMAT_NV21, DRM_FORMAT_NV12,
|
||||
|
|
@ -364,6 +366,11 @@ static int amdgpu_init(struct driver *drv)
|
|||
drv_modify_combination(drv, DRM_FORMAT_ABGR8888, &metadata, BO_USE_SCANOUT);
|
||||
drv_modify_combination(drv, DRM_FORMAT_XBGR8888, &metadata, BO_USE_SCANOUT);
|
||||
|
||||
drv_modify_combination(drv, DRM_FORMAT_ABGR2101010, &metadata, BO_USE_SCANOUT);
|
||||
drv_modify_combination(drv, DRM_FORMAT_ARGB2101010, &metadata, BO_USE_SCANOUT);
|
||||
drv_modify_combination(drv, DRM_FORMAT_XBGR2101010, &metadata, BO_USE_SCANOUT);
|
||||
drv_modify_combination(drv, DRM_FORMAT_XRGB2101010, &metadata, BO_USE_SCANOUT);
|
||||
|
||||
drv_modify_combination(drv, DRM_FORMAT_NV21, &metadata, BO_USE_SCANOUT);
|
||||
|
||||
/*
|
||||
|
|
@ -395,6 +402,11 @@ static int amdgpu_init(struct driver *drv)
|
|||
drv_modify_combination(drv, DRM_FORMAT_XRGB8888, &metadata, BO_USE_CURSOR | BO_USE_SCANOUT);
|
||||
drv_modify_combination(drv, DRM_FORMAT_ABGR8888, &metadata, BO_USE_SCANOUT);
|
||||
drv_modify_combination(drv, DRM_FORMAT_XBGR8888, &metadata, BO_USE_SCANOUT);
|
||||
|
||||
drv_modify_combination(drv, DRM_FORMAT_ABGR2101010, &metadata, BO_USE_SCANOUT);
|
||||
drv_modify_combination(drv, DRM_FORMAT_ARGB2101010, &metadata, BO_USE_SCANOUT);
|
||||
drv_modify_combination(drv, DRM_FORMAT_XBGR2101010, &metadata, BO_USE_SCANOUT);
|
||||
drv_modify_combination(drv, DRM_FORMAT_XRGB2101010, &metadata, BO_USE_SCANOUT);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue