mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-04-29 03:31:04 -04:00
media: atomisp: Add ia_css_frame_init_from_info() function
Add a function to initialize (rather then alloc/create) a ia_css_frame struct based on an ia_css_frame_info struct. This is a preparation patch for adding videobuf2 support. Reviewed-by: Andy Shevchenko <andy@kernel.org> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
This commit is contained in:
committed by
Mauro Carvalho Chehab
parent
931d87d204
commit
391e14183a
@@ -220,6 +220,17 @@ ia_css_frame_allocate(struct ia_css_frame **frame,
|
||||
unsigned int stride,
|
||||
unsigned int raw_bit_depth);
|
||||
|
||||
/* @brief Initialize a CSS frame structure using a frame info structure.
|
||||
*
|
||||
* @param frame The allocated frame.
|
||||
* @param[in] info The frame info structure.
|
||||
* @return The error code.
|
||||
*
|
||||
* Initialize a frame using the resolution and format from a frame info struct.
|
||||
*/
|
||||
int ia_css_frame_init_from_info(struct ia_css_frame *frame,
|
||||
const struct ia_css_frame_info *info);
|
||||
|
||||
/* @brief Allocate a CSS frame structure using a frame info structure.
|
||||
*
|
||||
* @param frame The allocated frame.
|
||||
|
||||
@@ -847,3 +847,19 @@ void ia_css_resolution_to_sp_resolution(
|
||||
to->width = (uint16_t)from->width;
|
||||
to->height = (uint16_t)from->height;
|
||||
}
|
||||
|
||||
int ia_css_frame_init_from_info(struct ia_css_frame *frame,
|
||||
const struct ia_css_frame_info *frame_info)
|
||||
{
|
||||
frame->info.res.width = frame_info->res.width;
|
||||
frame->info.res.height = frame_info->res.height;
|
||||
frame->info.format = frame_info->format;
|
||||
frame->info.padded_width = frame_info->padded_width;
|
||||
frame->info.raw_bit_depth = frame_info->raw_bit_depth;
|
||||
frame->valid = true;
|
||||
/* To indicate it is not valid frame. */
|
||||
frame->dynamic_queue_id = SH_CSS_INVALID_QUEUE_ID;
|
||||
frame->buf_type = IA_CSS_BUFFER_TYPE_INVALID;
|
||||
|
||||
return ia_css_frame_init_planes(frame);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user