|
|
Subscribe / Log in / New account

media: imx: add support for imx8mq MIPI RX

From:  Martin Kepplinger <martin.kepplinger-AT-puri.sm>
To:  laurent.pinchart-AT-ideasonboard.com, shawnguo-AT-kernel.org
Subject:  [PATCH v7 0/3] media: imx: add support for imx8mq MIPI RX
Date:  Fri, 16 Jul 2021 12:22:41 +0200
Message-ID:  <20210716102244.581182-1-martin.kepplinger@puri.sm>
Cc:  devicetree-AT-vger.kernel.org, festevam-AT-gmail.com, kernel-AT-pengutronix.de, kernel-AT-puri.sm, krzk-AT-kernel.org, linux-arm-kernel-AT-lists.infradead.org, linux-imx-AT-nxp.com, linux-kernel-AT-vger.kernel.org, linux-media-AT-vger.kernel.org, linux-staging-AT-lists.linux.dev, m.felsch-AT-pengutronix.de, mchehab-AT-kernel.org, phone-devel-AT-vger.kernel.org, robh-AT-kernel.org, slongerbeam-AT-gmail.com, Martin Kepplinger <martin.kepplinger-AT-puri.sm>
Archive-link:  Article

hi,

This patch series adds a driver for the i.MX8MQ CSI MIPI receiver / controller.

It includes the driver, the dt-bindings and the DT addition to the SoC dtsi.
I test it using libcamera. Thanks to Laurent who helped a lot. I'm happy for
any feedback,

                           martin

revision history
----------------
v7: (thank you Laurent and Rob)
* fix the binding example (include the reset driver)
* use pm_runtime_resume_and_get()
* fix some logic in init_cfg()
* add some useful code comments and fix minor bits found by Laurent in v6

v6: (thank you Laurent and Rob)
* add reviewed-by tag to binding
* statically allocate clk_bulk_data
* fix how the hs_settle value is applied
* remove s_power calls
* remove the link_setup() callback implementation and make the link immutable
* more cleanups according to Laurents' review from v5
https://lore.kernel.org/linux-media/20210714111931.324485...

v5: (thank you Laurent)
* fix reset usage by using the already supported reset controller driver
* remove clko2 (totally unrelated clock / had been included by accident)
* rename pxl clock to ui
https://lore.kernel.org/linux-media/20210618095753.114557...

v4: (thank you Rob and Marco)
* create fsl,mipi-phy-gpr custom dt property instead of confusing "phy"
* add imx8mq-specific compatibile to imx8mq.dtsi for future use
https://lore.kernel.org/linux-media/20210614121522.294459...

v3: (thank you, Rob and Laurent)
among minor other things according to v2 review, changes include:
* better describe the clocks
* rename DT property "phy-reset" to "reset" and "phy-gpr" to "phy"
https://lore.kernel.org/linux-media/20210608104128.161602...

v2: (thank you, Dan and Guido)
among fixes according to v1 reviews, changes include:
* remove status property from dt-bindings example
* define a few bits in order to have less magic values
* use "imx8mq_mipi_csi_" as local function prefix
* read DT properties only during probe()
* remove dead code (log_status)
* add imx8mq_mipi_csi_release_icc()
* fix imx8mq_mipi_csi_init_icc()
https://lore.kernel.org/linux-media/20210531112326.90094-...

v1:
https://lore.kernel.org/linux-media/20210527075407.318074...

Martin Kepplinger (3):
  dt-bindings: media: document the nxp,imx8mq-mipi-csi2 receiver phy and
    controller
  media: imx: add a driver for i.MX8MQ mipi csi rx phy and controller
  arm64: dts: imx8mq: add mipi csi phy and csi bridge descriptions

 .../bindings/media/nxp,imx8mq-mipi-csi2.yaml  | 174 ++++
 arch/arm64/boot/dts/freescale/imx8mq.dtsi     | 104 ++
 drivers/staging/media/imx/Makefile            |   1 +
 drivers/staging/media/imx/imx8mq-mipi-csi2.c  | 947 ++++++++++++++++++
 4 files changed, 1226 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/media/nxp,imx8mq-mipi-csi2.yaml
 create mode 100644 drivers/staging/media/imx/imx8mq-mipi-csi2.c

-- 
2.30.2



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