mbox series

[0/8] drm/imx: Introduce i.MX8qxp DPU DRM

Message ID 1605777745-23625-1-git-send-email-victor.liu@nxp.com (mailing list archive)
Headers show
Series drm/imx: Introduce i.MX8qxp DPU DRM | expand

Message

Ying Liu Nov. 19, 2020, 9:22 a.m. UTC
Hi,


This patch set introduces i.MX8qxp Display Processing Unit(DPU) DRM support.

DPU is comprised of a blit engine for 2D graphics, a display controller
and a command sequencer.  Outside of DPU, optional prefetch engines can
fetch data from memory prior to some DPU fetchunits of blit engine and
display controller.  The pre-fetchers support linear formats and Vivante
GPU tile formats.

Reference manual can be found at:
https://www.nxp.com/webapp/Download?colCode=IMX8DQXPRM


This patch set adds kernel modesetting support for the display controller part.
It supports two CRTCs per display controller, several planes, prefetch
engines and some properties of CRTC and plane.  Currently, the registers of
the controller is accessed without command sequencer involved, instead just by
using CPU.  DRM connectors would be created from the DPU KMS driver.


If people want to try this series, clock patches can be found at:
https://www.spinics.net/lists/arm-kernel/msg856137.html

and, power domain patches at:
https://www.spinics.net/lists/arm-kernel/msg856097.html


I will send other patch sets to add downstream bridges(embedded in i.MX8qxp)
to support LVDS displays.

A brief look at the pipe:
prefetch eng -> DPU -> pixel combiner -> pixel link -> pixel to DPI(pxl2dpi) ->
LVDS display bridge(LDB)


Patch 1 ~ 3 add dt-bindings for DPU and prefetch engines.
Patch 4 is a minor improvement of a macro to suppress warning as the KMS driver
uses it.
Patch 5 introduces the DPU DRM support.
Patch 6 updates MAINTAINERS.
Patch 7 & 8 add DPU and prefetch engines support in the device tree of
i.MX8qxp MEK platform.


Welcome comments, thanks.


Liu Ying (8):
  dt-bindings: display: imx: Add i.MX8qxp/qm DPU binding
  dt-bindings: display: imx: Add i.MX8qxp/qm PRG binding
  dt-bindings: display: imx: Add i.MX8qxp/qm DPR channel binding
  drm/atomic: Avoid unused-but-set-variable warning on
    for_each_old_plane_in_state
  drm/imx: Introduce i.MX8qxp DPU DRM
  MAINTAINERS: add maintainer for i.MX8qxp DPU DRM driver
  arm64: imx8qxp:dtsi: Introduce DC0 subsystem
  arm64: dts: imx8qxp-mek: Enable DPU and it's prefetch engines

 .../bindings/display/imx/fsl,imx8qxp-dprc.yaml     |  87 ++
 .../bindings/display/imx/fsl,imx8qxp-dpu.yaml      | 358 ++++++++
 .../bindings/display/imx/fsl,imx8qxp-prg.yaml      |  60 ++
 MAINTAINERS                                        |   9 +
 arch/arm64/boot/dts/freescale/imx8qxp-mek.dts      |  64 ++
 arch/arm64/boot/dts/freescale/imx8qxp.dtsi         | 313 +++++++
 drivers/gpu/drm/imx/Kconfig                        |   1 +
 drivers/gpu/drm/imx/Makefile                       |   1 +
 drivers/gpu/drm/imx/dpu/Kconfig                    |  10 +
 drivers/gpu/drm/imx/dpu/Makefile                   |  10 +
 drivers/gpu/drm/imx/dpu/dpu-constframe.c           | 170 ++++
 drivers/gpu/drm/imx/dpu/dpu-core.c                 | 880 ++++++++++++++++++++
 drivers/gpu/drm/imx/dpu/dpu-crtc.c                 | 926 +++++++++++++++++++++
 drivers/gpu/drm/imx/dpu/dpu-crtc.h                 |  62 ++
 drivers/gpu/drm/imx/dpu/dpu-disengcfg.c            | 114 +++
 drivers/gpu/drm/imx/dpu/dpu-dprc.c                 | 721 ++++++++++++++++
 drivers/gpu/drm/imx/dpu/dpu-dprc.h                 |  40 +
 drivers/gpu/drm/imx/dpu/dpu-drv.c                  | 296 +++++++
 drivers/gpu/drm/imx/dpu/dpu-drv.h                  |  28 +
 drivers/gpu/drm/imx/dpu/dpu-extdst.c               | 296 +++++++
 drivers/gpu/drm/imx/dpu/dpu-fetchdecode.c          | 291 +++++++
 drivers/gpu/drm/imx/dpu/dpu-fetcheco.c             | 221 +++++
 drivers/gpu/drm/imx/dpu/dpu-fetchlayer.c           | 151 ++++
 drivers/gpu/drm/imx/dpu/dpu-fetchunit.c            | 609 ++++++++++++++
 drivers/gpu/drm/imx/dpu/dpu-fetchunit.h            | 191 +++++
 drivers/gpu/drm/imx/dpu/dpu-fetchwarp.c            | 247 ++++++
 drivers/gpu/drm/imx/dpu/dpu-framegen.c             | 392 +++++++++
 drivers/gpu/drm/imx/dpu/dpu-gammacor.c             | 220 +++++
 drivers/gpu/drm/imx/dpu/dpu-hscaler.c              | 272 ++++++
 drivers/gpu/drm/imx/dpu/dpu-kms.c                  | 543 ++++++++++++
 drivers/gpu/drm/imx/dpu/dpu-kms.h                  |  23 +
 drivers/gpu/drm/imx/dpu/dpu-layerblend.c           | 345 ++++++++
 drivers/gpu/drm/imx/dpu/dpu-plane.c                | 703 ++++++++++++++++
 drivers/gpu/drm/imx/dpu/dpu-plane.h                |  56 ++
 drivers/gpu/drm/imx/dpu/dpu-prg.c                  | 389 +++++++++
 drivers/gpu/drm/imx/dpu/dpu-prg.h                  |  45 +
 drivers/gpu/drm/imx/dpu/dpu-prv.h                  | 203 +++++
 drivers/gpu/drm/imx/dpu/dpu-tcon.c                 | 249 ++++++
 drivers/gpu/drm/imx/dpu/dpu-vscaler.c              | 305 +++++++
 drivers/gpu/drm/imx/dpu/dpu.h                      | 389 +++++++++
 include/drm/drm_atomic.h                           |   4 +-
 41 files changed, 10293 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dprc.yaml
 create mode 100644 Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dpu.yaml
 create mode 100644 Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-prg.yaml
 create mode 100644 drivers/gpu/drm/imx/dpu/Kconfig
 create mode 100644 drivers/gpu/drm/imx/dpu/Makefile
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-constframe.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-core.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-crtc.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-crtc.h
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-disengcfg.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-dprc.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-dprc.h
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-drv.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-drv.h
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-extdst.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchdecode.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetcheco.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchlayer.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchunit.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchunit.h
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchwarp.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-framegen.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-gammacor.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-hscaler.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-kms.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-kms.h
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-layerblend.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-plane.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-plane.h
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-prg.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-prg.h
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-prv.h
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-tcon.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu-vscaler.c
 create mode 100644 drivers/gpu/drm/imx/dpu/dpu.h

Comments

Laurentiu Palcu Nov. 19, 2020, 5:30 p.m. UTC | #1
Hi Liu Ying,

On Thu, Nov 19, 2020 at 05:22:17PM +0800, Liu Ying wrote:
> Hi,
> 
> 
> This patch set introduces i.MX8qxp Display Processing Unit(DPU) DRM support.

Glad to see this series out. However, something went wrong with it as
patch 5/8 didn't make it to dri-devel mailing list... :/

https://lists.freedesktop.org/archives/dri-devel/2020-November/thread.html

So, people on to dri-devel may not be able to review it...

However, it did make it to LKML:

https://lkml.org/lkml/2020/11/19/249

Not sure what happened here... :/

Thanks,
laurentiu


> 
> DPU is comprised of a blit engine for 2D graphics, a display controller
> and a command sequencer.  Outside of DPU, optional prefetch engines can
> fetch data from memory prior to some DPU fetchunits of blit engine and
> display controller.  The pre-fetchers support linear formats and Vivante
> GPU tile formats.
> 
> Reference manual can be found at:
> https://www.nxp.com/webapp/Download?colCode=IMX8DQXPRM
> 
> 
> This patch set adds kernel modesetting support for the display controller part.
> It supports two CRTCs per display controller, several planes, prefetch
> engines and some properties of CRTC and plane.  Currently, the registers of
> the controller is accessed without command sequencer involved, instead just by
> using CPU.  DRM connectors would be created from the DPU KMS driver.
> 
> 
> If people want to try this series, clock patches can be found at:
> https://www.spinics.net/lists/arm-kernel/msg856137.html
> 
> and, power domain patches at:
> https://www.spinics.net/lists/arm-kernel/msg856097.html
> 
> 
> I will send other patch sets to add downstream bridges(embedded in i.MX8qxp)
> to support LVDS displays.
> 
> A brief look at the pipe:
> prefetch eng -> DPU -> pixel combiner -> pixel link -> pixel to DPI(pxl2dpi) ->
> LVDS display bridge(LDB)
> 
> 
> Patch 1 ~ 3 add dt-bindings for DPU and prefetch engines.
> Patch 4 is a minor improvement of a macro to suppress warning as the KMS driver
> uses it.
> Patch 5 introduces the DPU DRM support.
> Patch 6 updates MAINTAINERS.
> Patch 7 & 8 add DPU and prefetch engines support in the device tree of
> i.MX8qxp MEK platform.
> 
> 
> Welcome comments, thanks.
> 
> 
> Liu Ying (8):
>   dt-bindings: display: imx: Add i.MX8qxp/qm DPU binding
>   dt-bindings: display: imx: Add i.MX8qxp/qm PRG binding
>   dt-bindings: display: imx: Add i.MX8qxp/qm DPR channel binding
>   drm/atomic: Avoid unused-but-set-variable warning on
>     for_each_old_plane_in_state
>   drm/imx: Introduce i.MX8qxp DPU DRM
>   MAINTAINERS: add maintainer for i.MX8qxp DPU DRM driver
>   arm64: imx8qxp:dtsi: Introduce DC0 subsystem
>   arm64: dts: imx8qxp-mek: Enable DPU and it's prefetch engines
> 
>  .../bindings/display/imx/fsl,imx8qxp-dprc.yaml     |  87 ++
>  .../bindings/display/imx/fsl,imx8qxp-dpu.yaml      | 358 ++++++++
>  .../bindings/display/imx/fsl,imx8qxp-prg.yaml      |  60 ++
>  MAINTAINERS                                        |   9 +
>  arch/arm64/boot/dts/freescale/imx8qxp-mek.dts      |  64 ++
>  arch/arm64/boot/dts/freescale/imx8qxp.dtsi         | 313 +++++++
>  drivers/gpu/drm/imx/Kconfig                        |   1 +
>  drivers/gpu/drm/imx/Makefile                       |   1 +
>  drivers/gpu/drm/imx/dpu/Kconfig                    |  10 +
>  drivers/gpu/drm/imx/dpu/Makefile                   |  10 +
>  drivers/gpu/drm/imx/dpu/dpu-constframe.c           | 170 ++++
>  drivers/gpu/drm/imx/dpu/dpu-core.c                 | 880 ++++++++++++++++++++
>  drivers/gpu/drm/imx/dpu/dpu-crtc.c                 | 926 +++++++++++++++++++++
>  drivers/gpu/drm/imx/dpu/dpu-crtc.h                 |  62 ++
>  drivers/gpu/drm/imx/dpu/dpu-disengcfg.c            | 114 +++
>  drivers/gpu/drm/imx/dpu/dpu-dprc.c                 | 721 ++++++++++++++++
>  drivers/gpu/drm/imx/dpu/dpu-dprc.h                 |  40 +
>  drivers/gpu/drm/imx/dpu/dpu-drv.c                  | 296 +++++++
>  drivers/gpu/drm/imx/dpu/dpu-drv.h                  |  28 +
>  drivers/gpu/drm/imx/dpu/dpu-extdst.c               | 296 +++++++
>  drivers/gpu/drm/imx/dpu/dpu-fetchdecode.c          | 291 +++++++
>  drivers/gpu/drm/imx/dpu/dpu-fetcheco.c             | 221 +++++
>  drivers/gpu/drm/imx/dpu/dpu-fetchlayer.c           | 151 ++++
>  drivers/gpu/drm/imx/dpu/dpu-fetchunit.c            | 609 ++++++++++++++
>  drivers/gpu/drm/imx/dpu/dpu-fetchunit.h            | 191 +++++
>  drivers/gpu/drm/imx/dpu/dpu-fetchwarp.c            | 247 ++++++
>  drivers/gpu/drm/imx/dpu/dpu-framegen.c             | 392 +++++++++
>  drivers/gpu/drm/imx/dpu/dpu-gammacor.c             | 220 +++++
>  drivers/gpu/drm/imx/dpu/dpu-hscaler.c              | 272 ++++++
>  drivers/gpu/drm/imx/dpu/dpu-kms.c                  | 543 ++++++++++++
>  drivers/gpu/drm/imx/dpu/dpu-kms.h                  |  23 +
>  drivers/gpu/drm/imx/dpu/dpu-layerblend.c           | 345 ++++++++
>  drivers/gpu/drm/imx/dpu/dpu-plane.c                | 703 ++++++++++++++++
>  drivers/gpu/drm/imx/dpu/dpu-plane.h                |  56 ++
>  drivers/gpu/drm/imx/dpu/dpu-prg.c                  | 389 +++++++++
>  drivers/gpu/drm/imx/dpu/dpu-prg.h                  |  45 +
>  drivers/gpu/drm/imx/dpu/dpu-prv.h                  | 203 +++++
>  drivers/gpu/drm/imx/dpu/dpu-tcon.c                 | 249 ++++++
>  drivers/gpu/drm/imx/dpu/dpu-vscaler.c              | 305 +++++++
>  drivers/gpu/drm/imx/dpu/dpu.h                      | 389 +++++++++
>  include/drm/drm_atomic.h                           |   4 +-
>  41 files changed, 10293 insertions(+), 1 deletion(-)
>  create mode 100644 Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dprc.yaml
>  create mode 100644 Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dpu.yaml
>  create mode 100644 Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-prg.yaml
>  create mode 100644 drivers/gpu/drm/imx/dpu/Kconfig
>  create mode 100644 drivers/gpu/drm/imx/dpu/Makefile
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-constframe.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-core.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-crtc.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-crtc.h
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-disengcfg.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-dprc.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-dprc.h
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-drv.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-drv.h
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-extdst.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchdecode.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetcheco.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchlayer.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchunit.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchunit.h
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchwarp.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-framegen.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-gammacor.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-hscaler.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-kms.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-kms.h
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-layerblend.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-plane.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-plane.h
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-prg.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-prg.h
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-prv.h
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-tcon.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-vscaler.c
>  create mode 100644 drivers/gpu/drm/imx/dpu/dpu.h
> 
> -- 
> 2.7.4
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
Ying Liu Nov. 20, 2020, 2:23 a.m. UTC | #2
Hi Laurentiu,

On Thu, 2020-11-19 at 19:30 +0200, Laurentiu Palcu wrote:
> Hi Liu Ying,
> 
> On Thu, Nov 19, 2020 at 05:22:17PM +0800, Liu Ying wrote:
> > Hi,
> > 
> > 
> > This patch set introduces i.MX8qxp Display Processing Unit(DPU) DRM support.
> 
> Glad to see this series out. However, something went wrong with it as
> patch 5/8 didn't make it to dri-devel mailing list... :/
> 
> https://lists.freedesktop.org/archives/dri-devel/2020-November/thread.html
> 
> So, people on to dri-devel may not be able to review it...

I think that patch was held for a moment, it appears on dri-devel
archive now:

https://lists.freedesktop.org/archives/dri-devel/2020-November/287958.html

I did receive an email from 'linux-arm-kernel' that says the msg body
of that patch is too big(> 100KB), thus being held for moderator's
review(I hope it pass now).
Maybe, dri-devel did sth similar.

Regards,
Liu Ying

> 
> However, it did make it to LKML:
> 
> https://lkml.org/lkml/2020/11/19/249
> 
> Not sure what happened here... :/
> 
> Thanks,
> laurentiu
> 
> 
> > DPU is comprised of a blit engine for 2D graphics, a display controller
> > and a command sequencer.  Outside of DPU, optional prefetch engines can
> > fetch data from memory prior to some DPU fetchunits of blit engine and
> > display controller.  The pre-fetchers support linear formats and Vivante
> > GPU tile formats.
> > 
> > Reference manual can be found at:
> > https://www.nxp.com/webapp/Download?colCode=IMX8DQXPRM
> > 
> > 
> > This patch set adds kernel modesetting support for the display controller part.
> > It supports two CRTCs per display controller, several planes, prefetch
> > engines and some properties of CRTC and plane.  Currently, the registers of
> > the controller is accessed without command sequencer involved, instead just by
> > using CPU.  DRM connectors would be created from the DPU KMS driver.
> > 
> > 
> > If people want to try this series, clock patches can be found at:
> > https://www.spinics.net/lists/arm-kernel/msg856137.html
> > 
> > and, power domain patches at:
> > https://www.spinics.net/lists/arm-kernel/msg856097.html
> > 
> > 
> > I will send other patch sets to add downstream bridges(embedded in i.MX8qxp)
> > to support LVDS displays.
> > 
> > A brief look at the pipe:
> > prefetch eng -> DPU -> pixel combiner -> pixel link -> pixel to DPI(pxl2dpi) ->
> > LVDS display bridge(LDB)
> > 
> > 
> > Patch 1 ~ 3 add dt-bindings for DPU and prefetch engines.
> > Patch 4 is a minor improvement of a macro to suppress warning as the KMS driver
> > uses it.
> > Patch 5 introduces the DPU DRM support.
> > Patch 6 updates MAINTAINERS.
> > Patch 7 & 8 add DPU and prefetch engines support in the device tree of
> > i.MX8qxp MEK platform.
> > 
> > 
> > Welcome comments, thanks.
> > 
> > 
> > Liu Ying (8):
> >   dt-bindings: display: imx: Add i.MX8qxp/qm DPU binding
> >   dt-bindings: display: imx: Add i.MX8qxp/qm PRG binding
> >   dt-bindings: display: imx: Add i.MX8qxp/qm DPR channel binding
> >   drm/atomic: Avoid unused-but-set-variable warning on
> >     for_each_old_plane_in_state
> >   drm/imx: Introduce i.MX8qxp DPU DRM
> >   MAINTAINERS: add maintainer for i.MX8qxp DPU DRM driver
> >   arm64: imx8qxp:dtsi: Introduce DC0 subsystem
> >   arm64: dts: imx8qxp-mek: Enable DPU and it's prefetch engines
> > 
> >  .../bindings/display/imx/fsl,imx8qxp-dprc.yaml     |  87 ++
> >  .../bindings/display/imx/fsl,imx8qxp-dpu.yaml      | 358 ++++++++
> >  .../bindings/display/imx/fsl,imx8qxp-prg.yaml      |  60 ++
> >  MAINTAINERS                                        |   9 +
> >  arch/arm64/boot/dts/freescale/imx8qxp-mek.dts      |  64 ++
> >  arch/arm64/boot/dts/freescale/imx8qxp.dtsi         | 313 +++++++
> >  drivers/gpu/drm/imx/Kconfig                        |   1 +
> >  drivers/gpu/drm/imx/Makefile                       |   1 +
> >  drivers/gpu/drm/imx/dpu/Kconfig                    |  10 +
> >  drivers/gpu/drm/imx/dpu/Makefile                   |  10 +
> >  drivers/gpu/drm/imx/dpu/dpu-constframe.c           | 170 ++++
> >  drivers/gpu/drm/imx/dpu/dpu-core.c                 | 880 ++++++++++++++++++++
> >  drivers/gpu/drm/imx/dpu/dpu-crtc.c                 | 926 +++++++++++++++++++++
> >  drivers/gpu/drm/imx/dpu/dpu-crtc.h                 |  62 ++
> >  drivers/gpu/drm/imx/dpu/dpu-disengcfg.c            | 114 +++
> >  drivers/gpu/drm/imx/dpu/dpu-dprc.c                 | 721 ++++++++++++++++
> >  drivers/gpu/drm/imx/dpu/dpu-dprc.h                 |  40 +
> >  drivers/gpu/drm/imx/dpu/dpu-drv.c                  | 296 +++++++
> >  drivers/gpu/drm/imx/dpu/dpu-drv.h                  |  28 +
> >  drivers/gpu/drm/imx/dpu/dpu-extdst.c               | 296 +++++++
> >  drivers/gpu/drm/imx/dpu/dpu-fetchdecode.c          | 291 +++++++
> >  drivers/gpu/drm/imx/dpu/dpu-fetcheco.c             | 221 +++++
> >  drivers/gpu/drm/imx/dpu/dpu-fetchlayer.c           | 151 ++++
> >  drivers/gpu/drm/imx/dpu/dpu-fetchunit.c            | 609 ++++++++++++++
> >  drivers/gpu/drm/imx/dpu/dpu-fetchunit.h            | 191 +++++
> >  drivers/gpu/drm/imx/dpu/dpu-fetchwarp.c            | 247 ++++++
> >  drivers/gpu/drm/imx/dpu/dpu-framegen.c             | 392 +++++++++
> >  drivers/gpu/drm/imx/dpu/dpu-gammacor.c             | 220 +++++
> >  drivers/gpu/drm/imx/dpu/dpu-hscaler.c              | 272 ++++++
> >  drivers/gpu/drm/imx/dpu/dpu-kms.c                  | 543 ++++++++++++
> >  drivers/gpu/drm/imx/dpu/dpu-kms.h                  |  23 +
> >  drivers/gpu/drm/imx/dpu/dpu-layerblend.c           | 345 ++++++++
> >  drivers/gpu/drm/imx/dpu/dpu-plane.c                | 703 ++++++++++++++++
> >  drivers/gpu/drm/imx/dpu/dpu-plane.h                |  56 ++
> >  drivers/gpu/drm/imx/dpu/dpu-prg.c                  | 389 +++++++++
> >  drivers/gpu/drm/imx/dpu/dpu-prg.h                  |  45 +
> >  drivers/gpu/drm/imx/dpu/dpu-prv.h                  | 203 +++++
> >  drivers/gpu/drm/imx/dpu/dpu-tcon.c                 | 249 ++++++
> >  drivers/gpu/drm/imx/dpu/dpu-vscaler.c              | 305 +++++++
> >  drivers/gpu/drm/imx/dpu/dpu.h                      | 389 +++++++++
> >  include/drm/drm_atomic.h                           |   4 +-
> >  41 files changed, 10293 insertions(+), 1 deletion(-)
> >  create mode 100644 Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dprc.yaml
> >  create mode 100644 Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-dpu.yaml
> >  create mode 100644 Documentation/devicetree/bindings/display/imx/fsl,imx8qxp-prg.yaml
> >  create mode 100644 drivers/gpu/drm/imx/dpu/Kconfig
> >  create mode 100644 drivers/gpu/drm/imx/dpu/Makefile
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-constframe.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-core.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-crtc.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-crtc.h
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-disengcfg.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-dprc.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-dprc.h
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-drv.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-drv.h
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-extdst.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchdecode.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetcheco.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchlayer.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchunit.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchunit.h
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-fetchwarp.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-framegen.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-gammacor.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-hscaler.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-kms.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-kms.h
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-layerblend.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-plane.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-plane.h
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-prg.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-prg.h
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-prv.h
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-tcon.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu-vscaler.c
> >  create mode 100644 drivers/gpu/drm/imx/dpu/dpu.h
> > 
> > -- 
> > 2.7.4
> > 
> > _______________________________________________
> > dri-devel mailing list
> > dri-devel@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/dri-devel