Commit Graph

654113 Commits

Author SHA1 Message Date
Chuangcheng Peng
8b7704805e dvb: tm2 support hiu1 [1/2]
PD#SWPL-6806

Problem:
    tm2 support hiu1 in bringup

Solution:
   tm2 support hiu1 in bringup

Verify:
   veify at AB301

Change-Id: If158788a29b6e96395cb2f546276f516c1cb7a0b
Signed-off-by: Chuangcheng Peng <chuangcheng.peng@amlogic.com>
2019-07-23 17:52:49 +09:00
Conglin Guo
4614ea7532 media_modules: timeout_process trigger softlockup crash [1/1]
PD#SWPL-6395

Problem:
timeout trigger softlockup.

Solution:
1 amvdec_stop,adjust timeout HZ to HZ/10,Cancel
  the  timeout warning.
2 First clear timeout, after amvdec_stop Reduce
  frequent triggers timeout_process.

Verify:
T962X2

Change-Id: I5312786395db30fdb511d6e980f20e4ed466c3c1
Signed-off-by: Conglin Guo <conglin.guo@amlogic.com>
2019-07-23 17:52:49 +09:00
Nanxin.Qin
959f192fd0 decode: bringup tm2. [1/2]
PD#SWPL-5261

Problem:
bringup tm2.

Solution:
1. add chip type.
2. add power ctrl for dos.

Verify:
AC200

Change-Id: Ie8360008d03f34cca43a066f88773f54d1246978
Signed-off-by: Nanxin.Qin <nanxin.qin@amlogic.com>
2019-07-23 17:52:49 +09:00
Hui Zhang
1cd271f6fa avs2: fix avs2 decoder error issue on G12B. [1/1]
PD#SWPL-7004

Problem:
avs2 decoding failed on G12B. root cause is line rdma
irq enable which will side effect hevc decoding.

Solution:
fix hsync problem
ucode gerrit: 71546
ucode commit id: 707b473ad8384673ceff432daf94a6cf25501018

Verify:
W400

Change-Id: Ib67e8ea629399b481ecbb87893866ba8803cfaf4
Signed-off-by: Hui Zhang <hui.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
Hui Zhang
eb8aa86061 media_module: fix kasan check issue [1/2]
PD#SWPL-6847

Problem:
1) mpeg2/mjpeg multi instance alloc issue
2) mpeg2/mpeg4/mjpeg multi-instance kasan check failed

Solution:
1) use valloc instead of kzalloc
2) fix kasan check issue

Verify:
x301

Change-Id: I1bd207f46b87f081269514cacd994e805f5248d3
2019-07-23 17:52:49 +09:00
Hui Zhang
9be50aa0fc media_module: remove mpeg12_multi run ready debug print
Change-Id: Idef7f92a0536da08aa3f71bb21db392a4bf8f3f4
Signed-off-by: Hui Zhang <hui.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
Conglin Guo
dedaac4de4 vmh264: fix channel switching system hangup issue in vmh264 remove [1/1]
PD#SWPL-6729

Problem:
hw bus dead lock in vmh264 remove.

Solution:
wait for decoder hw stopped completely before vmh264 remove

Verify:
X301

Change-Id: I1f41bf40630d7b56a6722cdb93d63df48dc29c63
Signed-off-by: Conglin Guo <conglin.guo@amlogic.com>
2019-07-23 17:52:49 +09:00
Rong Zhang
e299d162c4 media_module: mh264 [1/1]
PD#SWPL-6853

Problem:
	code section size for mh264 in ucode is nearly exhaust.

Solution:
	Parse sei data in c driver and get correct pic_struct for each field.
	ucode gerrit id: 54486
	ucode change id: I931ab485c4be0344c20648369dd32a172c542c3f

Verify:
	Verified T962X2-X301

Change-Id: I43f4a6b81b08c5f40ea82d881918fe0421dee7a6
Signed-off-by: Rong Zhang <rong.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
Rong Zhang
8dd9f4c08b media_module: h264/mpeg2/h265 [1/2]
PD#SWPL-3654

Problem:
	provide aspect_ratio information by AMSTREAM_IOC_VDECSTAT

Solution:
	add ration_control information in vdec_status function for
	h264/mh264/vh265/mpeg12/mmpeg12, and normalized it for
	aspect_ratio in AMSTREAM_IOC_VDECSTAT message.

Verify:
	Verified U212

Change-Id: Idec14dc61a1df48d84a3de051f5b23c6e8993a02
Signed-off-by: Rong Zhang <rong.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
Rong Zhang
f7a7e516b9 media_module: mh264/h265/avs2 [2/2]
PD#SWPL-6607

Problem:
	Not support QOS information for mh264.h265,avs2

Solution:
	Support QOS information picking for mh264,h265,avs2
	Support QOS information access interface by ioctl

Verify:
	Verified franklin

Change-Id: I630a9d9ca3541ae6329d58b028e7f6d4d3b7f94f
Signed-off-by: Rong Zhang <rong.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
renjiang.han
7a15a8818e vdec: remove ppmgr [1/1]
PD#SWPL-6794

Problem:
ppmgr cannot receive amlvideo.

Solution:
remove ppmgr.

Verify:
On S922x

Change-Id: I79eae25e11a03203ffc1aad732bc50064e982e30
Signed-off-by: renjiang.han <renjiang.han@amlogic.com>
2019-07-23 17:52:49 +09:00
Hui Zhang
4bbbe9be25 vmh264: fix progressive i_only issue [1/1]
PD#IPTV-2370

Problem:
decoding will block with progressive stream in i only mode 2

Solution:
skip slice parser and go to pic_done to search next start code directly
when slice type is not I slice.

Verify:
905L3

Change-Id: I86f2affb06cf73eecb90fc430a93fe09b0c59011
Signed-off-by: Hui Zhang <hui.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
Zhao Yi
ece84e9e41 h264_multi: add UNSTABLE_PTS [4/7]
PD#SWPL-2183

Problem:
pts of avi B-Frame is error.

Solution:
Ignore the PTS of the B frame and recalculate a pts by frame duration

Verify:
t962_p321

Change-Id: I48858471429e9458dbf2873698c934a885eda1f3
Signed-off-by: Zhao Yi <zhao.yi@amlogic.com>
2019-07-23 17:52:49 +09:00
Hui Zhang
9c91b7285e vh265: pic crop info mistmatch issue[1/1]
PD#TV-3412

Problem:
pic crop info is not match at moment of resolution switching.
becuase of crop info is stored in hevc struct. which may cause
reslution is mismatch with real size. display will flick.

Solution:
store pic crop info to pic struct.

Verify:
U212

Change-Id: Iafcef2335b659286f8c3219e14f71da42d47977c
Signed-off-by: Hui Zhang <hui.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
Rong Zhang
c7f2221333 media_module: mmpeg2 [1/1]
PD#SWPL-6488

Problem:
	Not support user data push to application

Solution:
	update ucode and driver to support user data push for multi-mpeg12
	ucode gerrit id: 65033
	ucode change id: I9abd700aa72f9073d581e8192fbed0277d30ce2e

Verify:
	Verified einstein

Change-Id: I9364923d5ea9c0cd6925a1cb54febcf377ee3ce4
Signed-off-by: Rong Zhang <rong.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
Hui Zhang
97a997d366 vh264: fix channel switching system hangup issue in vh264 remove [1/1]
PD#SWPL-6377

Problem:
hw bus dead lock in h264 remove.

Solution:
wait for decoder hw stopped completely before h264 remove

Verify:
X301

Change-Id: Ia3555e687ecfe452948922d3e221c0fae0ad499d
Signed-off-by: Hui Zhang <hui.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
Nanxin.Qin
e61469d472 firmware: fixed issue of playback h264. [2/2]
PD#SWPL-5261

Problem:
the wrong building for h264.

Solution:
1. fixed issue of playback h264.
2. ucode commit id:
   59f2de9e64980a9240b7a72e8a171bdf9d7c41ab

Verify:
X301

Change-Id: Ic45aa022ae706d31f1ebfc007dab65585f989e5c
Signed-off-by: Nanxin.Qin <nanxin.qin@amlogic.com>
2019-07-23 17:52:49 +09:00
Chuangcheng Peng
de73f552ff dvb: bringup for sm1 [1/2]
PD#SWPL-6244

Problem:
sm1 add dsc sm4/isda,demux cascade

Solution:
change code for sm4/isda,dmx cascade

Verify:
verify at sm1

Change-Id: Ia89c408d90b24e7c52512efefb7a3a3e93b70f89
Signed-off-by: Chuangcheng Peng <chuangcheng.peng@amlogic.com>
2019-07-23 17:52:49 +09:00
Conglin Guo
18eec68951 media_modules: g12b:Distinguish g12b vera verb [1/1]
PD#SWPL-5259

Problem:
Distinguish g12b  ver b ver a.

Solution:
Distinguish g12b  ver b ver a.

Verify:
g12a vera verb

Change-Id: I9ae2890384d245933fcccce6d574366714599b25
Signed-off-by: Conglin Guo <conglin.guo@amlogic.com>
2019-07-23 17:52:49 +09:00
Conglin Guo
a82c7b53df media_modules: sync VLD_VIFIFO_WP PARSER_VIDEO_WP [1/1]
PD#SWPL-5841

Problem:
decoder VLD_VIFIFO_WP PARSER_VIDEO_WP no sync

Solution:
sync VLD_VIFIFO_WP PARSER_VIDEO_WP

Verify:
T962X2-X301

Change-Id: Id481d7757fb8f6ca4eacd9c504f7201f8eaf4995
Signed-off-by: Conglin Guo <conglin.guo@amlogic.com>
2019-07-23 17:52:49 +09:00
Nanxin.Qin
f5311f1968 decoder: bringup sm1. [1/2]
PD#SWPL-5261

Problem:
bringup sm1.

Solution:
1. add cpu chipid sm1.
2. modify the operation of the DOS power on/off
   to compatible with soc sm1.
3. ucode commit id:
   6e4fda861bcf23d1bb01f4a8c2fe516219e818c7

Verify:
AC200

Change-Id: I386a324bae2d78e4d66f9adeeb23f898b4cccc61
Signed-off-by: Nanxin.Qin <nanxin.qin@amlogic.com>
2019-07-23 17:52:49 +09:00
renjiang.han
7b0d11f009 path: add ppmgr [4/5]
PD#TV-2649

Problem:
There is no ppmgr in the path.

Solution:
add ppmgr in the path.

Verify:
on u212

Change-Id: If930b1ed868fe319b6baa8d285a605ef2c3ff075
Signed-off-by: renjiang.han <renjiang.han@amlogic.com>
2019-07-23 17:52:49 +09:00
kunpeng.tang
bb5df58fec H.265: fix vpu resume issue [1/1]
PD#SWPL-5533

Problem:
system crashed in vpu resume

Solution:
Only vpu open_ref_count more than zero,do resume

Verify:
g12b_w400

Change-Id: I9c2cd6242482293499ffddfea5309e5072014eba
Signed-off-by: kunpeng.tang <kunpeng.tang@amlogic.com>
2019-07-23 17:52:49 +09:00
Hui Zhang
d115248cd6 vmh264: fix video flicker issue when stream error [1/1]
PD#SWPL-5826

Problem:
DVB vmh264 playback will appears video flicker when back to
start playback, it's dpb innoemal when stream error. output
poc is not in sequence.

Solution:
flush dpb first when dpb has error. avoid dpb error data inside

Verify:
X301

Change-Id: Ib8a56c6d4b269a4961e500786939ebc5ea92ed45
Signed-off-by: Hui Zhang <hui.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
shihong.zheng
5b3ba51692 vc1: fix vc1 error reset crash. [1/1]
PD#SWPL-6287

Problem:
vc1 crash in error reset code.

Solution:
add a work queue schedule for error reset.

Verify:
x301

Change-Id: I61a91d3bb0a004d242b11dd6d50eea80822ef332
Signed-off-by: shihong.zheng <shihong.zheng@amlogic.com>
2019-07-23 17:52:49 +09:00
shihong.zheng
eedbd88bc0 mpeg4: unsupport resolution limit. [1/1]
PD#TV-3382

Problem:
mpeg4 unsupport resolution which bigger than 1080p.

Solution:
check and limit the resolution in probe.

Verify:
x301

Change-Id: I7b4ea8c707e4f488eb5f3a3886686de272894f37
Signed-off-by: shihong.zheng <shihong.zheng@amlogic.com>
2019-07-23 17:52:49 +09:00
rongrong zhou
160fc47de1 mpeg12: do not use p frame pts for some stream [1/1]
PD#SWPL-4402

Problem:
play not smooth

Solution:
do not use P frame pts

Verify:
Verify on X301

Change-Id: I70b91506d1ecdc9baf8c66a27b706416a769bac6
Signed-off-by: rongrong zhou <rongrong.zhou@amlogic.com>
2019-07-23 17:52:49 +09:00
shihong.zheng
46bee0efb6 amstream: adjust vdec connect timming. [1/1]
PD#SWPL-5888

Problem:
too many vdec_sync_input error print.

Solution:
1. remove vdec_connect befer other hw initial.
2. vdec_disconnect before parser wp/rp reset in tsdemux.

Verify:
x301

Change-Id: I7b8909496918a581d48a09deefad58cb1ce0e0f4
Signed-off-by: shihong.zheng <shihong.zheng@amlogic.com>
2019-07-23 17:52:49 +09:00
Hui Zhang
6bacff146c vmh264: fix frame mode playback not smooth issue [1/1]
PD#SWPL-5926

Problem:
In frame mode and frmbase_cont_bitlevel > 0 case. with some stream
driver will finish search start code until H264_SEARCH_BUFEMPTY. it
will cost 2+ vsync time. decoder will be blocked. actually, in frame mode
decoder don't need to wait for timeout. decoder should return with
H264_SEARCH_BUFEMPTY once bitlevel is very low.

Solution:
skip search start code vsync timeout wait in frame mode

ucode gerrit: 63873 63932

Verify:
X301

Change-Id: Id7a8f08aef41c16f00b56745ac8ffbced632e97e
Signed-off-by: Hui Zhang <hui.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
shihong.zheng
79ec5f6b31 vc1: oversize vc1 streams limit. [1/1]
PD#TV-3303

Problem:
played vc1 oversize stream cause sys no response.

Solution:
limit oversize vc1 stream.

Verify:
x301

Change-Id: Ifc75c1025b2bd81642b5659feffdd42111a286d8
Signed-off-by: shihong.zheng <shihong.zheng@amlogic.com>
2019-07-23 17:52:49 +09:00
peter wang
f60ee39d4c vmh264: fix alloc memory failed on cts accuracy test [1/1]
PD#SWPL-5281

Problem:
test cts android.media.cts.DecodeAccuracyTest have failed cases

Solution:
disable mmu when using ionvideo

Verify:
verified on local

Change-Id: I41a0ec051810369a69f2a7dce29fb6a913593445
Signed-off-by: peter wang <peter.wang@amlogic.com>
2019-07-23 17:52:49 +09:00
nengwen.chen
5641b6a214 hardware_dmx: add multi tuner attach [3/3]
PD#TV-1539

Problem:
add multi tuner attach.

Solution:
add multi tuner attach.

Verify:
verified by x301

Change-Id: I93cbd50d24b58f6c00e206d05965cf848c32e25a
Signed-off-by: nengwen.chen <nengwen.chen@amlogic.com>
2019-07-23 17:52:49 +09:00
Nanxin Qin
b4a6ee08b6 decode: fixd the bug of the vdec add frame. [1/2]
PD#SWPL-4597

Problem:
1. Probabilistic full-screen display mosaic after seek 8K H265
2. the wrong of the write point caused to flush cache area is error.

Solution:
corrected the error of flush cache range.

Verify:
X301

Change-Id: I946a488329d02bc21f40546ac7185818e3f2f3ff
Signed-off-by: Nanxin Qin <nanxin.qin@amlogic.com>
2019-07-23 17:52:49 +09:00
Tao Guo
6987242bf5 media_module: add atrace print [1/1]
PD#SWPL-4956

Problem:
Need atrace to debug multimedia issue

Solution:
Add atrace prints

Verify:
P212

Change-Id: Idd414734dd88223c3640878be26a82991f44a880
Signed-off-by: Tao Guo <tao.guo@amlogic.com>
2019-07-23 17:52:49 +09:00
Peng Yixin
e946533f48 media_module: add function to statistics video fps [1/1]
PD#SWPL-1885

Problem:
    We need a function to statistics video fps.

Solution:
    Add a function to statistics video fps

Verify:
    Verified U212

Change-Id: I626af8dec92df3c4bc68de33e6db387137137660
Signed-off-by: Peng Yixin <yixin.peng@amlogic.com>
2019-07-23 17:52:49 +09:00
shihong.zheng
516dd11a82 mmpeg2: fix mmpeg2 field & frame struct stream mosaic. [1/1]
PD#SWPL-5838

Problem:
mmpeg2 decoded pic display mosaic.

Solution:
ucode check and wait second field decode finish.
ucode gerrit_id: 63055

Verify:
x301

Change-Id: I2783b6de2f15598efc7be29d9b48951e00e89c57
Signed-off-by: shihong.zheng <shihong.zheng@amlogic.com>
2019-07-23 17:52:49 +09:00
Zhiqiang Han
c9d8cb176a dvb: dsc: added DES support [1/1]
PD#SWPL-5358

Problem:
no DES decrypt code for dvb descrambler

Solution:
added DES mode to dvb descrambler driver

Verify:
Local build on R314

Change-Id: Ie534e1f50428af1ea4eed1c720257dc93be9bd96
Signed-off-by: Zhiqiang Han <zhiqiang.han@amlogic.com>
2019-07-23 17:52:49 +09:00
Zhiqiang Han
a482792ed4 dvb: export bit32 of pts value for audio/video [1/2]
PD#SWPL-5160

Problem:
not standard pts value which should be a 33bit value

Solution:
added bit32 exporting

Verify:
Local build on R314

Change-Id: I0776251894b604601e64faf81e68b40255d812f4
Signed-off-by: Zhiqiang Han <zhiqiang.han@amlogic.com>
2019-07-23 17:52:49 +09:00
Rong Zhang
28b3cc4f2d media_module: vdec [1/1]
PD#OTT-1699

Problem:
	not support multi-vdec user data read

Solution:
	Add getting available user data vdec interface

Verify:
	Verified U212

Change-Id: I10d22cd545bcc1421dd291866c9f039e38f61e44
Signed-off-by: Rong Zhang <rong.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
Nanxin Qin
883ad964c0 decoder: optimized flushing cache for lowmem & highmem. [2/2]
PD#SWPL-3593

Problem:
the memory data might be discordant.

Solution:
modified the way of flush mem which from lowmem or highmem.

Verify:
x301

Change-Id: Id5c21322a6cd4bf11639bc4981b6c2995a42f2dd
Signed-off-by: Nanxin Qin <nanxin.qin@amlogic.com>
2019-07-23 17:52:49 +09:00
shihong.zheng
3a7f5b7dc2 decoder: fix decode error when multi frames in one packet. [1/1]
PD#SWPL-3593

Problem:
1. decoder error caused by multi frames in one packet.
2. constrain max_buf_num for decoder driver to avoid
   memory usage overflow

Solution:
1. add code the check empty after searching in hevc ucode,
2. constrain max_buf_num for decoder driver to avoid memory
   usage overflow.
ucode gerrit id: 61972

Verify:
x301.

Change-Id: I5c927cc91e5779e58087e06e19d29493f66245bf
Signed-off-by: shihong.zheng <shihong.zheng@amlogic.com>
2019-07-23 17:52:49 +09:00
Hui Zhang
1a243c9c81 vh264: wait for hw stop before reset when poor signal condition [1/1]
PD#SWPL-5014

Problem:
decoder crash or bus locked when h264 poor signal

Solution:
wait for hw stop nefore local reset

Verify:
X301

Change-Id: I7c4bfa29fdb52d8af83299cdd795f9394be7773e
Signed-off-by: Hui Zhang <hui.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
Conglin Guo
4cb94b48d9 media_modules: video decode err frame drop policy [1/1]
PD#OTT-1921

Problem:
Add control node, Distinguish between the current frame error and
the error caused by the reference frame.

Solution:
vmh264,h265 Multiple instances Add control node

Verify:
s905x2

Change-Id: Ie9c6264db018009082d12a08d75cce5b6e9aeff0
Signed-off-by: Conglin Guo <conglin.guo@amlogic.com>
2019-07-23 17:52:49 +09:00
Lifeng Cao
145062c623 media_module: frame rate policy back not check reset flag [1/1]
PD#SWPL-4908

Problem:
frame rate policy end hint check fr_hint_status and reset flag
When releasing hinted vdec the reset flag is true. Then reset flag
is false, hinted vdec has release at first time. In this case
vdec could not call end hint.

Solution:
hint check reset flag, end hint check fr_hint_status.

Verify:
X301

Change-Id: I0403182910eabba2620eae9b512533ca90c91dcf
Signed-off-by: Lifeng Cao <lifeng.cao@amlogic.com>
2019-07-23 17:52:49 +09:00
Hui Zhang
f4caaad71c vh264: enable buf2 sw reset for GXTVBB and later [1/1]
PD#TV-2461

Problem:
there is red and green clore line on screen sometimes with
h264 playback. never disapear untill codec reset

Solution:
enable buf2 sw reset for GXTVBB and later

ucode change id: I09cbe750a2bff2a2727e21879f7bee8b730113f7

Verify:
T962 or T968

Change-Id: I7af8ea54b9eb2c1c25d502e13cf69f5a76631bd7
Signed-off-by: Hui Zhang <hui.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
shihong.zheng
722f353061 media_module: optimize frame check [1/1]
PD#SWPL-4342

Problem:
crc32 code optimize.

Solution:
1. crash when check crc32 in single mode.
2. no clear frame_check when repeat play for debug mode;
3. block run ready when crc32 error for debug mode;
4. fix some bugs and optimize code.

Verify:
x301

Change-Id: Ie01860f70c74385540fa6022e99d2affcabfa19a
Signed-off-by: shihong.zheng <shihong.zheng@amlogic.com>
2019-07-23 17:52:49 +09:00
Rong Zhang
cba346317c media_module: avs [1/1]
PD#SWPL-3708

Problem:
	Playback avs video file by dtv alway report fatal
	error, but the source video file is no problem.

Solution:
	reset user data buffer address on local reset.
	ucode change id: I3878c48e85fab1d42e0b840063cd8133cc7e28fc
	ucode gerrit id: 59232

Verify:
	Verified R311

Change-Id: I195cd71b8ea57166f24a9830d2b2d244bfd9b714
Signed-off-by: Rong Zhang <rong.zhang@amlogic.com>
2019-07-23 17:52:49 +09:00
Rui Wang
7a0a488095 dvb: add interface of clearing audio and video pid [1/1]
PD#TV-2151

Problem:
no user mode clearing interface for audio and video pid

Solution:
add interface of clearing audio and video pid

Verify:
Verify android p at x301

Change-Id: Ie619e49bea9f3ef358dbf4154d9f1181bd99dc43
Signed-off-by: Rui Wang <rui.wang@amlogic.com>
2019-07-23 17:52:49 +09:00
Yinming Ding
edb1428506 device: amlogic: Add config for dtv tuner si2169 [3/3]
PD#SWPL-2763

Problem:
Add config for dtv tuner si2169

Solution:
Add config for dtv tuner si2169

Verify:
Verified by R314

Change-Id: Ib196414949456281c1c1b87140f432f6a56b913b
Signed-off-by: Yinming Ding <yinming.ding@amlogic.com>
2019-07-23 17:52:49 +09:00
Chuanzhi Wang
55a030388d dvb_ci: Fix compilation errors for Linux. [1\1]
PD#SWPL-5118

Problem:
Compilation errors for Linux

Solution:
Fix compilation errors for Linux.

Verify:
verified by p212

Change-Id: If33cea2af81ee017d8c54c550e7d56fb5fc07a46
2019-07-23 17:52:49 +09:00