]> git.ipfire.org Git - thirdparty/linux.git/commit
media: pisp_be: Remove config validation from schedule()
authorJacopo Mondi <jacopo.mondi@ideasonboard.com>
Mon, 26 Aug 2024 10:29:50 +0000 (12:29 +0200)
committerHans Verkuil <hverkuil@xs4all.nl>
Thu, 3 Jul 2025 07:25:01 +0000 (09:25 +0200)
commita773b6141610e625abedaff29ac674a75c77a609
tree6eff955c2d62316ff19406b9dc0972769f1f122d
parent3ae896614000902090fa42489a34fa54b720012d
media: pisp_be: Remove config validation from schedule()

The config parameters buffer is already validated in
pisp_be_validate_config() at .buf_prepare() time.

However some of the same validations are also performed at
pispbe_schedule() time. In particular the function checks that:

1) config.num_tiles is valid
2) At least one of the BAYER or RGB input is enabled

The input config validation is already performed in
pisp_be_validate_config() and while job.hw_enables is modified by
pispbe_xlate_addrs(), the function only resets the input masks if

- there is no input buffer available, but pispbe_prepare_job() fails
  before calling pispbe_xlate_addrs() in this case
- bayer_enable is 0, but in this case rgb_enable is valid as guaranteed
  by pisp_be_validate_config()
- only outputs are reset in rgb_enable

For this reasons there is no need to repeat the check at
pispbe_schedule() time.

The num_tiles validation can be moved to pisp_be_validate_config() as
well. As num_tiles is a u32 it can'be be < 0, so change the sanity
check accordingly.

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
Signed-off-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Signed-off-by: Hans Verkuil <hverkuil@xs4all.nl>
drivers/media/platform/raspberrypi/pisp_be/pisp_be.c