[PATCH v6 0/3] drm: LogiCVC display controller support

From: Paul Kocialkowski
Date: Thu Apr 30 2020 - 15:28:04 EST


This series introduces support for the LogiCVC display controller.
The controller is a bit unusual since it is usually loaded as
programmable logic on Xilinx FPGAs or Zynq-7000 SoCs.
More details are presented on the main commit for the driver.

More information about the controller is available on the dedicated
web page: https://www.logicbricks.com/Products/logiCVC-ML.aspx

Changes since v5:
- Subclass DRM device and use devm_drm_dev_alloc for allocation;
- Removed call to drm_mode_config_cleanup (done automatically with devm);
- Some related code cleanups;
- Bring back not-for-merge patch adding colorkey support.

Changes since v4:
- Updated to internal DRM API changes (rebased on drm-misc-next);
- Added Kconfig dependency on OF;
- Added MAINTAINERS entry;
- Used drm_err and dev_err instead of DRM_ERROR where possible;
- Various cosmetic changes.

Changes since v3:
- Rebased on latest drm-misc;
- Improved event lock wrapping;
- Added collect tag;
- Added color-key support patch (not for merge, for reference only).

Changes since v2:
- Fixed and slightly improved dt schema.

Changes since v1:
- Switched dt bindings documentation to dt schema;
- Described more possible dt parameters;
- Added support for the lvds-3bit interface;
- Added support for grabbing syscon regmap from parent node;
- Removed layers count property and count layers child nodes instead.

Cheers!

Paul Kocialkowski (3):
dt-bindings: display: Document the Xylon LogiCVC display controller
drm: Add support for the LogiCVC display controller
NOTFORMERGE: drm/logicvc: Add plane colorkey support

.../display/xylon,logicvc-display.yaml | 313 ++++++++
MAINTAINERS | 6 +
drivers/gpu/drm/Kconfig | 2 +
drivers/gpu/drm/Makefile | 1 +
drivers/gpu/drm/logicvc/Kconfig | 9 +
drivers/gpu/drm/logicvc/Makefile | 4 +
drivers/gpu/drm/logicvc/logicvc_crtc.c | 270 +++++++
drivers/gpu/drm/logicvc/logicvc_crtc.h | 21 +
drivers/gpu/drm/logicvc/logicvc_drm.c | 470 +++++++++++
drivers/gpu/drm/logicvc/logicvc_drm.h | 67 ++
drivers/gpu/drm/logicvc/logicvc_interface.c | 238 ++++++
drivers/gpu/drm/logicvc/logicvc_interface.h | 30 +
drivers/gpu/drm/logicvc/logicvc_layer.c | 744 ++++++++++++++++++
drivers/gpu/drm/logicvc/logicvc_layer.h | 71 ++
drivers/gpu/drm/logicvc/logicvc_mode.c | 103 +++
drivers/gpu/drm/logicvc/logicvc_mode.h | 15 +
drivers/gpu/drm/logicvc/logicvc_of.c | 205 +++++
drivers/gpu/drm/logicvc/logicvc_of.h | 28 +
drivers/gpu/drm/logicvc/logicvc_regs.h | 88 +++
19 files changed, 2685 insertions(+)
create mode 100644 Documentation/devicetree/bindings/display/xylon,logicvc-display.yaml
create mode 100644 drivers/gpu/drm/logicvc/Kconfig
create mode 100644 drivers/gpu/drm/logicvc/Makefile
create mode 100644 drivers/gpu/drm/logicvc/logicvc_crtc.c
create mode 100644 drivers/gpu/drm/logicvc/logicvc_crtc.h
create mode 100644 drivers/gpu/drm/logicvc/logicvc_drm.c
create mode 100644 drivers/gpu/drm/logicvc/logicvc_drm.h
create mode 100644 drivers/gpu/drm/logicvc/logicvc_interface.c
create mode 100644 drivers/gpu/drm/logicvc/logicvc_interface.h
create mode 100644 drivers/gpu/drm/logicvc/logicvc_layer.c
create mode 100644 drivers/gpu/drm/logicvc/logicvc_layer.h
create mode 100644 drivers/gpu/drm/logicvc/logicvc_mode.c
create mode 100644 drivers/gpu/drm/logicvc/logicvc_mode.h
create mode 100644 drivers/gpu/drm/logicvc/logicvc_of.c
create mode 100644 drivers/gpu/drm/logicvc/logicvc_of.h
create mode 100644 drivers/gpu/drm/logicvc/logicvc_regs.h

--
2.26.0