[PATCH 00/55] media: rkisp1: Cleanups and add support for i.MX8MP

Laurent Pinchart laurent.pinchart at ideasonboard.com
Wed Jun 15 17:19:30 PDT 2022


Hi Paul,

Thank you for the patches.

On Wed, Jun 15, 2022 at 04:10:32AM +0900, Paul Elder wrote:
> Hello,
> 
> This series depends on v4 of "media: rkisp1: Misc bug fixes and cleanups" [1].
> 
> The ISP integrated in the i.MX8MP is nearly the same as the rkisp1, and
> so we can reuse the rkisp1 driver for it.
> 
> This series does some cleanup and refactoring of the rkisp1 driver,
> (patches 1/55 to 46/55), and then adds support for the i.MX8MP (patches
> 47/55 to 55/55).

I have a few questions about the i.MX8MP support (the main one being
about the version numbering scheme), which I'll ask in replies to the
corresponding patches. Patches 01/55 to 46/55 could be merged already,
once reviewed of course. As the series is large, let's see if we can
motivate any reviewer :-)

> [1] https://lore.kernel.org/linux-media/Ymbxs2p9Tuf331qM@pendragon.ideasonboard.com/T/
> 
> Laurent Pinchart (38):
>   media: rkisp1: Enable compilation on ARCH_MXC
>   media: rkisp1: Disable runtime PM in probe error path
>   media: rkisp1: Read the ID register at probe time instead of streamon
>   media: rkisp1: Rename rkisp1_match_data to rkisp1_info
>   media: rkisp1: Access ISP version from info pointer
>   media: rkisp1: cap: Print debug message on failed link validation
>   media: rkisp1: Move sensor .s_stream() call to ISP
>   media: rkisp1: Reject sensors without pixel rate control at bound time
>   media: rkisp1: Create link from sensor to ISP at notifier bound time
>   media: rkisp1: Create internal links at probe time
>   media: rkisp1: Rename rkisp1_subdev_notifier() to
>     rkisp1_subdev_notifier_register()
>   media: v4l2-async: Add notifier operation to destroy asd instances
>   media: rkisp1: Fix sensor source pad retrieval at bound time
>   media: rkisp1: isp: Start CSI-2 receiver before ISP
>   media: rkisp1: csi: Handle CSI-2 RX configuration fully in
>     rkisp1-csi.c
>   media: rkisp1: csi: Rename CSI functions with a common rkisp1_csi
>     prefix
>   media: rkisp1: csi: Move start delay to rkisp1_csi_start()
>   media: rkisp1: csi: Pass sensor pointer to rkisp1_csi_config()
>   media: rkisp1: csi: Constify argument to rkisp1_csi_start()
>   media: rkisp1: isp: Don't initialize ret to 0 in rkisp1_isp_s_stream()
>   media: rkisp1: isp: Pass mbus type and flags to rkisp1_config_cif()
>   media: rkisp1: isp: Rename rkisp1_device.active_sensor to source
>   media: rkisp1: isp: Add container_of wrapper to cast subdev to
>     rkisp1_isp
>   media: rkisp1: isp: Add rkisp1_device backpointer to rkisp1_isp
>   media: rkisp1: isp: Pass rkisp1_isp pointer to internal ISP functions
>   media: rkisp1: isp: Move input configuration to rkisp1_config_isp()
>   media: rkisp1: isp: Merge ISP_ACQ_PROP configuration in single
>     variable
>   media: rkisp1: isp: Initialize some variables at declaration time
>   media: rkisp1: isp: Fix whitespace issues
>   media: rkisp1: isp: Constify various local variables
>   media: rkisp1: isp: Rename rkisp1_get_remote_source()
>   media: mc-entity: Add a new helper function to get a remote pad
>   media: mc-entity: Add a new helper function to get a remote pad for a
>     pad
>   media: rkisp1: isp: Disallow multiple active sources
>   media: rkisp1: csi: Plumb the CSI RX subdev
>   media: rkisp1: Add infrastructure to support ISP features
>   media: rkisp1: Make the internal CSI-2 receiver optional
>   media: rkisp1: Configure gasket on i.MX8MP
> 
> Paul Elder (17):
>   media: rkisp1: debug: Add dump file in debugfs for MI buffer registers
>   media: rkisp1: debug: Add debugfs files to monitor MI and ISP
>     interrupts
>   media: rkisp1: Save info pointer in rkisp1_device
>   media: rkisp1: Make rkisp1_isp_mbus_info common
>   media: rkisp1: Split CSI handling to separate file
>   media: rkisp1: csi: Implement a V4L2 subdev for the CSI receiver
>   media: rkisp1: Use fwnode_graph_for_each_endpoint
>   dt-bindings: media: rkisp1: Add port for parallel interface
>   media: rkisp1: Support the ISP parallel input
>   dt-bindings: media: rkisp1: Add i.MX8MP ISP to compatible
>   media: rkisp1: Add match data for i.MX8MP ISP
>   media: rkisp1: Add and set registers for crop for i.MX8MP
>   media: rkisp1: Add and set registers for output size config on i.MX8MP
>   media: rkisp1: Add i.MX8MP-specific registers for MI and resizer
>   media: rkisp1: Shift DMA buffer addresses on i.MX8MP
>   media: rkisp1: Add register definitions for the test pattern generator
>   media: rkisp1: Fix RSZ_CTRL bits for i.MX8MP
> 
>  .../bindings/media/rockchip-isp1.yaml         |  30 +-
>  Documentation/driver-api/media/mc-core.rst    |   4 +-
>  .../driver-api/media/v4l2-subdev.rst          |   6 +
>  drivers/media/mc/mc-entity.c                  |  69 ++
>  .../media/platform/rockchip/rkisp1/Kconfig    |   2 +-
>  .../media/platform/rockchip/rkisp1/Makefile   |   1 +
>  .../platform/rockchip/rkisp1/rkisp1-capture.c |  49 +-
>  .../platform/rockchip/rkisp1/rkisp1-common.c  | 148 ++++
>  .../platform/rockchip/rkisp1/rkisp1-common.h  | 130 +++-
>  .../platform/rockchip/rkisp1/rkisp1-csi.c     | 525 ++++++++++++++
>  .../platform/rockchip/rkisp1/rkisp1-csi.h     |  28 +
>  .../platform/rockchip/rkisp1/rkisp1-debug.c   |  55 +-
>  .../platform/rockchip/rkisp1/rkisp1-dev.c     | 440 +++++++-----
>  .../platform/rockchip/rkisp1/rkisp1-isp.c     | 679 +++++++-----------
>  .../platform/rockchip/rkisp1/rkisp1-params.c  |   2 +-
>  .../platform/rockchip/rkisp1/rkisp1-regs.h    |  87 +++
>  .../platform/rockchip/rkisp1/rkisp1-resizer.c |  43 +-
>  .../platform/rockchip/rkisp1/rkisp1-stats.c   |   4 +-
>  drivers/media/v4l2-core/v4l2-async.c          |  10 +
>  include/media/media-entity.h                  |  63 ++
>  include/media/v4l2-async.h                    |   2 +
>  include/uapi/linux/rkisp1-config.h            |   3 +
>  22 files changed, 1735 insertions(+), 645 deletions(-)
>  create mode 100644 drivers/media/platform/rockchip/rkisp1/rkisp1-csi.c
>  create mode 100644 drivers/media/platform/rockchip/rkisp1/rkisp1-csi.h

-- 
Regards,

Laurent Pinchart



More information about the Linux-rockchip mailing list