From cd26492eb3fd989524a56c1eb203e4708f593ee0 Mon Sep 17 00:00:00 2001 From: xuhua zhang Date: Thu, 7 Jun 2018 14:15:16 +0800 Subject: [PATCH] vdin: add reset_tvin_smr. PD#167053: vdin: add reset_tvin_smr. when cutting table, need reset tvin smr. Change-Id: Ibe95526b696f73c0f17ff456b17cfb11afafac1b Signed-off-by: xuhua zhang --- drivers/amlogic/media/vin/tvin/vdin/vdin_drv.c | 1 + drivers/amlogic/media/vin/tvin/vdin/vdin_sm.c | 5 +++++ drivers/amlogic/media/vin/tvin/vdin/vdin_sm.h | 1 + 3 files changed, 7 insertions(+) diff --git a/drivers/amlogic/media/vin/tvin/vdin/vdin_drv.c b/drivers/amlogic/media/vin/tvin/vdin/vdin_drv.c index e3057ec7b081..76814b734396 100644 --- a/drivers/amlogic/media/vin/tvin/vdin/vdin_drv.c +++ b/drivers/amlogic/media/vin/tvin/vdin/vdin_drv.c @@ -1969,6 +1969,7 @@ static long vdin_ioctl(struct file *file, unsigned int cmd, unsigned long arg) pr_info("TVIN_IOC_STOP_DEC(%d) port %s, decode stop ok\n\n", parm->index, tvin_port_str(parm->port)); mutex_unlock(&devp->fe_lock); + reset_tvin_smr(parm->index); break; } case TVIN_IOC_VF_REG: diff --git a/drivers/amlogic/media/vin/tvin/vdin/vdin_sm.c b/drivers/amlogic/media/vin/tvin/vdin/vdin_sm.c index 0879fb406906..4e5a98c39513 100644 --- a/drivers/amlogic/media/vin/tvin/vdin/vdin_sm.c +++ b/drivers/amlogic/media/vin/tvin/vdin/vdin_sm.c @@ -287,6 +287,11 @@ static void hdmirx_dv_check(struct vdin_dev_s *devp, } } +void reset_tvin_smr(unsigned int index) +{ + sm_dev[index].sig_status = TVIN_SIG_STATUS_NULL; +} + /* * tvin state machine routine * diff --git a/drivers/amlogic/media/vin/tvin/vdin/vdin_sm.h b/drivers/amlogic/media/vin/tvin/vdin/vdin_sm.h index 5b289bfdeb3d..b3009111cc5b 100644 --- a/drivers/amlogic/media/vin/tvin/vdin/vdin_sm.h +++ b/drivers/amlogic/media/vin/tvin/vdin/vdin_sm.h @@ -51,6 +51,7 @@ struct tvin_sm_s { }; void tvin_smr(struct vdin_dev_s *pdev); void tvin_smr_init(int index); +void reset_tvin_smr(unsigned int index); enum tvin_sm_status_e tvin_get_sm_status(int index);