summaryrefslogtreecommitdiffstats
path: root/drivers/media/platform/s5p-mfc/regs-mfc-v10.h
diff options
context:
space:
mode:
authorSmitha T Murthy2018-02-02 13:25:40 +0100
committerMauro Carvalho Chehab2018-03-22 12:14:51 +0100
commit1c700fa76b8d62c405974192b51f1899d30add17 (patch)
tree2be100839c74b0161363f02086f412390bdde931 /drivers/media/platform/s5p-mfc/regs-mfc-v10.h
parentmedia: s5p-mfc: Use min scratch buffer size as provided by F/W (diff)
downloadkernel-qcow2-linux-1c700fa76b8d62c405974192b51f1899d30add17.tar.gz
kernel-qcow2-linux-1c700fa76b8d62c405974192b51f1899d30add17.tar.xz
kernel-qcow2-linux-1c700fa76b8d62c405974192b51f1899d30add17.zip
media: s5p-mfc: Support MFCv10.10 buffer requirements
Aligning the luma_dpb_size, chroma_dpb_size, mv_size and me_buffer_size for MFCv10.10. Signed-off-by: Smitha T Murthy <smitha.t@samsung.com> Reviewed-by: Andrzej Hajda <a.hajda@samsung.com> Acked-by: Kamil Debski <kamil@wypas.org> Acked-by: Hans Verkuil <hans.verkuil@cisco.com> Signed-off-by: Sylwester Nawrocki <s.nawrocki@samsung.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Diffstat (limited to 'drivers/media/platform/s5p-mfc/regs-mfc-v10.h')
-rw-r--r--drivers/media/platform/s5p-mfc/regs-mfc-v10.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/drivers/media/platform/s5p-mfc/regs-mfc-v10.h b/drivers/media/platform/s5p-mfc/regs-mfc-v10.h
index 4422a75db727..7b28313dcc15 100644
--- a/drivers/media/platform/s5p-mfc/regs-mfc-v10.h
+++ b/drivers/media/platform/s5p-mfc/regs-mfc-v10.h
@@ -31,5 +31,24 @@
#define MFC_VERSION_V10 0xA0
#define MFC_NUM_PORTS_V10 1
+/* MFCv10 codec defines*/
+#define S5P_FIMV_CODEC_HEVC_ENC 26
+
+/* Encoder buffer size for MFC v10.0 */
+#define ENC_V100_BASE_SIZE(x, y) \
+ (((x + 3) * (y + 3) * 8) \
+ + ((y * 64) + 1280) * DIV_ROUND_UP(x, 8))
+
+#define ENC_V100_H264_ME_SIZE(x, y) \
+ (ENC_V100_BASE_SIZE(x, y) \
+ + (DIV_ROUND_UP(x * y, 64) * 32))
+
+#define ENC_V100_MPEG4_ME_SIZE(x, y) \
+ (ENC_V100_BASE_SIZE(x, y) \
+ + (DIV_ROUND_UP(x * y, 128) * 16))
+
+#define ENC_V100_VP8_ME_SIZE(x, y) \
+ ENC_V100_BASE_SIZE(x, y)
+
#endif /*_REGS_MFC_V10_H*/