/* SPDX-License-Identifier: GPL-2.0-or-later */


#ifndef _V4L2_ISP_H_
#define _V4L2_ISP_H_

#include <linux/media/v4l2-isp.h>

struct device;
struct vb2_buffer;


#define v4l2_isp_params_buffer_size(max_params_size) \
	(offsetof(struct v4l2_isp_params_buffer, data) + (max_params_size))


int v4l2_isp_params_validate_buffer_size(struct device *dev,
					 struct vb2_buffer *vb,
					 size_t max_size);


struct v4l2_isp_params_block_type_info {
	size_t size;
};


int v4l2_isp_params_validate_buffer(struct device *dev, struct vb2_buffer *vb,
				    const struct v4l2_isp_params_buffer *buffer,
				    const struct v4l2_isp_params_block_type_info *type_info,
				    size_t num_block_types);

#endif 
