SuperIC社区_
标题: v56怎么配置HDMI输入有信号唤醒休眠 [打印本页]
作者: ivan.wan    时间: 2019-10-23 16:06
标题: v56怎么配置HDMI输入有信号唤醒休眠
请问想要HDMI输入有信号唤醒休眠应该实现,大家有做过吗
作者: ivan.wan    时间: 2019-10-23 16:31
已经摸索出来了,如果是要HDMI2唤醒,那在sboot里面就不能配置PM_WAKEUP_BY_DVI作为唤醒事件,因为在判断里面有个互斥判断,如下
- void MDrv_DVI_ManualSwitchPort(void)
 
- {
 
-     //#define DELAY_TIME_MS   500 //>=500 :OK, <500:with risk of failure
 
-     if(wPM_WakeUpDevice & PM_WAKEUP_BY_DVI)
 
-     {
 
-         //switch to port 0
 
-         if( 25 == u8HDMIWakeUpDelayCount )
 
-         {
 
-             MDrv_WriteRegBit(REG_PM_GCR_SWCK, 0, BIT3);
 
-         }
 
-         if( u8HDMIWakeUpDelayCount > 0 )
 
-         {
 
-             u8HDMIWakeUpDelayCount--;
 
-             msDelayTime(20);
 
-         }
 
-         if(0 == u8HDMIWakeUpDelayCount )
 
-         {
 
-             u8HDMIWakeUpDelayCount = 25;
 
-             msDelayTime(20);
 
-             MDrv_WriteRegBit(REG_PM_GCR_SWCK, 1, BIT3);
 
-         }
 
-     }
 
-     else if(wPM_WakeUpDevice & PM_WAKEUP_BY_DVI1)
 
-     {
 
-         //switch to port 1
 
-         if( 25 == u8HDMIWakeUpDelayCount )
 
-         {
 
-             MDrv_WriteRegBit(REG_PM_GCR_SWCK, 0, BIT4);
 
-         }
 
-         if( u8HDMIWakeUpDelayCount > 0 )
 
-         {
 
-             u8HDMIWakeUpDelayCount--;
 
-             msDelayTime(20);
 
-         }
 
-         if( 0 == u8HDMIWakeUpDelayCount )
 
-         {
 
-             u8HDMIWakeUpDelayCount = 25;
 
-             msDelayTime(20);
 
-             MDrv_WriteRegBit(REG_PM_GCR_SWCK, 1, BIT4);
 
-         }
 
-     }
 
-     else if(wPM_WakeUpDevice & PM_WAKEUP_BY_DVI2)
 
-     {
 
-         ;
 
-     }
 
-     else if(wPM_WakeUpDevice & PM_WAKEUP_BY_DVI3)
 
-     {
 
-         //switch to port 2
 
-         if( 25 == u8HDMIWakeUpDelayCount )
 
-         {
 
-             MDrv_WriteRegBit(REG_PM_GCR_SWCK, 0, BIT5);
 
-         }
 
-         if( u8HDMIWakeUpDelayCount > 0 )
 
-         {
 
-             u8HDMIWakeUpDelayCount--;
 
-             msDelayTime(20);
 
-         }
 
-         if( 0 == u8HDMIWakeUpDelayCount )
 
-         {
 
-             u8HDMIWakeUpDelayCount = 25;
 
-             msDelayTime(20);
 
-             MDrv_WriteRegBit(REG_PM_GCR_SWCK, 1, BIT5);
 
-         }
 
-     }
 
 
- }
不知道理解的对不对
| 欢迎光临 SuperIC社区_ (/) | Powered by Discuz! X3.3 |