}
EXPORT_SYMBOL_GPL(v4l_bound_align_image);
-const struct v4l2_frmsize_discrete *
-v4l2_find_nearest_format(const struct v4l2_frmsize_discrete *sizes,
- size_t num_sizes,
- s32 width, s32 height)
-{
- int i;
- u32 error, min_error = UINT_MAX;
- const struct v4l2_frmsize_discrete *size, *best = NULL;
-
- if (!sizes)
- return NULL;
-
- for (i = 0, size = sizes; i < num_sizes; i++, size++) {
- error = abs(size->width - width) + abs(size->height - height);
- if (error < min_error) {
- min_error = error;
- best = size;
- }
- if (!error)
- break;
- }
-
- return best;
-}
-EXPORT_SYMBOL_GPL(v4l2_find_nearest_format);
-
const void *
__v4l2_find_nearest_size(const void *array, size_t array_size,
size_t entry_size, size_t width_offset,
unsigned int hmax, unsigned int halign,
unsigned int salign);
-/**
- * v4l2_find_nearest_format - find the nearest format size among a discrete
- * set of resolutions.
- *
- * @sizes: array of &struct v4l2_frmsize_discrete image sizes.
- * @num_sizes: length of @sizes array.
- * @width: desired width.
- * @height: desired height.
- *
- * Finds the closest resolution to minimize the width and height differences
- * between what requested and the supported resolutions.
- */
-const struct v4l2_frmsize_discrete *
-v4l2_find_nearest_format(const struct v4l2_frmsize_discrete *sizes,
- const size_t num_sizes,
- s32 width, s32 height);
-
/**
* v4l2_find_nearest_size - Find the nearest size among a discrete
* set of resolutions contained in an array of a driver specific struct.