summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Liu <jason.hui.liu@nxp.com>2020-10-09 12:01:46 +0800
committerJason Liu <jason.hui.liu@nxp.com>2020-11-17 15:09:21 +0800
commit92aae186203e70d87b3ef5082d9cc5e1baa0bebc (patch)
treecf3562e740cea2c8ddc415afe59f9bc7c039df0d
parent586d6d4a3c3fa0ddb1b1aa1491a5f83a1e336c42 (diff)
MLK-24874-5: include: uapi: ipu: fix the UAPI_HEADER_TEST failure
Enable CONFIG_UAPI_HEADER_TEST turns on the following build issue ./usr/include/linux/ipu.h:167:2: error: unknown type name ‘u32’ u32 x; ^~~ ./usr/include/linux/ipu.h:168:2: error: unknown type name ‘u32’ u32 y; ^~~ ./usr/include/linux/ipu.h:173:2: error: unknown type name ‘u32’ u32 w; ^~~ ./usr/include/linux/ipu.h:174:2: error: unknown type name ‘u32’ u32 h; ^~~ ./usr/include/linux/ipu.h:179:2: error: unknown type name ‘u8’ u8 motion; /*see ipu_motion_sel*/ The fix is to use the __u32/__u8 instead and remove the internal definiton But it finally will result in another failure as the followings: HDRTEST usr/include/linux/ipu.h In file included from ./usr/include/linux/ipu.h:29:0, from <command-line>:32: ./usr/include/linux/videodev2.h:2353:20: error: field ‘timestamp’ has incomplete type struct timespec timestamp; This is kernel known issue. The fix is as others by adding the ipu.h to skip-list: header-test- += linux/v4l2-mediabus.h header-test- += linux/v4l2-subdev.h header-test- += linux/videodev2.h Signed-off-by: Jason Liu <jason.hui.liu@nxp.com> (cherry picked from commit 24c36527086fff43595bde2822f8277138ebcb55)
-rw-r--r--include/uapi/linux/ipu.h48
-rw-r--r--usr/include/Makefile1
2 files changed, 22 insertions, 27 deletions
diff --git a/include/uapi/linux/ipu.h b/include/uapi/linux/ipu.h
index c92f292bcc9d..5709e3952a7a 100644
--- a/include/uapi/linux/ipu.h
+++ b/include/uapi/linux/ipu.h
@@ -34,12 +34,6 @@ typedef unsigned char bool;
#endif
#define irqreturn_t int
#define dma_addr_t int
-#define uint32_t unsigned int
-#define uint16_t unsigned short
-#define uint8_t unsigned char
-#define u32 unsigned int
-#define u8 unsigned char
-#define __u32 u32
#endif
/*!
@@ -171,19 +165,19 @@ typedef enum {
} cs_t;
struct ipu_pos {
- u32 x;
- u32 y;
+ __u32 x;
+ __u32 y;
};
struct ipu_crop {
struct ipu_pos pos;
- u32 w;
- u32 h;
+ __u32 w;
+ __u32 h;
};
struct ipu_deinterlace {
bool enable;
- u8 motion; /*see ipu_motion_sel*/
+ __u8 motion; /*see ipu_motion_sel*/
#define IPU_DEINTERLACE_FIELD_TOP 0
#define IPU_DEINTERLACE_FIELD_BOTTOM 1
#define IPU_DEINTERLACE_FIELD_MASK \
@@ -194,13 +188,13 @@ struct ipu_deinterlace {
#define IPU_DEINTERLACE_RATE_MASK \
(IPU_DEINTERLACE_RATE_EN | IPU_DEINTERLACE_RATE_FRAME1)
#define IPU_DEINTERLACE_MAX_FRAME 2
- u8 field_fmt;
+ __u8 field_fmt;
};
struct ipu_input {
- u32 width;
- u32 height;
- u32 format;
+ __u32 width;
+ __u32 height;
+ __u32 format;
struct ipu_crop crop;
dma_addr_t paddr;
@@ -211,20 +205,20 @@ struct ipu_input {
struct ipu_alpha {
#define IPU_ALPHA_MODE_GLOBAL 0
#define IPU_ALPHA_MODE_LOCAL 1
- u8 mode;
- u8 gvalue; /* 0~255 */
+ __u8 mode;
+ __u8 gvalue; /* 0~255 */
dma_addr_t loc_alp_paddr;
};
struct ipu_colorkey {
bool enable;
- u32 value; /* RGB 24bit */
+ __u32 value; /* RGB 24bit */
};
struct ipu_overlay {
- u32 width;
- u32 height;
- u32 format;
+ __u32 width;
+ __u32 height;
+ __u32 format;
struct ipu_crop crop;
struct ipu_alpha alpha;
struct ipu_colorkey colorkey;
@@ -232,10 +226,10 @@ struct ipu_overlay {
};
struct ipu_output {
- u32 width;
- u32 height;
- u32 format;
- u8 rotate;
+ __u32 width;
+ __u32 height;
+ __u32 format;
+ __u8 rotate;
struct ipu_crop crop;
dma_addr_t paddr;
};
@@ -249,13 +243,13 @@ struct ipu_task {
#define IPU_TASK_PRIORITY_NORMAL 0
#define IPU_TASK_PRIORITY_HIGH 1
- u8 priority;
+ __u8 priority;
#define IPU_TASK_ID_ANY 0
#define IPU_TASK_ID_VF 1
#define IPU_TASK_ID_PP 2
#define IPU_TASK_ID_MAX 3
- u8 task_id;
+ __u8 task_id;
int timeout;
};
diff --git a/usr/include/Makefile b/usr/include/Makefile
index c56cf2a0cade..79c9a80a9c0c 100644
--- a/usr/include/Makefile
+++ b/usr/include/Makefile
@@ -36,6 +36,7 @@ header-test- += linux/fmd/integrations/%
header-test- += linux/fmd/Peripherals/%
header-test- += linux/fsmap.h
header-test- += linux/hdlc/ioctl.h
+header-test- += linux/ipu.h
header-test- += linux/ivtv.h
header-test- += linux/kexec.h
header-test- += linux/matroxfb.h