Re: [PATCH 00/75] media: imx: Miscellaneous fixes and cleanups for i.MX7

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hey Laurent,
On Tue, Jan 05, 2021 at 05:27:37PM +0200, Laurent Pinchart wrote:
> Hello,
> 
> This large patch series has been sitting in my tree for way too long. I
> haven't posted it yet as I'm running into an issue on my test hardware
> that I can't prove is not a regression from this series, but the
> pressure has grown and the patches are better on the list for review.
> 
> There's really not much to detail in the cover letter as there are
> "just" fixes and cleanups I developed while bringing up camera support
> for an i.MX7D platform, and later on an i.MX8MM that shares the same
> MIPI-CSI2 and CSI IP cores (with some differences).
> 
> The issue I've noticed is that the CSI writes two images consecutively
> to the same buffer, overwritting memory after the end of the buffer. I
> believe this bug to already be present in mainline, but I can't prove it
> as my sensor won't work without some of the patches in this series. The
> problem could also be sensor-specific.
> 
> Rui, would you be able to test this on your i.MX7 hardware to make sure
> there's no regression ?

Thanks for these small improvements, ehehh.

Well, we already have a regression reported by Fabio in imx6ull, but
just give a couple of days to go over this and restore my setup with
the warp7 board.

------
Cheers,
     Rui
> 
> Laurent Pinchart (75):
>   media: imx: Drop dependency on I2C
>   media: imx: Move dependency on VIDEO_DEV to common Kconfig symbol
>   media: imx: Drop manual dependency on VIDEO_IMX_MEDIA
>   media: imx: Move IMX_IPUV3_CORE dependency to VIDEO_IMX_CSI
>   media: imx: Compile imx6-media-objs only for CONFIG_VIDEO_IMX_CSI
>   media: imx: Set default sizes through macros in all drivers
>   media: imx: utils: Add ability to filter pixel formats by mbus code
>   media: imx: capture: Use dev_* instead of v4l2_* to log messages
>   media: imx: capture: Use device name to construct bus_info
>   media: imx: capture: Remove forward declaration of capture_qops
>   media: imx: capture: Handle errors from v4l2_fh_open()
>   media: imx: capture: Clean up capture_priv structure
>   media: imx: capture: Remove capture_priv stop field
>   media: imx: capture: Move queue and ctrl handler init to init function
>   media: imx: capture: Initialize video_device programmatically
>   media: imx: capture: Register the video device after completing init
>   media: imx: capture: Store v4l2_pix_format in imx_media_video_dev
>   media: imx: capture: Move default format init to a separate function
>   media: imx: capture: Rename querycap handler to capture_querycap
>   media: imx: capture: Rename ioctl operations with legacy prefix
>   media: imx: capture: Add a mechanism to disable control inheritance
>   media: imx: capture: Remove unneeded variable in
>     __capture_legacy_try_fmt
>   media: imx: capture: Pass v4l2_pix_format to
>     __capture_legacy_try_fmt()
>   media: imx: capture: Return -EPIPE from __capture_legacy_try_fmt()
>   media: imx: capture: Extract format lookup from
>     __capture_legacy_try_fmt
>   media: imx: capture: Simplify capture_validate_fmt() implementation
>   media: imx: capture: Simplify __capture_legacy_try_fmt()
>   media: imx: capture: Decouple video node from source with MC-centric
>     API
>   media: imx: capture: Expose V4L2_CAP_IO_MC for the MC-centric API
>   media: imx: imx7-media-csi: Disable legacy video node API
>   media: imx: capture: Support creating immutable link to capture device
>   media: imx: imx7-media-csi: Remove control handler
>   media: imx: imx7-media-csi: Move (de)init from link setup to
>     .s_stream()
>   media: imx: imx7-media-csi: Create immutable link to capture device
>   media: imx: imx7-media-csi: Replace CSICR*_RESET_VAL with values
>   media: imx: imx7-media-csi: Tidy up register fields MACROS
>   media: imx: imx7-media-csi: Reorganize code in sections
>   media: imx: imx7-media-csi: Validate capture format in
>     .link_validate()
>   media: imx: imx7-media-csi: Rename imx7_csi_dma_start() to *_setup()
>   media: imx: imx7-media-csi: Split imx7_csi_dma_stop()
>   media: imx: imx7-media-csi: Move CSI configuration before source start
>   media: imx: imx7-media-csi: Merge streaming_start() with csi_enable()
>   media: imx: imx7-media-csi: Merge hw_reset() with init_interface()
>   media: imx: imx7-media-csi: Set the MIPI data type based on the bus
>     code
>   media: imx: imx7-media-csi: Don't set the buffer stride when disabling
>   media: imx: imx7-media-csi: Merge all config in imx7_csi_configure()
>   media: imx: imx7-media-csi: Clear all configurable CSICR18 fields
>   media: imx: imx7-media-csi: Set RFF burst type in imx7_csi_configure()
>   media: imx: imx7-media-csi: Simplify imx7_csi_rx_fifo_clear()
>   media: imx: imx7-media-csi: Don't double-enable the CSI
>   media: imx: imx7-media-csi: Don't double-enable the RxFIFO
>   media: imx: imx7-media-csi: Remove double reflash of DMA controller
>   media: imx: imx7-media-csi: Don't enable SOF and EOF interrupts
>   media: imx: imx7_media-csi: Add support for additional Bayer patterns
>   media: v4l2-mc: Add link flags to v4l2_create_fwnode_links_to_pad()
>   media: imx: imx7_media-csi: Create immutable link to source device
>   dt-bindings: media: Convert i.MX7 MIPI CSI-2 receiver binding to YAML
>   dt-bindings: media: fsl,imx7-mipi-csi2: Drop the reset-names property
>   dt-bindings: media: fsl,imx7-mipi-csi2: Drop fsl,csis-hs-settle
>     property
>   media: imx: imx7_mipi_csis: Acquire reset control without naming it
>   media: imx: imx7_mipi_csis: Fix input size alignment
>   media: imx: imx7_mipi_csis: Make source .s_power() optional
>   media: imx: imx7_mipi_csis: Avoid double get of wrap clock
>   media: imx: imx7_mipi_csis: Drop 10-bit YUV support
>   media: imx: imx7_mipi_csis: Fix UYVY8 media bus format
>   media: imx: imx7_mipi_csis: Inline mipi_csis_set_hsync_settle()
>   media: imx: imx7_mipi_csis: Move link setup check out of locked
>     section
>   media: imx: imx7_mipi_csis: Calculate Ths_settle from source pixel
>     rate
>   media: imx: imx7_mipi_csis: Turn register access macros into functions
>   media: imx: imx7_mipi_csis: Fully initialize MIPI_CSIS_DPHYCTRL
>     register
>   media: imx: imx7_mipi_csis: Define macros for DPHY_BCTRL_L fields
>   media: imx: imx7_mipi_csis: Make ISP registers macros take channel ID
>   media: imx: imx7_mipi_csis: Rename register macros to match datasheet
>   media: imx: imx7_mipi_csis: Use register macros in
>     mipi_csis_dump_regs()
>   media: imx: imx7_mipi_csis: Print shadow registers in
>     mipi_csis_dump_regs()
> 
>  .../bindings/media/fsl,imx7-mipi-csi2.yaml    |  194 ++++
>  .../bindings/media/imx7-mipi-csi2.txt         |   90 --
>  MAINTAINERS                                   |    2 +-
>  drivers/media/v4l2-core/v4l2-mc.c             |    6 +-
>  drivers/staging/media/imx/Kconfig             |   12 +-
>  drivers/staging/media/imx/Makefile            |    8 +-
>  drivers/staging/media/imx/TODO                |    9 +-
>  drivers/staging/media/imx/imx-ic-prp.c        |    4 +-
>  drivers/staging/media/imx/imx-ic-prpencvf.c   |   24 +-
>  drivers/staging/media/imx/imx-media-capture.c |  685 ++++++-----
>  .../staging/media/imx/imx-media-csc-scaler.c  |    2 +-
>  drivers/staging/media/imx/imx-media-csi.c     |   33 +-
>  .../staging/media/imx/imx-media-dev-common.c  |    4 +
>  drivers/staging/media/imx/imx-media-utils.c   |   23 +-
>  drivers/staging/media/imx/imx-media-vdic.c    |    7 +-
>  drivers/staging/media/imx/imx-media.h         |   12 +-
>  drivers/staging/media/imx/imx6-mipi-csi2.c    |    6 +-
>  drivers/staging/media/imx/imx7-media-csi.c    | 1016 ++++++++---------
>  drivers/staging/media/imx/imx7-mipi-csis.c    |  412 ++++---
>  include/media/v4l2-mc.h                       |    8 +-
>  20 files changed, 1422 insertions(+), 1135 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/media/fsl,imx7-mipi-csi2.yaml
>  delete mode 100644 Documentation/devicetree/bindings/media/imx7-mipi-csi2.txt
> 
> -- 
> Regards,
> 
> Laurent Pinchart
> 



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux