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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? power_test.c

?? 三星 s3c6400測試代碼
?? C
?? 第 1 頁 / 共 5 頁
字號:

		printf("System stablilization counter register!\n");
		SYSC_OSCSTAB(1);
		SYSC_PWRSTAB(1);

   	  	/////////////////////////////////
   	    	// 1) Check&Enable HCLK_GATE[22,21,0]
      		// 2) Check BLK_PWR_STAT 
	       // 3) Check&Clear WAKEUP_STAT
	       //////////////////////////////
		CheckHCLK_ForPM();
	       CheckBLKPWR_ForPM();
		CheckWAKESTAT_ForPM(1);

		
		printf("Choose Wake-up Event :  0: Warm Reset,  1: All Sleep Wake-up Source\n");
		uINTSEL = GetIntNum();

		//Outp32SYSC(0x804, 0x80); 	// for test
		SYSC_SetBATF(eFLT_SLEEP, uINTSEL);
		//Outp32SYSC(0x804, 0x18);

		printf("OTHERs: 0x%x\n", Inp32SYSC(0x900));
		printf("PWR_CFG: 0x%x\n", Inp32SYSC(0x804));

		
		while(!UART_GetKey())
		{

		DisplayLED(0xC);
		Delay(3000);
		DisplayLED(0xF);
		Delay(3000);

		}

		printf("CPU doesn't go to Sleep Mode\n");

	}

	

}




//////////
// Function Name : IDLET_CFG 
// Function Description : Idle Mode Test - Validation Test ( 1 Int. Source Enable, Not adapted DVS Scheme)
// Input : 	None
// Output :	None 
// Version : v0.1

void IDLET_CFG (void)
{
	
	u32 uTemp, uRegValue;

	printf("[IDLE Mode Baisc Test]\n");
	printf("After 10 seconds, S3C6400 will wake up by RTC alarm interrupt.\n");
	printf("S3C6400 will also wake up by EINT9, EINT10, EINT11 or BATT_FLT.\n");
	
	uTemp=0;
	
	printf("Choose Battery Fault Event :  0: Interrupt,  1: ESLEEP\n");
	uTemp = GetIntNum();

	switch(uTemp)
	{
		case 0: 
			SetBatteryFaultEvent(eFLT_INT);
			break;
		case 1:
			InitData_SDRAM(_DRAM_BaseAddress+0x1000000, 0x10000);
			SetBatteryFaultEvent(eFLT_SLEEP);				// IDLE 檔吝俊 甸絹啊瘤 臼綽促...:
		       break;
	}


	// Wake-up Source Setting
	printf("Wake-up sourceis set! \n");
	SetAlarmWakeup();
	SetEintWakeup();
	SetADCTSWakeup();
	//SetAlarmTick();
	
	// For Test(Temp) - Inform Register
	Outp32Inform(0,0xABCD6400);
	
	// Enter Idle Mode
	// CFG_STANDBYWFI = ignore  or  IDLE
	printf("CPU will goes to IDLE Mode \n");
	//SYSC_SetCFGWFI(eIDLE,1);		// IDLE,  Clock Enable (O.K)
	//SYSC_SetCFGWFI(eIGNORE,1);	// IGNORE,  Clock Enable(O.K)
	SYSC_SetCFGWFI(eIDLE,0);		// IDLE,  Clock Disable
	//Outp32SYSC(0x800, 0x1);			// Fail

       //Test case : bus power down
       SYSC_BLKPwrOffAll();

       //Added case : Clock Off Case
        Outp32SYSC(0x30, 0xFDDFFFFE);	//IROM, MEM0, MFC

#if 0
	//for test => hidden bit test PWR_CFG[1]
	//Outp32SYSC(0x804, 0xB6);			// reset 凳 ??
	// Outp32SYSC(0x804,0x17);			// 館覽 絕瀾. 
	//Outp32SYSC(0x804, 0xB0);			// 館覽 絕瀾. 
	//Outp32SYSC(0x804, 0xB4);			// 館覽 絕瀾.
	//Outp32SYSC(0x804, 0xB2);				// Reset 凳 
	//Outp32SYSC(0x804, 0x8F);
	//Outp32SYSC(0x804, 0x82);
	//printf("PWR_CFG: 0x%x\n", Inp32SYSC(0x804));
	//while(!UART_GetKey());
#endif

	// Test Case - Bus Transfer Test 	
	DMAC_InitCh(DMA0, DMA_ALL, &oDmac0_T);
	INTC_SetVectAddr(NUM_DMA0,  Dma0Done_T);
	//INTC_Enable(NUM_DMA0);
  	DMACH_Setup(DMA_A, 0x0, 0x52000000, 0, 0x53000000, 0, BYTE, 0x100000, DEMAND, MEM, MEM, SINGLE, &oDmac0_T);
        // Enable DMA
	DMACH_Start(&oDmac0_T);
	
	// Enter Idle Mode
	MMU_WaitForInterrupt();


	printf("Return to Normal Mode \n\n");
	
	printf("rWAKEUP_STAT=0x%x\n", Inp32SYSC(0x908));
	uRegValue=Inp32SYSC(0x908);
	Outp32SYSC(0x908,uRegValue);
	printf("rWAKEUP_STAT=0x%x\n Wake-up Status Clear\n", Inp32SYSC(0x908));
       SYSC_BLKPwrONAll();
       Outp32SYSC(0x30, 0xFFFFFFFF);	//IROM, MEM0, MFC
	SYSC_RdBLKPWR();

	// Int. Disable
	INTC_Disable(NUM_EINT1);
	INTC_Disable(NUM_RTC_ALARM);
	INTC_Disable(NUM_BATF);
	INTC_Disable(NUM_RTC_TIC);

}

//////////
// Function Name : STOPT_CFG  -- ing..
// Function Description : Stop Mode Test - Baisc Test 
// Input : 	None
// Output :	None 
// Version : v0.1
void STOPT_CFG_EVT1 (void)
{
	u32 uTemp;
	u32  uOSCEN;
	//u32 uRegValue2_bk, uRegValue3_bk;
	//u32 uRegValue_SRC, uRegValue_DIV0;
	//u32 uTTT0, uTTT1;
	u32 uARM_Memory,uTop_Memory,uARM_Logic,uTop_Logic, uHidden;
	u32 uOSCTime;
	u32 uTemp0, uTemp2;
	u32 uRet, uDSTOP;


	uDSTOP= DeepStopStatus();
	SYSC_RdRSTSTAT(1);

	if( uDSTOP && !(g_OnTest_DSTOP) )									// must be changed
	{
		
		CheckData_SDRAM(_DRAM_BaseAddress+0x1000000, 0x10000);

		//Check & Clear Wake-up Source 
		SYSC_ClrWKUPSTAT();

		printf("\nCheck Stepping Stone...\n\n");
		uRet = Compare(0x0C000000, 0x52000000, 0x100);
		if (uRet)
			{
			Disp("Stepping Stone Data Retention Success..\n");
			}
			else
			{
			Disp("Stepping Stone Data Retention  Failed..\n");
			}

		//Read RawInterrupt Status
		printf("VIC0RawStatus: 0x%x \n", Inp32(0x71200008));
		printf("VIC1RawStatus: 0x%x \n", Inp32(0x71300008));

		printf("Deep Stop mode test is done\n");
		g_OnTest_DSTOP = 1;
	}
else			// Entering into Deep Stop Mode
	{
		g_OnTest_DSTOP=0;

	printf("\n[STOP CFG Test]\n");

//test 2.24  -Operating Mode Change
/*
	SYSC_ChangeMode(eASYNC_MODE);
	SYSC_GetClkInform();
	UART_InitDebugCh(0, 115200);
	printf("\n\n");
	printf("ARMCLK: %.2fMHz  HCLKx2: %.2fMHz  HCLK: %.2fMHz  PCLK: %.2fMHz\n",(float)g_ARMCLK/1.0e6, (float)g_HCLKx2/1.0e6, (float)g_HCLK/1.0e6, (float)g_PCLK/1.0e6);
	printf("SYNC Mode : %d\n", g_SYNCACK);
	printf("\n");    
*/

	//GPIO_SetFunctionEach(eGPIO_F, eGPIO_14, 1);
	//GPIO_SetDataEach(eGPIO_F, eGPIO_14, 0);

	// User Key Input
	printf(" Choose Oscillator Enable or Disable :  0 : Disable,  1: Enable \n");
	uOSCEN = GetIntNum();
	printf(" Choose uARM_Logic :  0 : OFF,  1: ON \n");
	uARM_Logic = GetIntNum();
	printf(" Choose uARM_Memory :  0 : OFF,  1: ON \n");
	uARM_Memory = GetIntNum();
	printf(" Choose uTop_Logic :  0 : RET  1: ON \n");
	uTop_Logic = GetIntNum();
	printf(" Choose uTop_Memory :  0 : OFF,  1: RET\n");
	uTop_Memory = GetIntNum();

	printf(" Choose Hidden Stop Mode:  0 : Sub Block OFF,  1: Sub Block Enable\n");
	uHidden = GetIntNum();

	printf(" Oscillator settle-down time:  \n");
	uOSCTime = GetIntNum();


	////////////////////////////////
	//  Save I/O Ports 
	////////////////////////////////
	// Save the port configurations
	//printf("I/O Port is stored!\n");
	//for(i=0;i<36;i++) {
	//	portStatus[i]=*( (volatile U32 *)0x56000000 + i);	// 0x5600_0000:GPACON addr.
	//	}
	//printf("I/O Port is set for Stop Mode!\n");
	//ConfigStopGPIO();
	//ConfigMiscIO_stop();

	Outp32Inform(5, 0x0);
	printf("Wake-up source is set!\n");
	////////////////////////////////
	// Wake-up Source Setting
	//      Wake-up Source Interrupts are must enabled at Stop Mode
	////////////////////////////////
   	//SetAlarmWakeup();
	SetEintWakeup();
	SetKeypadWakeup();
	//SetAlarmTick();
	Outp32SYSC(0x804, 0x1<<7);
	SetBatteryFaultEvent(eFLT_INT);
	SetADCTSWakeup();
//	SetHSIWakeup();

	// For Test - Retention Stepping Stone
	printf("Test pattern for SDRAM Self-Refresh is filled!\n");
	InitData_SDRAM(_DRAM_BaseAddress+0x1000000, 0x10000);
	printf("\nCopy Stepping Stone...\n\n");
	Copy(0x0C000000, 0x52000000, 0x100);


	//printf("Oscillator settle-down time is set\n");
	//SYSC_OSCSTAB(1);				// Check...
	
#if 1

	//Test Case - Normal CFG OFF
	SYSC_CtrlNORCFG(eNOR_DOMAINV, 0);
	SYSC_CtrlNORCFG(eNOR_DOMAINI, 0);
	SYSC_CtrlNORCFG(eNOR_DOMAINP, 0);
	SYSC_CtrlNORCFG(eNOR_DOMAINF, 0);
	SYSC_CtrlNORCFG(eNOR_DOMAINS, 0);
	SYSC_CtrlNORCFG(eNOR_DOMAINETM, 1);
	SYSC_CtrlNORCFG(eNOR_IROM, 1);
#endif
	Delay(100);
	SYSC_RdBLKPWR();


	
#if 0
	printf("PHY OFF\n");
	uTTT1 = Inp32SYSC(0x900);
	uTTT1 = uTTT1|(1<<14);		
	Outp32SYSC(0x900, uTTT1);	//  USB_PWR_DN_EN
	//Outp32(0x7C100000, 0xF);		//  USB_Power Down
	uTTT1 = Inp32(0x7C100004);
	uTTT1 = uTTT1 |(1<<3);
	Outp32(0x7C100004,uTTT1 );			//  
	
	Outp32(0x7C100000, 0xF);		//  USB_Power Down
#endif	
	
	//For Test. (07.02.12- )
	SYSC_OSCSTAB(uOSCTime);			
	SYSC_PWRSTAB(0x1);			
	SYSC_FPCSTAB(0x1);			

	switch(uHidden)
	{
		case 0:
				SYSC_SetSTOPCFG(uARM_Memory, uTop_Memory, uARM_Logic, uTop_Logic);
				uTemp0=Inp32SYSC(0x814);
				//uTemp0=Inp32SYSC(0x814);
				//uTemp0 |=(1<<31);
				//Outp32SYSC(0x814, uTemp0);
				printf("Normal_CFG: 0x%x\n",Inp32SYSC(0x810));
				printf("STOP_CFG: 0x%x\n", uTemp0);
				break;
		case 1:
				uTemp0 = Inp32SYSC(0x814);
				uTemp2 = ((1<<16)|(1<<15)|(1<<14)|(1<<13)|(1<<12)|(1<<11)|(1<<10)|(1<<9)); 	// STOP(SUB Enable) -> SLEEP  Fail
				//uTemp2 = ((0<<16)|(0<<15)|(0<<14)|(0<<13)|(0<<12)|(0<<9));
				uTemp0 =  (uTemp0 & ~(0x3FFFFF<<8)) | ((uARM_Memory<<29)|(uTop_Memory<<20)|(uARM_Logic<<17)|(uTop_Logic<<8)|uTemp2);	
				Outp32SYSC(0x814, uTemp0);
				printf("Normal_CFG: 0x%x\n",Inp32SYSC(0x810));
				printf("STOP_CFG: 0x%x\n", uTemp0);
				break;
	}

	// for Test  WFI Wake-up 
	//INTC_Disable(NUM_RTC_TIC);
	//INTC_Disable(NUM_RTC_ALARM);
	//INTC_Disable(NUM_EINT1);
	
	//SYSTEM_DisableVIC( );
	//SYSC_SetSTOPCFG(uDeepStop,1, uDeepStop, 0);   // for test 2.12,  TOP Memory ON
	SYSC_SetCFGWFI(eSTOP, uOSCEN);
      printf("PWR_CFG: 0x%x\n", Inp32SYSC(0x804));
      Delay(10);



       /////////////////////////////////
       // 1) Check&Enable HCLK_GATE[22,21,0]
       // 2) Check BLK_PWR_STAT 
       // 3) Check&Clear WAKEUP_STAT
       //////////////////////////////
	CheckHCLK_ForPM();
       CheckBLKPWR_ForPM();
	CheckWAKESTAT_ForPM(1);
      
	// Normal CFG 
	printf("\nCPU will goes to Stop Mode!\n\n");
      UART_TxEmpty();	
	Outp32Inform(7, Inp32SYSC(0x90c));

  	MMU_WaitForInterrupt();


	Delay(10);


	DisplayLED(0x3);
	RTC_SetCON(0,0,0,0,0,0);	
	
	printf("\nCheck Stepping Stone...\n\n");
	uRet = Compare(0x0C000000, 0x52000000, 0x100);
	if (uRet)
			{
			Disp("Stepping Stone Data Retention Success..\n");
			}
			else
			{
			Disp("Stepping Stone Data Retention  Failed..\n");
			}

	
	printf("Return to Normal Mode.\n");

	printf("rWAKEUP_STAT=0x%x\n", Inp32SYSC(0x908));
	uTemp=Inp32SYSC(0x908);
	Outp32SYSC(0x908,uTemp);
	printf("rWAKEUP_STAT=0x%x\n\n Wake-up Status Clear", Inp32SYSC(0x908));
	
	SYSC_RdBLKPWR();

	// Int. Disable
	INTC_Disable(NUM_EINT1);
	INTC_Disable(NUM_RTC_ALARM);
	INTC_Disable(NUM_RTC_TIC);
	
}

	INTC_Disable(NUM_EINT1);
	INTC_Disable(NUM_RTC_ALARM);
	INTC_Disable(NUM_BATF);
	INTC_Disable(NUM_PENDN);

}



//////////
// Function Name : SLEEPT_CFG_EVT1  -- ing..
// Function Description : Sleep Mode Test - Baisc Test 
// Input : 	None
// Output :	None 
// Version : v0.1
void SLEEPT_CFG_EVT1 (void)
{
	u32 uRstId;
	//u32 uPortStatus[32];		// must be change
	u32 uInform0, uInform7;
	u32 uTTT1;
		
	printf("rINFORM0: 0x%x\n", Inp32Inform(0));
	printf("rINFORM7: 0x%x\n", Inp32Inform(7));

	uInform0 = 0xABCD6400;
	uInform7 = 0x6400ABCD;
	
	uRstId = SYSC_RdRSTSTAT(1);
	
		//SYSC_CtrlNORCFG(eNOR_DOMAINV, 0);
		SYSC_CtrlNORCFG(eNOR_DOMAINI, 1);
		SYSC_CtrlNORCFG(eNOR_DOMAINP, 1);
		SYSC_CtrlNORCFG(eNOR_DOMAINF, 1);
		SYSC_CtrlNORCFG(eNOR_DOMAINS, 1);
		//SYSC_CtrlNORCFG(eNOR_DOMAINETM,0);		// OFF矯 Sleep Wake-up Fail...
		SYSC_CtrlNORCFG(eNOR_IROM, 1);

	Delay(10);
	SYSC_RdBLKPWR();
	if( ( uRstId == 3 ) && !(g_OnTest) )
	{
		printf("Wake-up form SLEEP Mode \n");
		CheckData_SDRAM(_DRAM_BaseAddress+0x1000000, 0x10000);

		//Check Information Register Value
		if( (uInform0 !=Inp32Inform(0) )||(uInform7 != Inp32Inform(7)))
		{
			printf(" Information Register Value is wrong!!! \n");
		}
		else 
		{
			printf(" Information Register Value is correct!!! \n");
		}

		//Check & Clear Wake-up Source 
		SYSC_ClrWKUPSTAT();
		//test
		Check_AliveSFR(1);
		
		printf("SLEEP mode test is done\n");
		g_OnTest = 1;
	}
	else			// Entering into SLEEP Mode

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产一区二区精华| 亚洲黄色av一区| 一区二区三区.www| 毛片av一区二区| 欧美性感一类影片在线播放| 久久综合久久综合九色| 亚洲成人免费看| 99久久久久免费精品国产| 日韩欧美123| 亚洲成av人影院在线观看网| av在线播放不卡| 国产亚洲欧美一区在线观看| 日本va欧美va精品| 欧美三级三级三级爽爽爽| 中文字幕亚洲视频| 成人午夜短视频| 久久综合久久鬼色| 激情综合网天天干| 日韩你懂的在线播放| 五月婷婷色综合| 欧美日韩中字一区| 亚洲激情第一区| 91色乱码一区二区三区| 亚洲日本韩国一区| 色一区在线观看| 亚洲欧美一区二区久久| 97久久超碰国产精品电影| 国产精品三级久久久久三级| 国产成人亚洲综合a∨婷婷图片| 精品久久久久久久一区二区蜜臀| 麻豆视频一区二区| 日韩视频国产视频| 国产精品综合在线视频| 久久久蜜桃精品| 国产精品456| 国产精品色哟哟网站| 成av人片一区二区| 亚洲男人的天堂一区二区| 91久久精品国产91性色tv| 亚洲成av人片一区二区| 欧美久久久久免费| 免费在线成人网| 精品嫩草影院久久| 懂色av一区二区在线播放| 国产精品美女久久久久久久久| 成人黄色片在线观看| 亚洲人成影院在线观看| 欧美日韩在线免费视频| 久久精品国产亚洲5555| 国产亚洲精品bt天堂精选| 99精品黄色片免费大全| 一区二区视频免费在线观看| 欧美年轻男男videosbes| 久久成人免费网站| 国产精品久久久爽爽爽麻豆色哟哟| a美女胸又www黄视频久久| 亚洲激情六月丁香| 日韩精品一区二区三区四区视频 | 91精品国产一区二区三区蜜臀| 青青青伊人色综合久久| 国产色产综合产在线视频| 色婷婷综合中文久久一本| 午夜av电影一区| 国产日产欧美一区| 91久久精品日日躁夜夜躁欧美| 免费在线观看日韩欧美| 中文字幕在线免费不卡| 欧美综合在线视频| 国产一区二区女| 亚洲一卡二卡三卡四卡| 久久久精品tv| 欧美日韩美女一区二区| 国模娜娜一区二区三区| 亚洲国产一区视频| 国产午夜精品一区二区三区视频| 欧美系列日韩一区| 成年人午夜久久久| 久久国产精品第一页| 亚洲专区一二三| 国产精品欧美一级免费| 欧美疯狂做受xxxx富婆| 成人av午夜影院| 青青草成人在线观看| 亚洲一区在线看| 国产精品久久久久久久久久久免费看 | 色婷婷综合激情| 国产福利精品一区| 久久国内精品视频| 亚洲一区二区三区四区的| 欧美国产一区在线| 欧美大片在线观看| 欧美片在线播放| 日本高清不卡一区| 成人精品国产一区二区4080| 韩国女主播成人在线观看| 亚洲狠狠爱一区二区三区| 综合自拍亚洲综合图不卡区| 久久久蜜臀国产一区二区| 日韩午夜av一区| 欧美精品乱码久久久久久按摩| av午夜精品一区二区三区| 国产成人午夜精品5599| 紧缚捆绑精品一区二区| 轻轻草成人在线| 免费高清在线一区| 免费久久99精品国产| 亚洲精品免费在线播放| 亚洲丝袜自拍清纯另类| 亚洲欧洲精品一区二区精品久久久 | 亚洲三级小视频| 国产精品久久综合| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 日韩一区二区三区视频在线| 欧美日韩色综合| 91麻豆精品国产91久久久久 | 亚洲午夜免费电影| 亚洲影视在线播放| 亚洲成av人在线观看| 亚洲国产成人高清精品| 午夜电影一区二区| 美日韩一级片在线观看| 麻豆成人久久精品二区三区红 | 欧美巨大另类极品videosbest | 一区二区三区在线免费视频| 国产精品乱人伦| 日韩毛片高清在线播放| 亚洲精选视频在线| 婷婷丁香久久五月婷婷| 青青草国产成人99久久| 国内精品国产成人国产三级粉色 | 欧美在线一二三四区| 日本二三区不卡| 欧美精品色综合| 日韩写真欧美这视频| 久久亚洲综合av| 国产精品不卡在线观看| 亚洲一区二区三区中文字幕在线| 婷婷激情综合网| 国产一区二区三区最好精华液| 成人午夜av在线| 欧美午夜精品电影| 欧美不卡视频一区| 国产精品美女久久福利网站| 一个色在线综合| 国产一区二区在线免费观看| 成人h动漫精品一区二| 欧美日韩一本到| 久久精品一区二区三区四区| 亚洲色图在线看| 奇米精品一区二区三区在线观看 | 激情小说欧美图片| 97精品视频在线观看自产线路二| 在线精品视频一区二区三四| 精品女同一区二区| 中文字幕一区二区三| 秋霞午夜鲁丝一区二区老狼| 高清av一区二区| 欧美高清www午色夜在线视频| 久久影院午夜论| 午夜欧美在线一二页| 国产精品综合在线视频| 欧美巨大另类极品videosbest| 久久先锋影音av鲁色资源网| 亚洲韩国一区二区三区| 成人午夜免费视频| 日韩一二三区视频| 亚洲一区二区三区在线播放| 国产精品一色哟哟哟| 欧美日韩激情在线| 亚洲精品欧美专区| 国产v日产∨综合v精品视频| 在线电影国产精品| 亚洲精品成人悠悠色影视| 国产成人在线免费| 日韩欧美一区在线| 亚洲国产一区视频| 95精品视频在线| 久久九九久久九九| 久久 天天综合| 欧美精品在线观看播放| 亚洲日本一区二区| 风间由美性色一区二区三区| 精品国产一区二区三区久久久蜜月 | 亚洲自拍欧美精品| 不卡的av网站| 国产日韩欧美在线一区| 裸体在线国模精品偷拍| 欧美日韩一二三区| 香蕉久久一区二区不卡无毒影院| 91一区二区三区在线播放| 国产精品视频一二| 国产乱码精品一区二区三区忘忧草| 欧美丰满高潮xxxx喷水动漫| 亚洲一区在线看| 色94色欧美sute亚洲线路二| 成人欧美一区二区三区白人 | 国产一区二区美女| 久久日一线二线三线suv| 蜜臀精品久久久久久蜜臀| 日韩亚洲欧美一区二区三区|