[PATCH v2 0/3] media: v4l: async: add helper API v4l2_async_pad_init_and_register_subdev()
From: Frank Li
Date: Thu Feb 26 2026 - 17:55:55 EST
Add the helper API v4l2_async_pad_init_and_register_subdev(), which
combines media_entity_pads_init(), v4l2_subdev_init_finalize(), and
v4l2_async_register_subdev() into a single call.
Reduce code duplication and simplify error handling in drivers.
Only change dwc and cdns. If agree add API, more driver can be simplified.
Signed-off-by: Frank Li <Frank.Li@xxxxxxx>
---
Changes in v2:
- Change API name to media_async_register_subdev()
- pass down __v4l2_async_register_subdev() as argument to extend more
support in future.
- Link to v1: https://lore.kernel.org/r/20260210-v4l2_init_register-v1-0-8fe43f7d349f@xxxxxxx
---
Frank Li (3):
media: v4l: async: add helper API media_async_register_subdev()
media: synopsys: Use media_async_register_subdev() to simplify code
media: cadence: cdns-csi2rx: Use media_async_register_subdev() to simplify code
drivers/media/platform/cadence/cdns-csi2rx.c | 17 +++---------
drivers/media/platform/synopsys/dw-mipi-csi2rx.c | 13 +---------
drivers/media/v4l2-core/v4l2-async.c | 33 ++++++++++++++++++++++++
include/media/v4l2-async.h | 22 ++++++++++++++++
4 files changed, 59 insertions(+), 26 deletions(-)
---
base-commit: bc0bfce7d0f8204e0bbadcee72e87ad9ec105c73
change-id: 20260210-v4l2_init_register-0e6d0adcfa21
Best regards,
--
Frank Li <Frank.Li@xxxxxxx>