linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v10 0/6] drm: LogiCVC display controller support
@ 2022-01-20 15:00 Paul Kocialkowski
  2022-01-20 15:00 ` [PATCH v10 1/6] dt-bindings: mfd: logicvc: Add a compatible with the major version only Paul Kocialkowski
                   ` (5 more replies)
  0 siblings, 6 replies; 16+ messages in thread
From: Paul Kocialkowski @ 2022-01-20 15:00 UTC (permalink / raw)
  To: dri-devel, devicetree, linux-gpio, linux-kernel
  Cc: David Airlie, Daniel Vetter, Rob Herring, Lee Jones,
	Maarten Lankhorst, Linus Walleij, Bartosz Golaszewski,
	Maxime Ripard, Thomas Zimmermann, Paul Kocialkowski,
	Thomas Petazzoni

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

Note that this driver has rather simple connector management, which was
not converted to drm_panel_bridge to keep the ability to enable the panel
at first vblank but also to support DVI.

Changes since v9:
- Added common compatibles for major logicvc versions;
- Add support for logicvc-5;
- Rebased on latest drm-misc next.

Changes since v8:
- Rebased on top of the latest drm-misc-next;
- Dropped useless phandle-based syscon regmap support;
- Switched to a single-port graph description;
- Updated the device-tree schema to the port schema and added a
  description for the port.

Change since v7:
- Replaced DRM_INFO/DRM_ERROR/DRM_DEBUG_DRIVER with fashions using drm_device;
- Fixed yaml binding alignment issue;
- Renamed logicvc-display name to the generic "display" name;
- Added patternProperties match for display in the parent mfd binding;
- Used drm_atomic_get_new_crtc_state when needed;
- Checked mode in mode_valid instead of atomic_check;
- Switched to drmm_mode_config_init;
- Removed useless logicvc_connector_destroy wrapper;
- Removed useless drm_dev_put calls;
- Removed atomic_commit_tail that enables the panel and streamlined the logic;
- Reworked Makefile cosmetics;
- Fixed checkpatch issues.

Changes since v6:
- Updated to the latest DRM internal API changes; 
- Used an enum to index dt properties instead of the name string.

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.

Paul Kocialkowski (6):
  dt-bindings: mfd: logicvc: Add a compatible with the major version
    only
  dt-bindings: gpio: logicvc: Add a compatible with major version only
  gpio: logicvc: Support compatible with major version only
  dt-bindings: display: Add compatibles with major versions only
  drm: Add support for the LogiCVC display controller
  NOTFORMERGE: drm/logicvc: Add plane colorkey support

 .../display/xylon,logicvc-display.yaml        |   3 +
 .../bindings/gpio/xylon,logicvc-gpio.yaml     |   1 +
 .../bindings/mfd/xylon,logicvc.yaml           |   1 +
 MAINTAINERS                                   |   6 +
 drivers/gpio/gpio-logicvc.c                   |   5 +-
 drivers/gpu/drm/Kconfig                       |   2 +
 drivers/gpu/drm/Makefile                      |   1 +
 drivers/gpu/drm/logicvc/Kconfig               |   9 +
 drivers/gpu/drm/logicvc/Makefile              |   9 +
 drivers/gpu/drm/logicvc/logicvc_crtc.c        | 280 +++++++
 drivers/gpu/drm/logicvc/logicvc_crtc.h        |  21 +
 drivers/gpu/drm/logicvc/logicvc_drm.c         | 483 +++++++++++
 drivers/gpu/drm/logicvc/logicvc_drm.h         |  67 ++
 drivers/gpu/drm/logicvc/logicvc_interface.c   | 214 +++++
 drivers/gpu/drm/logicvc/logicvc_interface.h   |  28 +
 drivers/gpu/drm/logicvc/logicvc_layer.c       | 767 ++++++++++++++++++
 drivers/gpu/drm/logicvc/logicvc_layer.h       |  71 ++
 drivers/gpu/drm/logicvc/logicvc_mode.c        |  80 ++
 drivers/gpu/drm/logicvc/logicvc_mode.h        |  15 +
 drivers/gpu/drm/logicvc/logicvc_of.c          | 185 +++++
 drivers/gpu/drm/logicvc/logicvc_of.h          |  46 ++
 drivers/gpu/drm/logicvc/logicvc_regs.h        |  88 ++
 22 files changed, 2379 insertions(+), 3 deletions(-)
 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.34.1


^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2022-02-11 14:54 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-20 15:00 [PATCH v10 0/6] drm: LogiCVC display controller support Paul Kocialkowski
2022-01-20 15:00 ` [PATCH v10 1/6] dt-bindings: mfd: logicvc: Add a compatible with the major version only Paul Kocialkowski
2022-02-02  0:54   ` Rob Herring
2022-01-20 15:00 ` [PATCH v10 2/6] dt-bindings: gpio: logicvc: Add a compatible with " Paul Kocialkowski
2022-01-30  0:46   ` Linus Walleij
2022-02-02 14:26     ` Robin Murphy
2022-02-11 14:54       ` Paul Kocialkowski
2022-01-20 15:00 ` [PATCH v10 3/6] gpio: logicvc: Support " Paul Kocialkowski
2022-01-30  0:43   ` Linus Walleij
2022-02-03  9:10     ` Paul Kocialkowski
2022-02-08  9:54     ` Bartosz Golaszewski
2022-02-10 23:55       ` Linus Walleij
2022-01-20 15:00 ` [PATCH v10 4/6] dt-bindings: display: Add compatibles with major versions only Paul Kocialkowski
2022-01-30  0:46   ` Linus Walleij
2022-01-20 15:00 ` [PATCH v10 5/6] drm: Add support for the LogiCVC display controller Paul Kocialkowski
2022-01-20 15:00 ` [PATCH v10 6/6] NOTFORMERGE: drm/logicvc: Add plane colorkey support Paul Kocialkowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).