mirror of https://gitee.com/openkylin/linux.git
drm/sun4i: Add a few formats
The planes can do more than what was previously exposed. Add support for them. Since we still have the issue that the primary plane cannot have any alpha component, we will expose only the non-alpha formats in the primary formats, and the alpha formats will be exposed in the overlays. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Acked-by: Chen-Yu Tsai <wens@csie.org>
This commit is contained in:
parent
49c440e87c
commit
47d7fbb32c
|
@ -95,6 +95,22 @@ static int sun4i_backend_drm_format_to_layer(struct drm_plane *plane,
|
|||
*mode = SUN4I_BACKEND_LAY_FBFMT_ARGB8888;
|
||||
break;
|
||||
|
||||
case DRM_FORMAT_ARGB4444:
|
||||
*mode = SUN4I_BACKEND_LAY_FBFMT_ARGB4444;
|
||||
break;
|
||||
|
||||
case DRM_FORMAT_ARGB1555:
|
||||
*mode = SUN4I_BACKEND_LAY_FBFMT_ARGB1555;
|
||||
break;
|
||||
|
||||
case DRM_FORMAT_RGBA5551:
|
||||
*mode = SUN4I_BACKEND_LAY_FBFMT_RGBA5551;
|
||||
break;
|
||||
|
||||
case DRM_FORMAT_RGBA4444:
|
||||
*mode = SUN4I_BACKEND_LAY_FBFMT_RGBA4444;
|
||||
break;
|
||||
|
||||
case DRM_FORMAT_XRGB8888:
|
||||
*mode = SUN4I_BACKEND_LAY_FBFMT_XRGB8888;
|
||||
break;
|
||||
|
@ -103,6 +119,10 @@ static int sun4i_backend_drm_format_to_layer(struct drm_plane *plane,
|
|||
*mode = SUN4I_BACKEND_LAY_FBFMT_RGB888;
|
||||
break;
|
||||
|
||||
case DRM_FORMAT_RGB565:
|
||||
*mode = SUN4I_BACKEND_LAY_FBFMT_RGB565;
|
||||
break;
|
||||
|
||||
default:
|
||||
return -EINVAL;
|
||||
}
|
||||
|
|
|
@ -73,12 +73,18 @@ static const struct drm_plane_funcs sun4i_backend_layer_funcs = {
|
|||
static const uint32_t sun4i_backend_layer_formats_primary[] = {
|
||||
DRM_FORMAT_ARGB8888,
|
||||
DRM_FORMAT_RGB888,
|
||||
DRM_FORMAT_RGB565,
|
||||
DRM_FORMAT_XRGB8888,
|
||||
};
|
||||
|
||||
static const uint32_t sun4i_backend_layer_formats_overlay[] = {
|
||||
DRM_FORMAT_ARGB8888,
|
||||
DRM_FORMAT_ARGB4444,
|
||||
DRM_FORMAT_ARGB1555,
|
||||
DRM_FORMAT_RGBA5551,
|
||||
DRM_FORMAT_RGBA4444,
|
||||
DRM_FORMAT_RGB888,
|
||||
DRM_FORMAT_RGB565,
|
||||
DRM_FORMAT_XRGB8888,
|
||||
};
|
||||
|
||||
|
|
Loading…
Reference in New Issue