|
|
Subscribe / Log in / New account

Add support for i.MX94 DCIF

From:  Laurentiu Palcu <laurentiu.palcu-AT-oss.nxp.com>
To:  imx-AT-lists.linux.dev, Abel Vesa <abelvesa-AT-kernel.org>, Peng Fan <peng.fan-AT-nxp.com>, Michael Turquette <mturquette-AT-baylibre.com>, Stephen Boyd <sboyd-AT-kernel.org>, Rob Herring <robh-AT-kernel.org>, Krzysztof Kozlowski <krzk+dt-AT-kernel.org>, Conor Dooley <conor+dt-AT-kernel.org>, Shawn Guo <shawnguo-AT-kernel.org>, Sascha Hauer <s.hauer-AT-pengutronix.de>, Pengutronix Kernel Team <kernel-AT-pengutronix.de>, Fabio Estevam <festevam-AT-gmail.com>, Andrzej Hajda <andrzej.hajda-AT-intel.com>, Neil Armstrong <neil.armstrong-AT-linaro.org>, Robert Foss <rfoss-AT-kernel.org>, Laurent Pinchart <Laurent.pinchart-AT-ideasonboard.com>, Jonas Karlman <jonas-AT-kwiboo.se>, Jernej Skrabec <jernej.skrabec-AT-gmail.com>, David Airlie <airlied-AT-gmail.com>, Simona Vetter <simona-AT-ffwll.ch>, Maarten Lankhorst <maarten.lankhorst-AT-linux.intel.com>, Maxime Ripard <mripard-AT-kernel.org>, Thomas Zimmermann <tzimmermann-AT-suse.de>, Laurentiu Palcu <laurentiu.palcu-AT-oss.nxp.com>, Philipp Zabel <p.zabel-AT-pengutronix.de>, Marek Vasut <marex-AT-denx.de>
Subject:  [PATCH v3 0/9] Add support for i.MX94 DCIF
Date:  Wed, 06 Aug 2025 18:05:07 +0300
Message-ID:  <20250806150521.2174797-1-laurentiu.palcu@oss.nxp.com>
Cc:  Frank Li <frank.li-AT-nxp.com>, linux-clk-AT-vger.kernel.org, devicetree-AT-vger.kernel.org, linux-arm-kernel-AT-lists.infradead.org, linux-kernel-AT-vger.kernel.org, dri-devel-AT-lists.freedesktop.org
Archive-link:  Article

Hi,

This patch-set adds support for the i.MX94 Display Control Interface.
It depends on Peng Fan's DTS patch [1] that was not yet merged. Also, it
needs the BLK CTL changes [2] that I spinned off from v2 in a different
patchset.

Also, included in the patch-set are a few extra patches that the DCIF
driver depends on for functioning properly:
 * 1/9 - 3/9 : add support for i.MX94 to fsl-ldb driver. It also
			   contains a patch (2/9) from Liu Ying that was already reviewed
			   and was part of another patch-set ([3]), but was never merged;

v3:
 * Removed the BLK CTL patches and created a separate patch set [2] for them;
 * Collected r-b tags for 1/9, 2/9, 3/9 and 9/9;
 * Removed the DCIF QoS functionality until I find a better way to
   implement it through syscon. QoS functionality will be added in
   subsequent patches. Also, used devm_clk_bulk_get_all() and used
   dev_err_probe() as suggested;
 * Addressed Frank's and Krzysztof's comments on the DCIF bindings;
 * Addressed Frank's comments on dtsi and dts files;
 * Added a new binding patch, 6/9, for adding 'ldb' optional property to
   nxp,imx95-blk-ctl.yaml;

v2:
 * reworked the BLK_CTL patch and split in 2 to make it easier for
   review;
 * split the dts and dtsi patch in 2 separate ones;
 * addressed Frank's comments in DCIF driver;
 * addressed Rob's comments for the bindings files;
 * addressed a couple of checkpatch issues;

Thanks,
Laurentiu

[1] https://lkml.org/lkml/2025/7/7/84
[2] https://www.spinics.net/lists/kernel/msg5791546.html
[3] https://lkml.org/lkml/2024/11/14/262

Laurentiu Palcu (7):
  dt-bindings: display: fsl,ldb: Add i.MX94 LDB
  drm/bridge: fsl-ldb: Add support for i.MX94
  dt-bindings: display: imx: Add bindings for i.MX94 DCIF
  dt-bindings: clock: nxp,imx95-blk-ctl: Add optional ldb property
  arm64: dts: imx943: Add display pipeline nodes
  arm64: dts: imx943-evk: Add display support using IT6263
  MAINTAINERS: Add entry for i.MX94 DCIF driver

Liu Ying (1):
  drm/bridge: fsl-ldb: Get the next non-panel bridge

Sandor Yu (1):
  drm/imx: Add support for i.MX94 DCIF

 .../bindings/clock/nxp,imx95-blk-ctl.yaml     |   5 +
 .../bindings/display/bridge/fsl,ldb.yaml      |   2 +
 .../bindings/display/imx/nxp,imx94-dcif.yaml  |  82 +++
 MAINTAINERS                                   |   9 +
 arch/arm64/boot/dts/freescale/imx943-evk.dts  | 121 +++
 arch/arm64/boot/dts/freescale/imx943.dtsi     |  55 +-
 drivers/gpu/drm/bridge/fsl-ldb.c              |  47 +-
 drivers/gpu/drm/imx/Kconfig                   |   1 +
 drivers/gpu/drm/imx/Makefile                  |   1 +
 drivers/gpu/drm/imx/dcif/Kconfig              |  15 +
 drivers/gpu/drm/imx/dcif/Makefile             |   5 +
 drivers/gpu/drm/imx/dcif/dcif-crc.c           | 211 ++++++
 drivers/gpu/drm/imx/dcif/dcif-crc.h           |  52 ++
 drivers/gpu/drm/imx/dcif/dcif-crtc.c          | 694 ++++++++++++++++++
 drivers/gpu/drm/imx/dcif/dcif-drv.c           | 226 ++++++
 drivers/gpu/drm/imx/dcif/dcif-drv.h           |  84 +++
 drivers/gpu/drm/imx/dcif/dcif-kms.c           | 100 +++
 drivers/gpu/drm/imx/dcif/dcif-plane.c         | 269 +++++++
 drivers/gpu/drm/imx/dcif/dcif-reg.h           | 266 +++++++
 19 files changed, 2223 insertions(+), 22 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/display/imx/nxp,imx94-dcif.yaml
 create mode 100644 drivers/gpu/drm/imx/dcif/Kconfig
 create mode 100644 drivers/gpu/drm/imx/dcif/Makefile
 create mode 100644 drivers/gpu/drm/imx/dcif/dcif-crc.c
 create mode 100644 drivers/gpu/drm/imx/dcif/dcif-crc.h
 create mode 100644 drivers/gpu/drm/imx/dcif/dcif-crtc.c
 create mode 100644 drivers/gpu/drm/imx/dcif/dcif-drv.c
 create mode 100644 drivers/gpu/drm/imx/dcif/dcif-drv.h
 create mode 100644 drivers/gpu/drm/imx/dcif/dcif-kms.c
 create mode 100644 drivers/gpu/drm/imx/dcif/dcif-plane.c
 create mode 100644 drivers/gpu/drm/imx/dcif/dcif-reg.h

-- 
2.49.0




Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds