[EXT] Re: [PATCH v2 06/15] drm/mxsfb: Update mxsfb with additional pixel formats
Robert Chiras
robert.chiras at nxp.com
Wed Aug 14 14:58:47 UTC 2019
Hi Daniel,
On Mi, 2019-08-14 at 12:44 +0100, Daniel Stone wrote:
> Hi Robert,
>
> On Wed, 14 Aug 2019 at 11:49, Robert Chiras <robert.chiras at nxp.com>
> wrote:
> >
> > + case DRM_FORMAT_BGR565: /* BG16 */
> > + if (mxsfb->devdata->ipversion < 4)
> > + goto err;
> > + writel(CTRL2_ODD_LINE_PATTERN(CTRL2_LINE_PATTERN_BG
> > R) |
> > + CTRL2_EVEN_LINE_PATTERN(CTRL2_LINE_PATTERN_
> > BGR),
> > + mxsfb->base + LCDC_V4_CTRL2 + REG_SET);
> > + /* Fall through */
> > + case DRM_FORMAT_RGB565: /* RG16 */
> > + ctrl |= CTRL_SET_WORD_LENGTH(0);
> > + ctrl &= ~CTRL_DF16;
> > + ctrl1 |= CTRL1_SET_BYTE_PACKAGING(0xf);
> > + break;
> For non-BGR formats, do you need to write RGB line-pattern back to
> the
> CTRL2 register? Otherwise, if you start with BGR565 then switch back
> to RGB565, presumably CTRL2 would still be programmed for BGR so you
> would display inverted channels.
The LINE_PATTERN from LCDC_V4_CTRL2 register is cleared above, with
this code:
+ if (mxsfb->devdata->ipversion >= 4)
+ writel(CTRL2_ODD_LINE_PATTERN(CTRL2_LINE_PATTERN_CLR) |
+ CTRL2_EVEN_LINE_PATTERN(CTRL2_LINE_PATTERN_CLR),
+ mxsfb->base + LCDC_V4_CTRL2 + REG_CLR);
>
> Same goes for all the other BGR/RGB format pairs below.
>
> Cheers,
> Daniel
Thanks,
Robert
More information about the dri-devel
mailing list