Re: [PATCH v2 4/9] drm/panel: Add driver for the LG Philips LB035Q02 panel

Laurent Pinchart
2019-08-11T13:35:11Z

Hi Noralf,

On Sun, Aug 11, 2019 at 03:19:13PM +0200, Noralf Trønnes wrote:
> Sam,
>
> Den 11.08.2019 01.10, skrev Laurent Pinchart:
> > This panel is used on the Gumstix Overo Palo35.
> >
> > The code is based on the omapdrm-specific panel-lgphilips-lb035q02
> > driver.
> >
> > Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> > Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
> > ---
>
> <snip>
>
> > diff --git a/drivers/gpu/drm/panel/panel-lg-lb035q02.c b/drivers/gpu/drm/panel/panel-lg-lb035q02.c
>
> <snip>
>
> > +static int lb035q02_write(struct lb035q02_device *lcd, u16 reg, u16 val)
> > +{
> > + struct spi_message msg;
> > + struct spi_transfer index_xfer = {
> > + .len = 3,
> > + .cs_change = 1,
> > + };
> > + struct spi_transfer value_xfer = {
> > + .len = 3,
> > + };
> > + u8 buffer[16];
> > +
> > + spi_message_init(&msg);
> > +
> > + /* register index */
> > + buffer[0] = 0x70;
> > + buffer[1] = 0x00;
> > + buffer[2] = reg & 0x7f;
> > + index_xfer.tx_buf = buffer;
> > + spi_message_add_tail(&index_xfer, &msg);
> > +
> > + /* register value */
> > + buffer[4] = 0x72;
> > + buffer[5] = val >> 8;
> > + buffer[6] = val;
> > + value_xfer.tx_buf = buffer + 4;
> > + spi_message_add_tail(&value_xfer, &msg);
> > +
> > + return spi_sync(lcd->spi, &msg);
> > +}
>
> Just a note to Sam:
> This is the same spi protocol that the ili9325 controller on the hy28b
> panel uses.
>
> I remembered that I have experimented with a regmap implementation:
> https://github.com/notro/tinydrm/blob/master/tinydrm-ili9325.c#L191

That's useful information, thanks. The controller seems different
though, the limited information available in
https://www.beyondinfinite.com/lcd/Library/LG-Philips/LB035Q02.pdf
doesn't match the registers from