summaryrefslogtreecommitdiff
path: root/include/uapi/linux/aspeed-video.h
diff options
context:
space:
mode:
authorJammy Huang <jammy_huang@aspeedtech.com>2022-10-28 05:35:53 +0300
committerHans Verkuil <hverkuil-cisco@xs4all.nl>2022-11-04 18:56:41 +0300
commitd4b9fd006fae58d2fdc68a1d1000e0498d8fbe33 (patch)
tree477d3816d6c7617a45c6097d8b69772eb7dd4215 /include/uapi/linux/aspeed-video.h
parentdae86bb6488895738c390bce286ce14156c08d6b (diff)
downloadlinux-d4b9fd006fae58d2fdc68a1d1000e0498d8fbe33.tar.xz
media: aspeed: Support aspeed mode to reduce compressed data
aspeed supports differential jpeg format which only compress the parts which are changed. In this way, it reduces both the amount of data to be transferred by network and those to be decoded on the client side. 2 new ctrls are added: * Aspeed HQ Mode: to control aspeed's high quality(2-pass) compression mode This only works with yuv444 subsampling. * Aspeed HQ Quality: to control the quality of aspeed's HQ mode only useful if Aspeed HQ mode is enabled Aspeed JPEG Format requires an additional buffer, called bcd, to store the information about which macro block in the new frame is different from the previous one. To have bcd correctly working, we need to swap the buffers for src0/1 to make src1 refer to previous frame and src0 to the coming new frame. Signed-off-by: Jammy Huang <jammy_huang@aspeedtech.com> Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> [hverkuil: fix logging dma_addr_t, use %pad for that]
Diffstat (limited to 'include/uapi/linux/aspeed-video.h')
-rw-r--r--include/uapi/linux/aspeed-video.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/include/uapi/linux/aspeed-video.h b/include/uapi/linux/aspeed-video.h
new file mode 100644
index 000000000000..6586a65548c4
--- /dev/null
+++ b/include/uapi/linux/aspeed-video.h
@@ -0,0 +1,14 @@
+/* SPDX-License-Identifier: GPL-2.0+ WITH Linux-syscall-note */
+/*
+ * Copyright (C) 2021 ASPEED Technology Inc.
+ */
+
+#ifndef _UAPI_LINUX_ASPEED_VIDEO_H
+#define _UAPI_LINUX_ASPEED_VIDEO_H
+
+#include <linux/v4l2-controls.h>
+
+#define V4L2_CID_ASPEED_HQ_MODE (V4L2_CID_USER_ASPEED_BASE + 1)
+#define V4L2_CID_ASPEED_HQ_JPEG_QUALITY (V4L2_CID_USER_ASPEED_BASE + 2)
+
+#endif /* _UAPI_LINUX_ASPEED_VIDEO_H */