亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? pwrbtn_pcf.c

?? windows ce 50 drive program
?? C
?? 第 1 頁 / 共 2 頁
字號:
    RETAILMSG(1,(TEXT("-PWR_Deinit \r\n")));

    return ERROR_SUCCESS;
}


DWORD 
HW_Open(
    PPWR_CONTEXT pPWR
    )
{
    return ERROR_SUCCESS;
}


DWORD 
HW_Close(
    PPWR_CONTEXT pPWR
    )
{
    return ERROR_SUCCESS;
}


BOOL
HW_PowerUp(
    PPWR_CONTEXT pPWR
   )
{
    RETAILMSG(1, (TEXT("PCF: HW_PowerUp \r\n")));
    pPWR->State = RESUME;
    SetInterruptEvent(SYSINTR_POWER);
    return TRUE;
}


BOOL
HW_PowerDown(
    PPWR_CONTEXT pPWR
   )
{
    pPWR->State = SUSPEND;
    return TRUE;
}


BOOL
HW_PowerCapabilities(
    PPWR_CONTEXT pPWR,
    PPOWER_CAPABILITIES ppc
    )
{
    return TRUE;
}


BOOL
HW_PowerSet(
    PPWR_CONTEXT pPWR,
    PCEDEVICE_POWER_STATE pDx   // IN, OUT
   )
{   
    CEDEVICE_POWER_STATE NewDx = *pDx;

    if ( VALID_DX(NewDx) ) 
    {
        // We only support D0, so do nothing.
        // Just return current state.
        pPWR->Dx = *pDx = D0;
        RETAILMSG(1, (TEXT("PCF: IOCTL_POWER_SET: D%u => D%u \r\n"), NewDx, pPWR->Dx));
        return TRUE;
    }

    return FALSE;
}


BOOL
HW_PowerGet(
    PPWR_CONTEXT pPWR,
    PCEDEVICE_POWER_STATE pDx
   )
{   
    // return our Current Dx value
    *pDx = pPWR->Dx;
    RETAILMSG(1, (TEXT("PCF: IOCTL_POWER_GET: D%u \r\n"), pPWR->Dx));

    return TRUE;
}


static DWORD 
PWR_IST(
    PPWR_CONTEXT pPWR
    )
{
	int CurrStatus = RUN;
    DWORD we;
	WCHAR  state[1024] = {0};
	LPWSTR pState = &state[0];
	DWORD dwBufChars = (sizeof(state) / sizeof(state[0]));
	DWORD  dwStateFlags = 0;
	DWORD dwErr;
    
    if (!pPWR)
        return ERROR_INVALID_PARAMETER;

    while (1) {
        __try {
            we = WaitForSingleObject(pPWR->ISTEvent, INFINITE);
			RETAILMSG(1,(TEXT("\r\nPWR_IST: pPWR->State = 0x%x \r\n"), pPWR->State));



			dwErr = GetSystemPowerState(pState, dwBufChars, &dwStateFlags);
			if (ERROR_SUCCESS != dwErr) {
				RETAILMSG(1, (TEXT("PMGET!GetSystemPowerState:ERROR:%d\n"), dwErr));
			} else {
				RETAILMSG(1, (TEXT("PMGET! System Power state is '%s', flags 0x%08x\n"), state, dwStateFlags));
				switch (POWER_STATE(dwStateFlags)) {
				case POWER_STATE_ON:
					RETAILMSG(1, (TEXT("PMGET!\tPOWER_STATE_ON\n")));
					break;
				case POWER_STATE_OFF:
					RETAILMSG(1, (TEXT("PMGET!\tPOWER_STATE_OFF\n")));
					break;
				case POWER_STATE_CRITICAL:
					RETAILMSG(1, (TEXT("PMGET!\tPOWER_STATE_CRITICAL\n")));
					break;
				case POWER_STATE_BOOT:
					RETAILMSG(1, (TEXT("PMGET!\tPOWER_STATE_BOOT\n")));
					break;
				case POWER_STATE_IDLE:
					RETAILMSG(1, (TEXT("PMGET!\tPOWER_STATE_IDLE\n")));
					break;
				case POWER_STATE_SUSPEND:
					RETAILMSG(1, (TEXT("PMGET!\tPOWER_STATE_SUSPEND\n")));
					break;
				case POWER_STATE_RESET:
					RETAILMSG(1, (TEXT("PMGET!\tPOWER_STATE_RESET\n")));
					break;
				case 0:
					break;
				default:
					RETAILMSG(1,(TEXT("PMGET!\tUnknown Power State Flags:0x%x\n"),dwStateFlags));
					ASSERT(0);
					break;
				}
			}

            
			switch (pPWR->State) {
                
                case RUN:
                    RETAILMSG(1, (TEXT("PWR_IST: RUN\r\n")));
					if (CurrStatus == SUSPEND)
					{
	                    RETAILMSG(1, (TEXT("CurrStatus == SUSPEND\r\n")));
						pPWR->State = RUN;
						CurrStatus = RUN;
						// clear any potential pending ADC interrupt
						InterruptDone(SYSINTR_POWER);
						SetSystemPowerState( NULL, POWER_STATE_ON, POWER_FORCE );
						continue;
					}
					else if (CurrStatus == RESUME)
					{
						RETAILMSG(1, (TEXT("CurrStatus == RESUME\r\n")));
						if ( wcscmp(state,TEXT("unattended")) == 0 )
						{
		                    RETAILMSG(1, (TEXT("Unattended Power Off Mode\r\n")));
							pPWR->State = RUN;
							CurrStatus = SUSPEND;
							continue;
						}
//						else if ( wcscmp(state,TEXT("resuming")) == 0 )
//						{
//		                    RETAILMSG(1, (TEXT("Still resuming...\r\n")));
//							Sleep(1000);
//							SetEvent(pPWR->ISTEvent);
//							continue;
//						}
						else
						{
		                    RETAILMSG(1, (TEXT("Power On\r\n")));
							pPWR->State = RUN;
							CurrStatus = RUN;
							// clear any potential pending ADC interrupt
							InterruptDone(SYSINTR_POWER);
							SetSystemPowerState( NULL, POWER_STATE_ON, POWER_FORCE );
							continue;
						}
					}
                    break;

                case INITIALIZE:
                    // Keep from reading our clear on read INTx registers
                    // during init.
                    RETAILMSG(1, (TEXT("PWR_IST: INITIALIZE\r\n")));
                    Sleep(10);
                    continue;
                    break;

                case SUSPEND:
                    RETAILMSG(1, (TEXT("PWR_IST: SUSPEND\r\n")));
//                    continue;
                    break;
                    
                case RESUME:
                case ADC_ERROR:
                    RETAILMSG(1,(TEXT("PWR_IST: %s \r\n"), pPWR->State == RESUME ? L"RESUME" : L"ADC_ERROR" ));
                    pPWR->State = RUN;
					CurrStatus = RESUME;
                    // clear any potential pending ADC interrupt
					InterruptDone(SYSINTR_POWER);
					Sleep(200);
					SetEvent(pPWR->ISTEvent);
//	                SetSystemPowerState( NULL, POWER_STATE_ON, POWER_FORCE );
                    continue;
                    break;
                    
                case UNINITIALIZED:
                    RETAILMSG(1,(TEXT("PWR_IST: ExitThread \r\n")));
                    ExitThread(ERROR_SUCCESS);
                    return ERROR_SUCCESS;

                default:
                    RETAILMSG(1,(TEXT("PWR_IST: unknown state: %u\r\n"), pPWR->State));
                    TEST_TRAP;
                    continue;
                    break;
            }

            //
            // get status
            //
//			EnterCriticalSection(&pPWR->RegCS);
//
//			if ( !pPWR->ResetRegReady ) {
//			} else {
//				// get & restore the cleared registers
//				pPWR->ResetRegReady = FALSE;
//			}

            LeaveCriticalSection(&pPWR->RegCS);
            
            // clear the interrupt before power off
            InterruptDone(SYSINTR_POWER);
			CurrStatus = SUSPEND;
            SetSystemPowerState( NULL, POWER_STATE_SUSPEND, POWER_FORCE );

        } _except(EXCEPTION_EXECUTE_HANDLER) {
            
            RETAILMSG(1,(TEXT("!!! PWR_IST EXCEPTION: 0x%X !!!\r\n"), GetExceptionCode() ));

        }
	}
}


/* ++

 Get/Set the PCF RTC.
 
 One neat PCF feature is the stand alone RTC.
 You could power the ARM core to full off and maintin the RTC & ALARM on the PCF.
 This is not a required feature for PPC2002 release, but OEMs are 
 free to add this as desired. You should sync the ARM & PCF RTC
 and update as appropriate. If you choose to implement this it would
 be good to power as much of the PCF off as possible to maintin it's RTC
 for much longer time.

-- */
BOOL 
PWR_GetRealTime(
    PPWR_CONTEXT pPWR,
    LPSYSTEMTIME lpst
    )
{
    return TRUE;
}


BOOL
PWR_SetRealTime(
    PPWR_CONTEXT pPWR,
    LPSYSTEMTIME lpst
    ) 
{
    return TRUE;
}


BOOL
HW_IOControl(
    PPWR_CONTEXT pPWR,
    DWORD dwCode,
    PBYTE pBufIn,
    DWORD dwLenIn,
    PBYTE pBufOut,
    DWORD dwLenOut,
    PDWORD pdwActualOut
   )
{
	return FALSE;
}


?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产三级精品在线| 欧美一区二区在线观看| 欧美va亚洲va香蕉在线| 亚洲日本va午夜在线电影| 久久精品国产秦先生| 欧美色图第一页| 国产人久久人人人人爽| 麻豆精品一区二区av白丝在线| 色哟哟一区二区在线观看| 欧美精品一区男女天堂| 天天操天天干天天综合网| yourporn久久国产精品| 精品va天堂亚洲国产| 五月综合激情日本mⅴ| 99re视频精品| wwwwxxxxx欧美| 久久精工是国产品牌吗| 欧美日韩一级片在线观看| 中文文精品字幕一区二区| 麻豆精品久久精品色综合| 欧美性猛片aaaaaaa做受| 专区另类欧美日韩| 成人黄页毛片网站| 中文字幕成人av| 狠狠色丁香婷婷综合| 日韩午夜激情av| 香蕉久久夜色精品国产使用方法| 91捆绑美女网站| 国产精品免费视频观看| 国产成人亚洲精品狼色在线 | 韩国av一区二区三区四区| 欧美亚洲日本一区| 国产精品天干天干在线综合| 激情五月婷婷综合| 欧美成人vr18sexvr| 日本美女视频一区二区| 欧美日韩国产另类一区| 亚洲综合激情网| 欧美在线观看视频在线| 亚洲免费资源在线播放| 99久久久久免费精品国产 | 日韩三级免费观看| 久久国产精品无码网站| 欧美va亚洲va| 国产精品一级二级三级| 国产欧美日韩精品在线| 成人污视频在线观看| 国产日产欧美一区二区视频| 国产成人一级电影| 国产精品美女一区二区| bt欧美亚洲午夜电影天堂| 中文字幕中文字幕在线一区| 不卡一区在线观看| 国产精品二区一区二区aⅴ污介绍| 成人免费va视频| 亚洲欧美一区二区三区孕妇| 91视频一区二区三区| 一级特黄大欧美久久久| 欧美日韩在线精品一区二区三区激情| 一区二区三区**美女毛片| 欧美亚洲综合网| 天堂精品中文字幕在线| 日韩一区二区三区免费看| 麻豆视频观看网址久久| 久久久www成人免费毛片麻豆| 粉嫩嫩av羞羞动漫久久久| 亚洲色图视频网| 欧美手机在线视频| 免费观看91视频大全| 26uuu久久天堂性欧美| 成人一区二区三区视频在线观看 | 久久久久久久久久久久久久久99| 国产成人精品综合在线观看| 国产精品国产成人国产三级| 欧美综合久久久| 久久国产尿小便嘘嘘| 亚洲国产精品成人久久综合一区| 91在线一区二区三区| 亚洲一区二区三区四区五区黄| 91精品国产一区二区三区香蕉 | 一二三四区精品视频| 欧美天堂一区二区三区| 久久精品免费看| 成人免费在线播放视频| 欧美色网站导航| 国产美女在线观看一区| 亚洲欧美一区二区三区极速播放| 3d成人h动漫网站入口| 国产精品99久久不卡二区| 亚洲欧美日韩国产一区二区三区| 欧美日韩精品系列| 国产成人免费视频精品含羞草妖精| 亚洲欧美日韩精品久久久久| 日韩一级欧美一级| 成人精品小蝌蚪| 免费欧美在线视频| 亚洲天堂福利av| 精品国产免费视频| 在线观看亚洲专区| 韩国欧美国产一区| 一二三四区精品视频| 久久精品欧美一区二区三区不卡| 欧美性猛交xxxx黑人交| 国产成都精品91一区二区三| 丝袜亚洲另类欧美综合| 国产精品不卡在线观看| 精品美女一区二区三区| 色8久久人人97超碰香蕉987| 韩国精品久久久| 午夜精品久久久久影视| 国产精品麻豆99久久久久久| 欧美一区二区三区在线观看视频| 91视频在线看| 成人小视频在线| 精品在线你懂的| 亚洲国产一区二区视频| 国产精品私人影院| 精品国产乱码久久久久久图片| 欧美影院一区二区| 99国产精品99久久久久久| 国产一区二区精品久久99| 亚洲高清免费观看| 亚洲丝袜美腿综合| 国产亚洲精品精华液| 日韩精品一区二区三区中文精品| 欧美日韩一区在线观看| 99精品视频一区二区| 国产激情一区二区三区| 另类中文字幕网| 日韩成人午夜精品| 亚洲国产wwwccc36天堂| 亚洲乱码中文字幕| 中文字幕亚洲一区二区va在线| xvideos.蜜桃一区二区| 91精品国产欧美一区二区18| 欧美性大战久久久久久久蜜臀| 国产一区二区剧情av在线| 日本在线观看不卡视频| 亚洲国产日日夜夜| 亚洲精品中文字幕在线观看| 国产精品你懂的| 中文字幕欧美激情一区| 久久一留热品黄| 日韩亚洲欧美在线| 欧美一区二区视频在线观看| 欧美日韩成人一区二区| 在线观看一区二区视频| 色94色欧美sute亚洲线路二 | 国产精品456| 国内精品久久久久影院一蜜桃| 老司机免费视频一区二区| 美腿丝袜亚洲综合| 免费高清不卡av| 免费观看91视频大全| 久久精品999| 韩国在线一区二区| 国产一区二区三区最好精华液 | 亚洲黄色小视频| 亚洲人123区| 亚洲另类在线制服丝袜| 亚洲人成人一区二区在线观看| 亚洲视频电影在线| 一区二区三区视频在线观看| 伊人婷婷欧美激情| 亚洲综合偷拍欧美一区色| 亚洲一区在线观看免费| 亚洲高清免费视频| 三级久久三级久久久| 欧美aaa在线| 久久国产精品区| 国精品**一区二区三区在线蜜桃| 国内精品伊人久久久久av一坑 | 青青青爽久久午夜综合久久午夜| 日韩有码一区二区三区| 九色综合国产一区二区三区| 狠狠色丁香久久婷婷综合丁香| 国产成人av影院| 91片在线免费观看| 欧美色视频一区| 日韩午夜激情av| 久久精品亚洲国产奇米99| 中文字幕在线一区| 亚洲欧美在线视频观看| 亚洲男人天堂一区| 亚洲h在线观看| 蜜臀av性久久久久蜜臀aⅴ四虎 | 日日夜夜精品视频天天综合网| 日韩在线卡一卡二| 九九精品视频在线看| 粉嫩aⅴ一区二区三区四区五区| 91在线视频网址| 欧美日本精品一区二区三区| 日韩精品一区在线| 中文字幕一区二区三区四区 | 中文字幕人成不卡一区| 亚洲精品成人少妇| 久久草av在线| 99久久免费精品| 日韩一区二区中文字幕| 国产精品久久久久影院亚瑟 |