mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-08 11:50:43 +09:00
cec: fix tv cec wake up select source issue [6/6]
PD#SWPL-13135 Problem: When tv is waked up by one playback, it may wake up the other playback ans show the source. Solution: LiveTv should take care of the situation and make the right choice with information provided by cec hal service. Verify: verify it on Marconi Change-Id: Ic27cdf77f0796a659400f90f60190354235777f3 Signed-off-by: xian <an.xi@amlogic.com>
This commit is contained in:
@@ -3290,6 +3290,7 @@ static long hdmitx_cec_ioctl(struct file *f,
|
||||
return -EINVAL;
|
||||
}
|
||||
break;
|
||||
|
||||
case CEC_IOC_SET_FREEZE_MODE:
|
||||
/* system enter power down freeze mode
|
||||
* need save current device type and logical addr
|
||||
@@ -3297,6 +3298,16 @@ static long hdmitx_cec_ioctl(struct file *f,
|
||||
cec_save_pre_setting();
|
||||
CEC_ERR("need enter freeze mode\n");
|
||||
break;
|
||||
|
||||
case CEC_IOC_GET_BOOT_PORT:
|
||||
tmp = cec_dev->wakup_data.wk_port_id;
|
||||
CEC_ERR("Boot port:%#x\n", (unsigned int)tmp);
|
||||
if (copy_to_user(argp, &tmp, _IOC_SIZE(cmd))) {
|
||||
mutex_unlock(&cec_dev->cec_ioctl_mutex);
|
||||
return -EINVAL;
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
CEC_ERR("error ioctrl\n");
|
||||
break;
|
||||
@@ -3350,6 +3361,8 @@ static void aocec_early_suspend(struct early_suspend *h)
|
||||
{
|
||||
cec_dev->cec_suspend = CEC_PW_STANDBY;
|
||||
CEC_ERR("%s, suspend sts:%d\n", __func__, cec_dev->cec_suspend);
|
||||
/* reset wakeup reason for considering light sleep situation*/
|
||||
cec_dev->wakeup_reason = 0;
|
||||
}
|
||||
|
||||
static void aocec_late_resume(struct early_suspend *h)
|
||||
|
||||
@@ -101,7 +101,7 @@ enum _cec_log_dev_addr_e {
|
||||
#define CEC_IOC_GET_BOOT_ADDR _IOW(CEC_IOC_MAGIC, 0x10, uint32_t)
|
||||
#define CEC_IOC_GET_BOOT_REASON _IOW(CEC_IOC_MAGIC, 0x11, uint32_t)
|
||||
#define CEC_IOC_SET_FREEZE_MODE _IOW(CEC_IOC_MAGIC, 0x12, uint32_t)
|
||||
|
||||
#define CEC_IOC_GET_BOOT_PORT _IOW(CEC_IOC_MAGIC, 0x13, uint32_t)
|
||||
|
||||
#define CEC_FAIL_NONE 0
|
||||
#define CEC_FAIL_NACK 1
|
||||
|
||||
Reference in New Issue
Block a user