[PATCH v5 00/22] media: platform: rzg2l-cru: CSI-2 and CRU enhancements

Prabhakar
2024-10-11T17:31:00Z

Hi All,

This patch series aims to add the below:
- Retrieve virtual channel from remote subdev
- Support to capture 8bit Bayer formats.

v4->v5
- Updated .link_validate function to drop local variable, invalid
format check and input/output code fmt check
- Split up patch 10/17 from v4 into multiple patches (10/11/12/13/14/15)/22

v3->v4
- Added {} in rzg2l_cru_ip_format_to_fmt() for the for loop (in patch 10/17)
- Added checks for formats in .link_validate callback (in patch 13/17)
- Got rid of icndmr local variable in rzg2l_cru_initialize_image_conv()
(in patch 15/17)
- Moved macro ICnDMR_YCMODE_UYVY to rzg2l-cru-regs.h
- Included RB tags from Laurent for patches 15 and 17

v2->v3
- Added MUST_CONNECT flag for source pads
- Used ARRAY_SIZE() instead of NR_OF_RZG2L_CSI2_PAD
- Implemented rzg2l_cru_ip_format_to_fmt() and rzg2l_cru_ip_index_to_fmt()
- Dropped checking fmt in rzg2l_cru_initialize_image_conv()
- Dropped fse->index checks
- Implemented link_validate for video node
- Re-used rzg2l_cru_ip_format_to_fmt() to fetch icndmr details
- Moved register definitions to separate header file
- Updated subject lines and commit messages
- Collected RB tag

v1->v2
- Fixed retrieving VC from subdev
- Fixed review comments pointed by Laurent
* Refactored supported CRU formats
* Added MUST_CONNECT flag wherever required
* Dropped `channel` member from `struct

v1:
Link: https://lore.kernel.org/all/20240906173947.282402-1-prabhakar.mahadev-lad.rj@bp.renesas.com/

Cheers,
Prabhakar

Lad Prabhakar (22):
media: rzg2l-cru: Use RZG2L_CRU_IP_SINK/SOURCE enum entries
media: rzg2l-cru: Mark sink and source pad with MUST_CONNECT flag
media: rzg2l-cru: csi2: Mark sink and source pad with MUST_CONNECT
flag
media: rzg2l-cru: csi2: Use ARRAY_SIZE() in media_entity_pads_init()
media: rzg2l-cru: csi2: Implement .get_frame_desc()
media: rzg2l-cru: Retrieve virtual channel information
media: rzg2l-cru: Remove `channel` member from `struct rzg2l_cru_csi`
media: rzg2l-cru: Use MIPI CSI-2 data types for ICnMC_INF definitions
media: rzg2l-cru: Remove unused fields from rzg2l_cru_ip_format struct
media: rzg2l-cru: Remove unnecessary WARN_ON check in format func
media: rzg2l-cru: Simplify configuring input format for image
processing
media: rzg2l-cru: Inline calculating image size
media: rzg2l-cru: Simplify handling of supported formats
media: rzg2l-cru: Inline calculating bytesperline
media: rzg2l-cru: Make use of v4l2_format_info() helpers
media: rzg2l-cru: Use `rzg2l_cru_ip_formats` array in enum_frame_size
media: rzg2l-cru: csi2: Remove unused field from rzg2l_csi2_format
media: rzg2l-cru: video: Implement .link_validate() callback
media: rzg2l-cru: csi2: Use rzg2l_csi2_formats array in
enum_frame_size
media: rzg2l-cru: Refactor ICnDMR register configuration
media: rzg2l-cru: Add support to capture 8bit raw sRGB
media: rzg2l-cru: Move register definitions to a separate file

.../platform/renesas/rzg2l-cru/rzg2l-core.c | 3 +-
.../renesas/rzg2l-cru/rzg2l-cru-regs.h | 80 +++++
.../platform/renesas/rzg2l-cru/rzg2l-cru.h | 26 +-
.../platform/renesas/rzg2l-cru/rzg2l-csi2.c | 39 ++-
.../platform/renesas/rzg2l-cru/rzg2l-ip.c | 80 ++++-
.../platform/renesas/rzg2l-cru/rzg2l-video.c | 291 +++++++-----------
6 files changed, 312 insertions(+), 207 deletions(-)
create mode 100644 drivers/media/platform/renesas/rzg2l-cru/rzg2l-cru-regs.h

--
2.43.0