summaryrefslogtreecommitdiff
authorrongrong zhou <rongrong.zhou@amlogic.com>2020-04-02 07:53:53 (GMT)
committer Zhi Zhou <zhi.zhou@amlogic.com>2020-04-03 05:50:58 (GMT)
commit6135de267f282d959db4638242014acc73b30deb (patch)
treecfa49a64c638133efd053930d4465acd4b40e144
parentddcf7d63306f7f146170efc1cc2988d401a9bba3 (diff)
downloadmedia_modules-6135de267f282d959db4638242014acc73b30deb.zip
media_modules-6135de267f282d959db4638242014acc73b30deb.tar.gz
media_modules-6135de267f282d959db4638242014acc73b30deb.tar.bz2
hwdmux: add parser mediaconfig [2/2]
PD#SWPL-22965 Problem: can not get stb pts Solution: add parser mediaconfig to get pts Verify: AC214 Signed-off-by: rongrong zhou <rongrong.zhou@amlogic.com> Change-Id: I1f0cccc63ecc45cd470de2145d810a601c853a8e
Diffstat
-rw-r--r--drivers/stream_input/parser/hw_demux/aml_dmx.c15
-rw-r--r--drivers/stream_input/parser/hw_demux/aml_dvb.c1
-rw-r--r--drivers/stream_input/parser/hw_demux/aml_dvb.h1
3 files changed, 17 insertions, 0 deletions
diff --git a/drivers/stream_input/parser/hw_demux/aml_dmx.c b/drivers/stream_input/parser/hw_demux/aml_dmx.c
index 9de9d2a..4d08af1 100644
--- a/drivers/stream_input/parser/hw_demux/aml_dmx.c
+++ b/drivers/stream_input/parser/hw_demux/aml_dmx.c
@@ -44,6 +44,7 @@
#include <linux/pinctrl/pinmux.h>
#include <linux/vmalloc.h>
#include <linux/amlogic/media/codec_mm/codec_mm.h>
+#include <linux/amlogic/media/codec_mm/configs.h>
#include "../streambuf.h"
#include "c_stb_define.h"
#include "c_stb_regs_define.h"
@@ -5944,3 +5945,17 @@ int aml_unregist_dmx_class(void)
return 0;
}
+static struct mconfig parser_configs[] = {
+ MC_PU32("video_pts", &video_pts),
+ MC_PU32("audio_pts", &audio_pts),
+ MC_PU32("video_pts_bit32", &video_pts_bit32),
+ MC_PU32("audio_pts_bit32", &audio_pts_bit32),
+ MC_PU32("first_video_pts", &first_video_pts),
+ MC_PU32("first_audio_pts", &first_audio_pts),
+};
+
+void aml_register_parser_mconfig(void)
+{
+ REG_PATH_CONFIGS("media.parser", parser_configs);
+}
+
diff --git a/drivers/stream_input/parser/hw_demux/aml_dvb.c b/drivers/stream_input/parser/hw_demux/aml_dvb.c
index 2c8c09a..989f5da 100644
--- a/drivers/stream_input/parser/hw_demux/aml_dvb.c
+++ b/drivers/stream_input/parser/hw_demux/aml_dvb.c
@@ -2160,6 +2160,7 @@ static int aml_dvb_probe(struct platform_device *pdev)
goto error;
}
+ aml_register_parser_mconfig();
#ifdef ENABLE_DEMUX_DRIVER
tsdemux_set_ops(&aml_tsdemux_ops);
#else
diff --git a/drivers/stream_input/parser/hw_demux/aml_dvb.h b/drivers/stream_input/parser/hw_demux/aml_dvb.h
index f6ae58e..f936f15 100644
--- a/drivers/stream_input/parser/hw_demux/aml_dvb.h
+++ b/drivers/stream_input/parser/hw_demux/aml_dvb.h
@@ -399,6 +399,7 @@ extern struct aml_dvb *aml_get_dvb_device(void);
extern int aml_regist_dmx_class(void);
extern int aml_unregist_dmx_class(void);
+extern void aml_register_parser_mconfig(void);
struct devio_aml_platform_data {
int (*io_setup)(void *);