Message ID | 20200601083309.712606-3-sam@ravnborg.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm: add a few simple panels | expand |
Hi, On Mon, Jun 1, 2020 at 1:33 AM Sam Ravnborg <sam@ravnborg.org> wrote: > > The Seiko 70WVW2T is a discontinued product, but may be used somewhere. > Tested on a proprietary product. > > Signed-off-by: Sam Ravnborg <sam@ravnborg.org> > Cc: Søren Andersen <san@skov.dk> > Cc: Thierry Reding <thierry.reding@gmail.com> > Cc: Sam Ravnborg <sam@ravnborg.org> > --- > drivers/gpu/drm/panel/panel-simple.c | 28 ++++++++++++++++++++++++++++ > 1 file changed, 28 insertions(+) > > diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c > index b067f66cea0e..8624bb80108c 100644 > --- a/drivers/gpu/drm/panel/panel-simple.c > +++ b/drivers/gpu/drm/panel/panel-simple.c > @@ -3194,6 +3194,31 @@ static const struct panel_desc shelly_sca07010_bfn_lnn = { > .bus_format = MEDIA_BUS_FMT_RGB666_1X18, > }; > > +static const struct drm_display_mode sii_70wvw2t_mode = { > + .clock = 33000, > + .hdisplay = 800, > + .hsync_start = 800 + 256, > + .hsync_end = 800 + 256 + 0, > + .htotal = 800 + 256 + 0 + 0, > + .vdisplay = 480, > + .vsync_start = 480 + 0, > + .vsync_end = 480 + 0 + 0, > + .vtotal = 480 + 0 + 0 + 45, Important to have a "vrefresh"? > + .flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC, > +}; > + > +static const struct panel_desc sii_70wvw2t = { > + .modes = &sii_70wvw2t_mode, > + .num_modes = 1, Do we want "bpc = 6"? > + .size = { > + .width = 152, > + .height = 91, > + }, > + .bus_format = MEDIA_BUS_FMT_RGB888_1X24, Should this be a 666 format? Random internet-found data sheet says 262K colors...
On Tue, 2 Jun 2020 at 01:31, Doug Anderson <dianders@chromium.org> wrote: > > Hi, > > On Mon, Jun 1, 2020 at 1:33 AM Sam Ravnborg <sam@ravnborg.org> wrote: > > > > The Seiko 70WVW2T is a discontinued product, but may be used somewhere. > > Tested on a proprietary product. > > > > Signed-off-by: Sam Ravnborg <sam@ravnborg.org> > > Cc: Søren Andersen <san@skov.dk> > > Cc: Thierry Reding <thierry.reding@gmail.com> > > Cc: Sam Ravnborg <sam@ravnborg.org> > > --- > > drivers/gpu/drm/panel/panel-simple.c | 28 ++++++++++++++++++++++++++++ > > 1 file changed, 28 insertions(+) > > > > diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c > > index b067f66cea0e..8624bb80108c 100644 > > --- a/drivers/gpu/drm/panel/panel-simple.c > > +++ b/drivers/gpu/drm/panel/panel-simple.c > > @@ -3194,6 +3194,31 @@ static const struct panel_desc shelly_sca07010_bfn_lnn = { > > .bus_format = MEDIA_BUS_FMT_RGB666_1X18, > > }; > > > > +static const struct drm_display_mode sii_70wvw2t_mode = { > > + .clock = 33000, > > + .hdisplay = 800, > > + .hsync_start = 800 + 256, > > + .hsync_end = 800 + 256 + 0, > > + .htotal = 800 + 256 + 0 + 0, > > + .vdisplay = 480, > > + .vsync_start = 480 + 0, > > + .vsync_end = 480 + 0 + 0, > > + .vtotal = 480 + 0 + 0 + 45, > > Important to have a "vrefresh"? > Ville posted a series (most of which already landed) getting removing vrefresh all together. The overall idea is to compute it, in the rare case it's needed. > > > + .flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC, > > +}; > > + > > +static const struct panel_desc sii_70wvw2t = { > > + .modes = &sii_70wvw2t_mode, > > + .num_modes = 1, > > Do we want "bpc = 6"? > The largest user of bpc is userspace - the data gets copied via the ioctls. A secondary, and quite limited, user are drivers exposing the "max bpc" connector property. From a quick look: amdgpu, the synopsys dw-hdmi bridge and i915 do so. In case the data missing, atomics assume a max 8 bpc. > > > + .size = { > > + .width = 152, > > + .height = 91, > > + }, > > + .bus_format = MEDIA_BUS_FMT_RGB888_1X24, > > Should this be a 666 format? Random internet-found data sheet says > 262K colors... Good catch. Would be nice to have a spec sheet link (even if random) in the commit message. HTH -Emil
Hi Doug. On Mon, Jun 01, 2020 at 05:31:06PM -0700, Doug Anderson wrote: > Hi, > > On Mon, Jun 1, 2020 at 1:33 AM Sam Ravnborg <sam@ravnborg.org> wrote: > > > > The Seiko 70WVW2T is a discontinued product, but may be used somewhere. > > Tested on a proprietary product. > > > > Signed-off-by: Sam Ravnborg <sam@ravnborg.org> > > Cc: Søren Andersen <san@skov.dk> > > Cc: Thierry Reding <thierry.reding@gmail.com> > > Cc: Sam Ravnborg <sam@ravnborg.org> > > --- > > drivers/gpu/drm/panel/panel-simple.c | 28 ++++++++++++++++++++++++++++ > > 1 file changed, 28 insertions(+) > > > > diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c > > index b067f66cea0e..8624bb80108c 100644 > > --- a/drivers/gpu/drm/panel/panel-simple.c > > +++ b/drivers/gpu/drm/panel/panel-simple.c > > @@ -3194,6 +3194,31 @@ static const struct panel_desc shelly_sca07010_bfn_lnn = { > > .bus_format = MEDIA_BUS_FMT_RGB666_1X18, > > }; > > > > +static const struct drm_display_mode sii_70wvw2t_mode = { > > + .clock = 33000, > > + .hdisplay = 800, > > + .hsync_start = 800 + 256, > > + .hsync_end = 800 + 256 + 0, > > + .htotal = 800 + 256 + 0 + 0, > > + .vdisplay = 480, > > + .vsync_start = 480 + 0, > > + .vsync_end = 480 + 0 + 0, > > + .vtotal = 480 + 0 + 0 + 45, > > Important to have a "vrefresh"? > > > > + .flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC, > > +}; > > + > > +static const struct panel_desc sii_70wvw2t = { > > + .modes = &sii_70wvw2t_mode, > > + .num_modes = 1, > > Do we want "bpc = 6"? > > > > + .size = { > > + .width = 152, > > + .height = 91, > > + }, > > + .bus_format = MEDIA_BUS_FMT_RGB888_1X24, > > Should this be a 666 format? Random internet-found data sheet says > 262K colors... Thanks for catching this! You are indeed right, this is MEDIA_BUS_FMT_RGB666_1X18 and only bpc = 6. My bad excuse is that other displays for the same HW is RGB888 and bpc = 8. Will fix and repost. Sam
diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c index b067f66cea0e..8624bb80108c 100644 --- a/drivers/gpu/drm/panel/panel-simple.c +++ b/drivers/gpu/drm/panel/panel-simple.c @@ -3194,6 +3194,31 @@ static const struct panel_desc shelly_sca07010_bfn_lnn = { .bus_format = MEDIA_BUS_FMT_RGB666_1X18, }; +static const struct drm_display_mode sii_70wvw2t_mode = { + .clock = 33000, + .hdisplay = 800, + .hsync_start = 800 + 256, + .hsync_end = 800 + 256 + 0, + .htotal = 800 + 256 + 0 + 0, + .vdisplay = 480, + .vsync_start = 480 + 0, + .vsync_end = 480 + 0 + 0, + .vtotal = 480 + 0 + 0 + 45, + .flags = DRM_MODE_FLAG_NVSYNC | DRM_MODE_FLAG_NHSYNC, +}; + +static const struct panel_desc sii_70wvw2t = { + .modes = &sii_70wvw2t_mode, + .num_modes = 1, + .size = { + .width = 152, + .height = 91, + }, + .bus_format = MEDIA_BUS_FMT_RGB888_1X24, + .bus_flags = DRM_BUS_FLAG_PIXDATA_POSEDGE, + .connector_type = DRM_MODE_CONNECTOR_DPI, +}; + static const struct drm_display_mode starry_kr070pe2t_mode = { .clock = 33000, .hdisplay = 800, @@ -3877,6 +3902,9 @@ static const struct of_device_id platform_of_match[] = { }, { .compatible = "shelly,sca07010-bfn-lnn", .data = &shelly_sca07010_bfn_lnn, + }, { + .compatible = "sii,70wvw2t", + .data = &sii_70wvw2t, }, { .compatible = "starry,kr070pe2t", .data = &starry_kr070pe2t,
The Seiko 70WVW2T is a discontinued product, but may be used somewhere. Tested on a proprietary product. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Cc: Søren Andersen <san@skov.dk> Cc: Thierry Reding <thierry.reding@gmail.com> Cc: Sam Ravnborg <sam@ravnborg.org> --- drivers/gpu/drm/panel/panel-simple.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+)