Re: [PATCH v4 0/6] media: rcar-vin: Unify notifiers and enable MC on Gen2

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

 



Hi,

On 21/05/2025 16:20, Niklas Söderlund wrote:
> Hello,
> 
> This series completes the conversion of the soc_camera VIN driver to a
> full fledge media-graph enabled driver for R-Car Gen2 devices, Gen3 and
> later have been media-graph centric from the start. Having a single
> driver supporting both MC and non-MC operation have lead do odd design
> decisions in the driver, and it have prevented improving the driver over
> all.
> 
> New features and bug fixes have always been more important then fixing
> this old generation to be MC-centric. But in order to start to play with
> libcamera support for the R-Car pipeline it have become more pressing to
> make take the time to make this driver MC-only, and more importantly
> test it to make sure nothing really breaks.
> 
> Patch 1/6 and 2/6 are drive-by fixes correcting issues in the existing
> design. Patch 3/6 prepares for Gen2 MC by making sure each VIN instance
> on Gen2 gets a unique ID which will be needed to support VIN groups.
> Compared to Gen3 and later the group ID does not match what it can do in
> the group and does not need to be set from DT, all that matters is that
> each VIN instance have a unique ID.
> 
> Patch 4/6 and 5/6 uses the fact that VIN instances on Gen2 now have
> unique IDs and greatly simplifies the unnecessarily complex vl4-async
> notifier usage in the VIN driver. This have in the past lead to some
> subtle bugs and having only a single notifier for all VIN will remove a
> lot of possibilities for this to go wrong in the future.
> 
> Finally patch 6/6 removes all non MC code paths and have the Gen2
> devices register a media device and configure links.
> 
> This have been tested on Gen3 and Gen4 devices without any regressions.
> And on Gen2 to make sure the media-graph behaves as it should. As a
> bonus the Gen2 devices can now join the VIN CI and any future issues
> should be caught as they are for Gen3 and Gen4.
> 
> See individual patches for changelog.
> 
> Niklas Söderlund (6):
>   media: rcar-vin: Use correct count of remote subdevices
>   media: rcar-vin: Change link setup argument
>   media: rcar-vin: Generate a VIN group ID for Gen2
>   media: rcar-vin: Prepare for unifying all v4l-async notifiers
>   media: rcar-vin: Merge all notifiers
>   media: rcar-vin: Enable media-graph on Gen2
> 
>  .../platform/renesas/rcar-vin/rcar-core.c     | 706 +++++++-----------
>  .../platform/renesas/rcar-vin/rcar-dma.c      |  16 +-
>  .../platform/renesas/rcar-vin/rcar-v4l2.c     | 488 +-----------
>  .../platform/renesas/rcar-vin/rcar-vin.h      |  14 +-
>  4 files changed, 305 insertions(+), 919 deletions(-)
> 

On my V4H board, GMSL2, multistreams branch:

Tested-by: Tomi Valkeinen <tomi.valkeinen+renesas@xxxxxxxxxxxxxxxx>

 Tomi





[Index of Archives]     [Linux Samsung SOC]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]

  Powered by Linux