author | rongrong 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) |
commit | 6135de267f282d959db4638242014acc73b30deb (patch) | |
tree | cfa49a64c638133efd053930d4465acd4b40e144 | |
parent | ddcf7d63306f7f146170efc1cc2988d401a9bba3 (diff) | |
download | media_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
-rw-r--r-- | drivers/stream_input/parser/hw_demux/aml_dmx.c | 15 | ||||
-rw-r--r-- | drivers/stream_input/parser/hw_demux/aml_dvb.c | 1 | ||||
-rw-r--r-- | drivers/stream_input/parser/hw_demux/aml_dvb.h | 1 |
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 *); |