[PATCH 0/2] drm: imx: Add NWL MIPI DSI host controller support

Guido Günther agx at sigxcpu.org
Thu Mar 7 10:30:51 UTC 2019

This adds initial support for the NWL MIPI DSI Host controller found on i.MX8

It adds support for the i.MX8MQ but the same IP core can also be found on e.g.
i.MX8QXP. I added the necessary hooks to support other imx8 variants but since
I only have imx8mq boards to test I omitted the platform data for other SoCs.

The code is based on NXPs BSP so I added Robert Chiras as Co-authored-by but
I'm happy to swap Author: and Co-authored-by: if that looks more appropriate.
The most notable changes over the BSP driver are
 - Calculate HS mode timing from phy_configure_opts_mipi_dphy
 - Perform all clock setup via DT
 - Merge nwl-imx and nwl drivers
 - Add B0 silion revision quirk

Posting this is likely a bit premature (hence v0) but I wanted for one show how
this hooks into the mixel dphy posted earlier [1] and avoid duplicating work.
So if there's other code out there doing the same I'm be happy to merge

It has been tested quite bit (in a version backported to 4.18) on Librem 5
devkit using DCSS (which is not mainlined yet) and a MIPI DSI panel[2]. In
principle LCDIF can also act as input source. I intend look into next so this
can actually be tested without further patches on mainline kernels.

[1]: https://lists.freedesktop.org/archives/dri-devel/2019-March/209680.html
[2]: https://source.puri.sm/guido.gunther/linux-imx8/tree/imx8-4.18-wip-nwl-dsi-rework

Guido Günther (2):
  dt-bindings: imx: Add binding for IMX NWL mipi dsi host controller
  drm/imx: Add NWL MIPI DSI host controller support

 .../bindings/display/imx/imx-nwl-dsi.txt      |  72 ++
 drivers/gpu/drm/Kconfig                       |   2 +
 drivers/gpu/drm/Makefile                      |   1 +
 drivers/gpu/drm/nwl/Kconfig                   |  12 +
 drivers/gpu/drm/nwl/Makefile                  |   2 +
 drivers/gpu/drm/nwl/nwl-drv.c                 | 594 ++++++++++++++
 drivers/gpu/drm/nwl/nwl-drv.h                 |  68 ++
 drivers/gpu/drm/nwl/nwl-dsi.c                 | 752 ++++++++++++++++++
 drivers/gpu/drm/nwl/nwl-dsi.h                 | 105 +++
 9 files changed, 1608 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/display/imx/imx-nwl-dsi.txt
 create mode 100644 drivers/gpu/drm/nwl/Kconfig
 create mode 100644 drivers/gpu/drm/nwl/Makefile
 create mode 100644 drivers/gpu/drm/nwl/nwl-drv.c
 create mode 100644 drivers/gpu/drm/nwl/nwl-drv.h
 create mode 100644 drivers/gpu/drm/nwl/nwl-dsi.c
 create mode 100644 drivers/gpu/drm/nwl/nwl-dsi.h


More information about the dri-devel mailing list