summaryrefslogtreecommitdiff
path: root/drivers/staging/media/sunxi/cedrus/cedrus_regs.h
diff options
context:
space:
mode:
authorJernej Skrabec <jernej.skrabec@siol.net>2019-12-13 19:15:15 +0300
committerMauro Carvalho Chehab <mchehab+huawei@kernel.org>2020-01-09 16:36:25 +0300
commit7678c5462680c1aba8d07926ab4d8ee906fb98cf (patch)
tree0a3caf584f3be2af6491406dd944cc4e04408e68 /drivers/staging/media/sunxi/cedrus/cedrus_regs.h
parente6111647934562849ba052052ffbc673b935a9fe (diff)
downloadlinux-7678c5462680c1aba8d07926ab4d8ee906fb98cf.tar.xz
media: cedrus: Fix decoding for some HEVC videos
It seems that for some HEVC videos at least one bitstream parsing trigger must be called in order to be decoded correctly. There is no explanation why this helps, but it was observed that several videos with this fix are now decoded correctly and there is no regression with others. Without this fix, those same videos totally crash HEVC decoder (other decoder engines are unaffected). After decoding those problematic videos, HEVC decoder always returns only green image (all zeros). Only complete HW reset helps. This fix is similar to that for H264. Signed-off-by: Jernej Skrabec <jernej.skrabec@siol.net> Acked-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com> Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>
Diffstat (limited to 'drivers/staging/media/sunxi/cedrus/cedrus_regs.h')
-rw-r--r--drivers/staging/media/sunxi/cedrus/cedrus_regs.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/staging/media/sunxi/cedrus/cedrus_regs.h b/drivers/staging/media/sunxi/cedrus/cedrus_regs.h
index 7beb03d3bb39..66b152f18d17 100644
--- a/drivers/staging/media/sunxi/cedrus/cedrus_regs.h
+++ b/drivers/staging/media/sunxi/cedrus/cedrus_regs.h
@@ -424,6 +424,7 @@
#define VE_DEC_H265_TRIGGER (VE_ENGINE_DEC_H265 + 0x34)
+#define VE_DEC_H265_TRIGGER_TYPE_N_BITS(x) (((x) & 0x3f) << 8)
#define VE_DEC_H265_TRIGGER_STCD_VC1 (0x02 << 4)
#define VE_DEC_H265_TRIGGER_STCD_AVS (0x01 << 4)
#define VE_DEC_H265_TRIGGER_STCD_HEVC (0x00 << 4)