[media] media: ti-vpe: vpdma: Add RAW8 and RAW16 data types
Add RAW8 and RAW16 data type to VPDMA. To handle RAW format we are re-using the YUV CBY422 vpdma data type so that we use the vpdma to re-order the incoming bytes, as the VIP parser assumes that the first byte presented on the bus is the MSB of a 2 bytes value. RAW8 handles from 1 to 8 bits. RAW16 handles from 9 to 16 bits. Signed-off-by: Benoit Parrot <bparrot@ti.com> Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
This commit is contained in:
parent
35be6d865c
commit
ee1c02949d
|
@ -191,6 +191,29 @@ const struct vpdma_data_format vpdma_rgb_fmts[] = {
|
|||
};
|
||||
EXPORT_SYMBOL(vpdma_rgb_fmts);
|
||||
|
||||
/*
|
||||
* To handle RAW format we are re-using the CBY422
|
||||
* vpdma data type so that we use the vpdma to re-order
|
||||
* the incoming bytes, as the parser assumes that the
|
||||
* first byte presented on the bus is the MSB of a 2
|
||||
* bytes value.
|
||||
* RAW8 handles from 1 to 8 bits
|
||||
* RAW16 handles from 9 to 16 bits
|
||||
*/
|
||||
const struct vpdma_data_format vpdma_raw_fmts[] = {
|
||||
[VPDMA_DATA_FMT_RAW8] = {
|
||||
.type = VPDMA_DATA_FMT_TYPE_YUV,
|
||||
.data_type = DATA_TYPE_CBY422,
|
||||
.depth = 8,
|
||||
},
|
||||
[VPDMA_DATA_FMT_RAW16] = {
|
||||
.type = VPDMA_DATA_FMT_TYPE_YUV,
|
||||
.data_type = DATA_TYPE_CBY422,
|
||||
.depth = 16,
|
||||
},
|
||||
};
|
||||
EXPORT_SYMBOL(vpdma_raw_fmts);
|
||||
|
||||
const struct vpdma_data_format vpdma_misc_fmts[] = {
|
||||
[VPDMA_DATA_FMT_MV] = {
|
||||
.type = VPDMA_DATA_FMT_TYPE_MISC,
|
||||
|
|
|
@ -104,12 +104,18 @@ enum vpdma_rgb_formats {
|
|||
VPDMA_DATA_FMT_BGRA32,
|
||||
};
|
||||
|
||||
enum vpdma_raw_formats {
|
||||
VPDMA_DATA_FMT_RAW8 = 0,
|
||||
VPDMA_DATA_FMT_RAW16,
|
||||
};
|
||||
|
||||
enum vpdma_misc_formats {
|
||||
VPDMA_DATA_FMT_MV = 0,
|
||||
};
|
||||
|
||||
extern const struct vpdma_data_format vpdma_yuv_fmts[];
|
||||
extern const struct vpdma_data_format vpdma_rgb_fmts[];
|
||||
extern const struct vpdma_data_format vpdma_raw_fmts[];
|
||||
extern const struct vpdma_data_format vpdma_misc_fmts[];
|
||||
|
||||
enum vpdma_frame_start_event {
|
||||
|
|
Loading…
Reference in New Issue