Hi, On Fri, Oct 21, 2016 at 11:15:32AM +0800, Chen-Yu Tsai wrote: > On Tue, Oct 18, 2016 at 4:46 PM, Maxime Ripard > <maxime.ripard@xxxxxxxxxxxxxxxxxx> wrote: > > The planes can do more than what was previously exposed. Add support for > > them. > > > > Signed-off-by: Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx> > > --- > > drivers/gpu/drm/sun4i/sun4i_backend.c | 20 ++++++++++++++++++++ > > drivers/gpu/drm/sun4i/sun4i_layer.c | 6 ++++++ > > 2 files changed, 26 insertions(+) > > > > diff --git a/drivers/gpu/drm/sun4i/sun4i_backend.c b/drivers/gpu/drm/sun4i/sun4i_backend.c > > index afb7ddf660ef..b184a476a480 100644 > > --- a/drivers/gpu/drm/sun4i/sun4i_backend.c > > +++ b/drivers/gpu/drm/sun4i/sun4i_backend.c > > @@ -96,6 +96,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; > > The A20 manual only lists ARGB4444, not RGBA4444. There might be > some discrepancy here. We can deal with them Hmm, yes, that's weird. But I guess this would be part of porting it to the A20. > Also there are some more formats missing from the list, could you > add them as well? Which one do you refer to? > > + break; > > + > > case DRM_FORMAT_XRGB8888: > > *mode = SUN4I_BACKEND_LAY_FBFMT_XRGB8888; > > break; > > @@ -104,6 +120,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; > > } > > diff --git a/drivers/gpu/drm/sun4i/sun4i_layer.c b/drivers/gpu/drm/sun4i/sun4i_layer.c > > index f0035bf5efea..5d53c977bca5 100644 > > --- a/drivers/gpu/drm/sun4i/sun4i_layer.c > > +++ b/drivers/gpu/drm/sun4i/sun4i_layer.c > > @@ -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, > > Could you explain in the commit log why these 2 aren't the same? Yep, I will. Thanks! Maxime -- Maxime Ripard, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
Attachment:
signature.asc
Description: PGP signature
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel