[RFC 4/4] drm/panel/ili9341: Support mi0283qt

Emil Velikov emil.l.velikov at gmail.com
Wed Jul 31 13:35:16 UTC 2019


On Tue, 30 Jul 2019 at 18:33, Noralf Trønnes <noralf at tronnes.org> wrote:
> Den 30.07.2019 19.12, skrev Emil Velikov:
> > On 2019/07/30, Daniel Vetter wrote:
> >> On Tue, Jul 30, 2019 at 4:30 PM Noralf Trønnes <noralf at tronnes.org> wrote:
> >>>
> >>>
> >>>
> >>> Den 29.07.2019 21.55, skrev Noralf Trønnes:
> >>>> Signed-off-by: Noralf Trønnes <noralf at tronnes.org>
> >>>> ---
> >>>>  drivers/gpu/drm/panel/panel-ilitek-ili9341.c | 179 ++++++++++++++++++-
> >>>>  1 file changed, 170 insertions(+), 9 deletions(-)
> >>>>
> >>>
> >>> I have realised that this will change the DRM driver name from mi0283qt
> >>> to drm_mipi_dbi. This means that this panel will loose its MESA kmsro[1]
> >>> support. I haven't tried it, but this is the first thing that gives this
> >>> driver any real advantage over its fbdev counterpart in
> >>> drivers/staging/fbtft, so I don't want to loose that.
> >>> So even if MIPI DBI panel support is implemented in some form, I will
> >>> wait with converting mi0283qt until someone has updated the kmsro driver.
> >>
> >> Why does it change? You should be able to stuff whatever you feel like
> >> into the drm driver name, this doesn't have to match either your
> >> platform/spi/whatever driver name nor the module option.
> >
> > Last time i've looked DRM drivers using the mipi dsi helpers do _not_
> > have "drm_mipi_dsi" as their driver name. Hence drivers using the mipi
> > dbi should not have "drm_mipi_dbi".
> >
>
> What purpose does the DRM driver name serve for userspace?
> Why can't it be called drm_mipi_dbi? Because multiple panel drivers will
> use the same name? You're statement implies that there are some rules
> regarding DRM driver naming.
>
As you point out in the kmsro case - we use those to "pair" KMS with GPU device.
We could use another, more robust solution, yet ETIME so this will do for now.

> > That said, we should probably highlight even more that the driver name
> > is an ABI.
> >
>
> This I didn't know.
>
One simple example that has existed for years is amdgpu vs radeon distinction.
In Mesa the radeonsi driver could use either driver. Although
interacting with each one happens via a different set of ioctls.
Additionally, a different set of features (and workarounds) is used
depending on the version exposed by the driver.

All these fields (and a bit more) are exposed to userspace via the
drm_version() function/ioctl.

HTH
Emil


More information about the dri-devel mailing list