On Mon, Oct 24, 2016 at 10:40 PM, Maxime Ripard <maxime.ripard@xxxxxxxxxxxxxxxxxx> wrote: > 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? RGB556 and RGB655. > >> > + 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. Cool! Thanks. ChenYu > > Thanks! > Maxime > > -- > Maxime Ripard, Free Electrons > Embedded Linux and Kernel engineering > http://free-electrons.com _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel