[PATCH v2] media: rppx1: describe the MAIN_POST white balance gains block

Linmao Li <[email protected]>
Newsgroups gmane.linux.kernel,gmane.linux.drivers.video-input-infrastructure
Message-ID <[email protected]>
rppx1_ext_params_blocks_info[] is indexed by block type and is built
with designated initialisers, so a block type without an entry is left
as a zero-sized hole. RPPX1_PARAMS_BLOCK_TYPE_AWBG_POST is the only
such hole: a block reporting that type and a size of zero passes
v4l2_isp_params_validate_buffer(), which then has nothing to advance
the walk with.

Describe the block, so the array covers all block types the uAPI
defines. The MAIN_POST white balance gains module is probed and started
with the rest of the POST pipe, and RPPX1_PARAMS_MAX_SIZE already
reserves room for all three white balance gains blocks.

The block is not dispatched by rppx1_params(), in line with the other
described blocks that have no users yet.

Signed-off-by: Linmao Li <[email protected]>
---
Changes since v1 [1]:
- dropped the rppx1_params() dispatch hunk, the block stays undispatched
  like the other described blocks that have no users yet (Niklas);
- retitled, and the commit message now leads with the hole in the array;
- dropped the Fixes: tag, the fix is expected to be collected together
  with the driver for v7.3 (Jacopo).

The second patch of v1, "media: rppx1: bls: read the raw pattern from
the PRE2 acquisition module", is dropped for now and will be resent when
PRE2 support lands.

The zero-sized block problem in the common validator is addressed by
David Carlier's "media: v4l2-isp: reject zero-sized parameter blocks"
[2], so it is not touched here.

[1] https://lore.kernel.org/linux-media/[email protected]/
[2] https://lore.kernel.org/linux-media/[email protected]/

 drivers/media/platform/dreamchip/rppx1/rpp_params.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/media/platform/dreamchip/rppx1/rpp_params.c b/drivers/media/platform/dreamchip/rppx1/rpp_params.c
index a75a27a8afd09..5e6727d589464 100644
--- a/drivers/media/platform/dreamchip/rppx1/rpp_params.c
+++ b/drivers/media/platform/dreamchip/rppx1/rpp_params.c
@@ -25,6 +25,7 @@ rppx1_ext_params_blocks_info[] = {
 	RPPX1_PARAMS_BLOCK_INFO(LSC_PRE2, lsc),
 	RPPX1_PARAMS_BLOCK_INFO(AWBG_PRE1, awbg),
 	RPPX1_PARAMS_BLOCK_INFO(AWBG_PRE2, awbg),
+	RPPX1_PARAMS_BLOCK_INFO(AWBG_POST, awbg),
 	RPPX1_PARAMS_BLOCK_INFO(CCOR_POST, ccor),
 	RPPX1_PARAMS_BLOCK_INFO(HIST_PRE1, hist),
 	RPPX1_PARAMS_BLOCK_INFO(HIST_PRE2, hist),
-- 
2.25.1
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.