[v3,0/5] media: Replace media graph walk in several drivers

Message ID 20221221093341.7580-1-laurent.pinchart@ideasonboard.com (mailing list archive)
Headers
Series media: Replace media graph walk in several drivers |

Message

Laurent Pinchart Dec. 21, 2022, 9:33 a.m. UTC
  Hello,

This patch series replaces the media graph walk API usage in several
drivers with iteration over entities or pads stored in the
media_pipeline object. Iteration over the constructed pipeline is more
efficient, and will support the V4L2 stream API correctly.

Patches 1/5 and 2/5 start by adding two macros to iterate over pads and
entities in a pipeline. Patch 2/5 also marks the media graph walk API as
deprecated as a result. Patches 3/5 to 5/5 then use the new iterators in
three drivers (omap3isp, omap4iss and xilinx).

Compared to v2, this version fixes compilation errors in the omap3isp
and omap4iss drivers (no idea how those crept in, I would have sworn I
had compile-tested everything).

With this series applied, only two drivers still use the media graph
walk API: exynos4-is and vsp1. Those are more difficult to address. I
plan to work on the vsp1 driver, but not on exynos4-is as I miss
knowledge of the code base and have no hardware to test changes on.
As with v1, volunteers would be appreciated :-)

Laurent Pinchart (5):
  media: mc: entity: Add pad iterator for media_pipeline
  media: mc: entity: Add entity iterator for media_pipeline
  media: ti: omap3isp: Use media_pipeline_for_each_entity()
  media: ti: omap4iss: Use media_pipeline_for_each_entity()
  media: xilinx: dma: Use media_pipeline_for_each_pad()

 drivers/media/mc/mc-entity.c                  | 55 +++++++++++
 drivers/media/platform/ti/omap3isp/ispvideo.c | 20 ++--
 drivers/media/platform/xilinx/xilinx-dma.c    | 28 ++----
 drivers/staging/media/omap4iss/iss_video.c    | 66 +++++--------
 include/media/media-entity.h                  | 98 +++++++++++++++++++
 5 files changed, 192 insertions(+), 75 deletions(-)


base-commit: d4acfa22b634347be33d5906744366742fccd151