1 /* SPDX-License-Identifier: (GPL-2.0+ WITH Linux-syscall-note) OR MIT
2  *
3  * Copyright (C) 2022 Rockchip Electronics Co., Ltd.
4  */
5 #ifndef _UAPI_RK_VIDEO_FORMAT_H
6 #define _UAPI_RK_VIDEO_FORMAT_H
7 
8 /*  Four-character-code (FOURCC) */
9 #define v4l2_fourcc(a, b, c, d) ((__u32)(a) | ((__u32)(b) << 8) | ((__u32)(c) << 16) | ((__u32)(d) << 24))
10 #define v4l2_fourcc_be(a, b, c, d) (v4l2_fourcc(a, b, c, d) | (1U << 31))
11 
12 /* Rockchip yuv422sp frame buffer compression encoder */
13 #define V4L2_PIX_FMT_FBC2 v4l2_fourcc('F', 'B', 'C', '2')
14 /* Rockchip yuv420sp frame buffer compression encoder */
15 #define V4L2_PIX_FMT_FBC0 v4l2_fourcc('F', 'B', 'C', '0')
16 #define V4L2_PIX_FMT_FBCG v4l2_fourcc('F', 'B', 'C', 'G')
17 /* embedded data 8-bit */
18 #define V4l2_PIX_FMT_EBD8 v4l2_fourcc('E', 'B', 'D', '8')
19 /* shield pix data 16-bit */
20 #define V4l2_PIX_FMT_SPD16 v4l2_fourcc('S', 'P', 'D', '6')
21 
22 /* Vendor specific - used for Rockchip ISP1 camera sub-system */
23 #define V4L2_META_FMT_RK_ISP1_PARAMS v4l2_fourcc('R', 'K', '1', 'P')    /* Rockchip ISP1 params */
24 #define V4L2_META_FMT_RK_ISP1_STAT_3A v4l2_fourcc('R', 'K', '1', 'S')   /* Rockchip ISP1 3A statistics */
25 #define V4L2_META_FMT_RK_ISP1_STAT_LUMA v4l2_fourcc('R', 'K', '1', 'L') /* Rockchip ISP1 luma statistics */
26 #define V4L2_META_FMT_RK_ISPP_PARAMS v4l2_fourcc('R', 'K', 'P', 'P')    /* Rockchip ISPP params */
27 #define V4L2_META_FMT_RK_ISPP_STAT v4l2_fourcc('R', 'K', 'P', 'S')      /* Rockchip ISPP statistics */
28 
29 /* sensor embedded data format */
30 #define MEDIA_BUS_FMT_EBD_1X8 0x5002
31 /* sensor shield pix data format */
32 #define MEDIA_BUS_FMT_SPD_2X8 0x5003
33 
34 #endif /* _UAPI_RK_VIDEO_FORMAT_H */
35