[PATCH v3 0/4] Add support for iMX8MQ Display Controller Subsystem

From: Laurentiu Palcu
Date: Fri Dec 06 2019 - 04:53:22 EST


Hi,

This patchset adds initial DCSS support for iMX8MQ chip. Initial support
includes only graphics plane support (no video planes), no HDR10 capabilities,
no graphics decompression (only linear, tiled and super-tiled buffers allowed).

Support for the rest of the features will be added incrementally, in subsequent
patches.

The patchset was tested with both HDP driver (not yet upstreamed) and MIPI-DSI
(drivers already on the dri-devel ML).

Thanks,
Laurentiu

Changes in v3:
* rebased to latest linux-next and made it compile as drmP.h was
removed;
* removed the patch adding the VIDEO2_PLL clock. It's already applied;
* removed an unnecessary 50ms sleep in the dcss_dtg_sync_set();
* fixed a a spurious hang reported by Lukas Hartmann and encountered
by me several times;
* mask DPR and DTG interrupts by default, as they may come enabled from
U-boot;

Changes in v2:
* Removed '0x' in node's unit-address both in DT and yaml;
* Made the address region size lowercase, to be consistent;
* Removed some left-over references to P010;
* Added a Kconfig dependency of DRM && ARCH_MXC. This will also silence compilation
issues reported by kbuild for other architectures;


Laurentiu Palcu (4):
drm/imx: compile imx directory by default
drm/imx: Add initial support for DCSS on iMX8MQ
dt-bindings: display: imx: add bindings for DCSS
arm64: dts: imx8mq: add DCSS node

.../bindings/display/imx/nxp,imx8mq-dcss.yaml | 86 +++
arch/arm64/boot/dts/freescale/imx8mq.dtsi | 25 +
drivers/gpu/drm/Makefile | 2 +-
drivers/gpu/drm/imx/Kconfig | 2 +
drivers/gpu/drm/imx/Makefile | 1 +
drivers/gpu/drm/imx/dcss/Kconfig | 8 +
drivers/gpu/drm/imx/dcss/Makefile | 6 +
drivers/gpu/drm/imx/dcss/dcss-blkctl.c | 75 ++
drivers/gpu/drm/imx/dcss/dcss-crtc.c | 224 ++++++
drivers/gpu/drm/imx/dcss/dcss-ctxld.c | 447 +++++++++++
drivers/gpu/drm/imx/dcss/dcss-dev.c | 286 +++++++
drivers/gpu/drm/imx/dcss/dcss-dev.h | 195 +++++
drivers/gpu/drm/imx/dcss/dcss-dpr.c | 550 ++++++++++++++
drivers/gpu/drm/imx/dcss/dcss-drv.c | 181 +++++
drivers/gpu/drm/imx/dcss/dcss-dtg.c | 442 +++++++++++
drivers/gpu/drm/imx/dcss/dcss-kms.c | 322 ++++++++
drivers/gpu/drm/imx/dcss/dcss-kms.h | 52 ++
drivers/gpu/drm/imx/dcss/dcss-plane.c | 418 +++++++++++
drivers/gpu/drm/imx/dcss/dcss-scaler.c | 826 +++++++++++++++++++++
drivers/gpu/drm/imx/dcss/dcss-ss.c | 179 +++++
20 files changed, 4326 insertions(+), 1 deletion(-)
create mode 100644 Documentation/devicetree/bindings/display/imx/nxp,imx8mq-dcss.yaml
create mode 100644 drivers/gpu/drm/imx/dcss/Kconfig
create mode 100644 drivers/gpu/drm/imx/dcss/Makefile
create mode 100644 drivers/gpu/drm/imx/dcss/dcss-blkctl.c
create mode 100644 drivers/gpu/drm/imx/dcss/dcss-crtc.c
create mode 100644 drivers/gpu/drm/imx/dcss/dcss-ctxld.c
create mode 100644 drivers/gpu/drm/imx/dcss/dcss-dev.c
create mode 100644 drivers/gpu/drm/imx/dcss/dcss-dev.h
create mode 100644 drivers/gpu/drm/imx/dcss/dcss-dpr.c
create mode 100644 drivers/gpu/drm/imx/dcss/dcss-drv.c
create mode 100644 drivers/gpu/drm/imx/dcss/dcss-dtg.c
create mode 100644 drivers/gpu/drm/imx/dcss/dcss-kms.c
create mode 100644 drivers/gpu/drm/imx/dcss/dcss-kms.h
create mode 100644 drivers/gpu/drm/imx/dcss/dcss-plane.c
create mode 100644 drivers/gpu/drm/imx/dcss/dcss-scaler.c
create mode 100644 drivers/gpu/drm/imx/dcss/dcss-ss.c

--
2.7.4