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

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

?? shell.c

?? arm9.rar
?? C
?? 第 1 頁 / 共 3 頁
字號:
//		CacheDisable();
		CacheFlush();		//防止tmp_data被cache
//		CacheEnable();
		
		//for(i=0; i<64; i++)
		//	tmp_data[i] = ((unsigned int *)src)[i];

		for(i=0; i<16; i++) {
			unsigned char ch;
			
			printf("0x%-8x:", src+(i<<4));
			for(j=0; j<16; j++) {
				//ch = ((unsigned char *)tmp_data)[(i<<4)+j];
				ch = ((unsigned char *)src)[(i<<4)+j];
				printf("%3x", ch);
			}
			putch(' ');
			putch(' ');
			for(j=0; j<16; j++) {
				//ch = ((unsigned char *)tmp_data)[(i<<4)+j];
				ch = ((unsigned char *)src)[(i<<4)+j];
				putch((ch>=0x20&&ch<0x80)?ch:'.');
			}
			putch('\n');		
		}

	} while(getch()!=ESC_KEY);
//關(guān)閉cache后讀tmp_data并打印才正常
	
	return 0;
}

int MemoryShow(int argc, char*argv[])
{
	unsigned long addr;
	int mode;
	
	if(argc!=3)
		goto err_exit;

	if(!strncmp(argv[1], "-c", 3))
		mode = 0;
	else if(!strncmp(argv[1], "-s", 3))
		mode = 1;
	else if(!strncmp(argv[1], "-l", 3))
		mode = 2;
	else
		goto err_exit;
	
	addr = strtoul((char *)argv[2]);
	if(addr==-1)
		goto err_exit;
		
	if((mode==1)&&(addr&1))
		goto err_exit;
		
	if((mode==2)&&(addr&3))
		goto err_exit;
	
//	CacheDisable();
	CacheFlush();
//	CacheEnable();
	printf("mem @0x%-8x = 0x%x\n", addr, (mode==2)?*(U32 *)addr:(mode==1)?*(U16 *)addr:*(U8 *)addr);	
	return 0;

err_exit:
	puts("Usage : memd -c/s/l addr\n-c/s/l   8/16/32 bits\n");
	return -1;
}

int MemorySet(int argc, char*argv[])
{
	unsigned long addr;
	int mode;	
	U32 data;
	
	if(argc!=4)
		goto err_exit;

	if(!strncmp(argv[1], "-c", 3))
		mode = 0;
	else if(!strncmp(argv[1], "-s", 3))
		mode = 1;
	else if(!strncmp(argv[1], "-l", 3))
		mode = 2;
	else
		goto err_exit;
	
	addr = strtoul((char *)argv[2]);
	if(addr==-1)
		goto err_exit;
	
	data = strtoul((char *)argv[3]);
	if(data==-1)
		goto err_exit;

	if(!mode) {
		/*__asm {
			strb	data, [addr]
		}*/
		outportb(data, addr);
	} else if(mode==1) {
		if(addr&1)
			goto err_exit;
		/*__asm {
			strh	data, [addr]
		}*/
		outportw(data, addr);
	} else if(mode==2) {
		if(addr&3)
			goto err_exit;
		/*__asm {
			str	data, [addr]
		}*/
		outportl(data, addr);
	}
//	printf("set mem @0x%-8x = 0x%x\n", addr, (mode==2)?*(U32 *)addr:(mode==1)?*(U16 *)addr:*(U8 *)addr);
	
	//puts("set ");
	//MemoryShow(3, argv);
	
	return 0;

err_exit:
	puts("Usage : memd -c/s/l addr data\n-c/s/l   8/16/32 bits\n");
	return -1;	
}

#ifdef	SAVE_ENV_SUPPORT

int SaveEnv(int argc, char*argv[])
{
#ifdef	SAVE_ENV_IN_NAND
	NFSaveParams((char *)&Env);
#else
	NorFlashProg(BIOS_ENV_ADDR, (U32)&Env, sizeof(Env));
#endif
	return 0;
}

int LoadEnv()
{
	int i;

#ifdef	SAVE_ENV_IN_NAND
	NFSearchParams((char *)&Env);
#else
	NorFlashRead((char *)&Env, (char *)(BIOS_ENV_ADDR), sizeof(Env));
#endif

	if(strncmp((const char *)Env.flag, "params", 7))
		return -1;
	
	SetSysClockPara(Env.clk_para);

	for(i=0; BaudSet[i]; i++)
		if(Env.baud==BaudSet[i])
			break;
	if(!BaudSet[i])
		Env.baud = DEFAULT_SERIAL_BAUD;	
	SerialSwitch(Env.current_uart);
	SerialChgBaud(Env.baud);
	
	if(Env.prog_s_addr&0x3)
		Env.prog_s_addr = ROM_BASE+SIZE_64K;
	if(Env.prog_r_addr&0x3)
		Env.prog_r_addr = DFT_DOWNLOAD_ADDR;
		
	Env.boot_params[255] = 0;
	
	return 0;
}

#endif

void DftEnvInit(void)
{
	memset(&Env, 0, sizeof(Env));
	memcpy(Env.flag, "params", 8);
	Env.nic_cfg.ip   = DEFAULT_IP_ADDR;
	Env.nic_cfg.mask = DEFAULT_IP_MASK;
	Env.nic_cfg.gate = DEFAULT_IP_ADDR;
	Env.baud         = DEFAULT_SERIAL_BAUD;
	Env.current_uart = DEFAULT_SERIAL_PORT;
	GetSysClockPara(Env.clk_para);
	Env.prog_s_addr  = SIZE_64K;
	Env.prog_r_addr  = DFT_DOWNLOAD_ADDR;
	Env.NandPartition[0].size = 0;
	Env.saved_in = 0;	//use nor flash, nointrd
	
	SerialSwitch(Env.current_uart);
	SerialChgBaud(Env.baud);
}


#ifdef	SERIAL_PORTS_SWITCH
int ChgUartPort(int argc, char *argv[])
{
	Env.current_uart = !Env.current_uart;
	printf("Set uart port%d...\n", Env.current_uart?1:0);
	SerialSwitch(Env.current_uart);
	return 0;
}
#endif

#ifdef	NAND_FLASH_SUPPORT

int NandProg(int argc, char *argv[])
{
	unsigned int size = ~0;
	unsigned int data_begin = ~0;

	data_begin = download_addr;
	size       = download_len;
	
	if(argc>1)
		data_begin = strtoul((char *)argv[1]);
	if(argc>2)	
		size       = strtoul((char *)argv[2]);	
	if((size==-1)||(data_begin==-1)) {
		printf("Arguments error\n");
		goto err_exit;
	}
	
	if(size==0) {
		printf("Write 0 Bytes!\n");
		return -1;
	}
	else
		return WrFileToNF(data_begin, size);
	
err_exit:
	printf("Usage:	nfprog addr size\naddr = data pointer to ram\nsize = program size(Bytes)\n");
	return -1;
}

int NandLoad(int argc, char *argv[])
{
	U32 load_part = -1;
	download_addr = DFT_DOWNLOAD_ADDR;
	
	if(argc>1) {
		download_addr = strtoul((char *)argv[1]);
		if(download_addr==-1)
			download_addr = DFT_DOWNLOAD_ADDR;
		if(argc>2)
			load_part = strtoul(argv[2]);
	}
	
	printf("Load data form nand flash to 0x%x\n", download_addr);
	return RdFileFrNF(download_addr, load_part);
}

int NandErase(int argc, char *argv[])
{
	return EraseNandPart();
}

int NandPart(int argc, char*argv[])
{
	unsigned long i, addr[8];
	
	if(!NandFlashSize)
		return -1;
	if((argc<=1)||(argc>9))
		goto err_exit;

	addr[0] = 0;
	for(i=1; i<argc; i++) {
		addr[i] = strtoul((char *)argv[i]);		
		if((addr[i]==-1)||(addr[i]<=addr[i-1])||(addr[i]&0x3fff)||(addr[i]>NandFlashSize))
			goto err_exit;
	}
	
	printf("Set %d partition(s) :\n", argc-1);
	for(i=0; i<argc-1; i++) {
		pNandPart[i].offset = addr[i];
		pNandPart[i].size   = addr[i+1]-addr[i];
		pNandPart[i].name   = " ";
		pNandPart[i+1].size = 0;
		printf("part%d : start address 0x%-8x, size 0x%-8x\n", i, pNandPart[i].offset, pNandPart[i].size);
	}

	return 0;
	
err_exit:
	puts("Usage : nfpart a1 a2 ... an\na1 = part1 end address, an = partn end address, n<=8, address must be 16KB align and don't excess the size of nand flash \n");
	return -1;
}

#endif

int SetProgAddr(int argc, char *argv[])
{
	int addr, obj;
	
	if(argc<2)
		goto err_exit;		
	
	if(!strncmp(argv[1], "-s", 3))
		obj = 0;
	else if(!strncmp(argv[1], "-r", 3))
		obj = 1;
	else if(!strncmp(argv[1], "-i", 3))
		obj = 2;
	else if(!strncmp(argv[1], "-ni", 4)) {
		Env.saved_in &= ~2;
		return 0;
	} else if(!strncmp(argv[1], "-nor", 5)) {
		Env.saved_in &= ~1;
		return 0;
	} else if(!strncmp(argv[1], "-nand", 6)) {
		Env.saved_in |= 1;
		return 0;
	} else
		goto err_exit;
	
	if(argc<3)
		goto err_exit;
	addr = strtoul((char*)argv[2]);
	if(addr==-1)
		goto err_exit;
	
	printf("Set Program %s address = 0x%x\n", (obj==0)?"save":(obj==1)?"run":"initrd", addr);
	if(obj==0)
		Env.prog_s_addr = addr;
	else if(obj==1)
		Env.prog_r_addr = addr;
	else if(obj==2) {
		Env.initrd_addr = addr;
		Env.saved_in |= 2;
	}
	
	return 0;
err_exit:
	puts("Usage : setpa -s[-r][-i][-ni][-nor][-nand] [address]\n-s    save address\n-r    run address\n-i    initrd save address\n-ni   disable initrd\n-nor  use nor flash to save\n-nand use nand flash to save\n");
	return -1;
}

int SetBootParams(int argc, char *argv[])
{
	char params[sizeof(Env.boot_params)];
	int params_bytes;
	
	puts("Please enter params for boot, press Enter to complete, Esc to exit\n");
	params_bytes = GetParameter(params, sizeof(Env.boot_params)-1);
	putch('\n');
	if(params_bytes!=-1) {
		
		Env.boot_params[params_bytes] = 0;
		while(params_bytes) {
			params_bytes--;
			Env.boot_params[params_bytes] = params[params_bytes];		
		}
	}
	return 0;
}

#define LINUX_PAGE_SHIFT	12
#define LINUX_PAGE_SIZE		(1<<LINUX_PAGE_SHIFT)
#define COMMAND_LINE_SIZE 	1024

struct param_struct {
    union {
	struct {
	    unsigned long page_size;			/*  0 */
	    unsigned long nr_pages;				/*  4 */
	    unsigned long ramdisk_size;			/*  8 */
	    unsigned long flags;				/* 12 */
#define FLAG_READONLY	1
#define FLAG_RDLOAD		4
#define FLAG_RDPROMPT	8
	    unsigned long rootdev;				/* 16 */
	    unsigned long video_num_cols;		/* 20 */
	    unsigned long video_num_rows;		/* 24 */
	    unsigned long video_x;				/* 28 */
	    unsigned long video_y;				/* 32 */
	    unsigned long memc_control_reg;		/* 36 */
	    unsigned char sounddefault;			/* 40 */
	    unsigned char adfsdrives;			/* 41 */
	    unsigned char bytes_per_char_h;		/* 42 */
	    unsigned char bytes_per_char_v;		/* 43 */
	    unsigned long pages_in_bank[4];		/* 44 */
	    unsigned long pages_in_vram;		/* 60 */
	    unsigned long initrd_start;			/* 64 */
	    unsigned long initrd_size;			/* 68 */
	    unsigned long rd_start;				/* 72 */
	    unsigned long system_rev;			/* 76 */
	    unsigned long system_serial_low;	/* 80 */
	    unsigned long system_serial_high;	/* 84 */
	    unsigned long mem_fclk_21285;       /* 88 */
	} s;
	char unused[256];
    } u1;
    union {
	char paths[8][128];
	struct {
	    unsigned long magic;
	    char n[1024 - sizeof(unsigned long)];
	} s;
    } u2;
    char commandline[COMMAND_LINE_SIZE];
};

void SetParams(void)
{
	U32 i;
	struct param_struct *params = (struct param_struct *)BOOT_PARAMS_ADDR;

	for(i=0; i<(sizeof(struct param_struct)>>2); i++)
		((U32 *)params)[i] = 0;
	params->u1.s.page_size = LINUX_PAGE_SIZE;
	//params->u1.s.nr_pages = (DRAM_SIZE >> LINUX_PAGE_SHIFT);
	params->u1.s.nr_pages = (SIZE_64M >> LINUX_PAGE_SHIFT);
	
//	if(strlen((char *)boot_params)>=sizeof(boot_params))
//		boot_params[sizeof(boot_params)-1] = 0;
	memcpy(params->commandline, (char *)Env.boot_params, sizeof(Env.boot_params));
	
	printf("Set boot params = %s\n", params->commandline);
}

#define	MAX_DOWNLOAD_SIZE	0x200000

#ifdef	XMODEM_DOWNLOAD_SUPPORT

int XmodemReceive(int argc, char *argv[])
{
	if(argc<2)
		download_addr = DFT_DOWNLOAD_ADDR;
	else {
		unsigned long tmp;
		tmp = strtoul((char*)argv[1]);
		download_addr = (tmp==-1)?download_addr:tmp;
	}
	
	printf("Now download file by xmodem to 0x%x...\n", download_addr);

	download_len = XModemReceive((char *)download_addr, MAX_DOWNLOAD_SIZE);
	if(download_len!=-1)
		printf("\nReceived %x bytes success\n", download_len);
	
	return download_len;
}

int XmodemReceiveRun(int argc, char *argv[])
{
	if(XmodemReceive(argc, argv)!=-1) {		
		RunProgram(0, NULL);
	}
	return 0;
}

#endif

int SetBootKey(int argc, char *argv[])
{
	int keyno, keystat, boot = 0;
	
	if(argc<3)
		goto err_exit;
	
	keyno   = strtoul(argv[1]);
	keystat = strtoul(argv[2]);
	
	if((keyno>4)||(keyno<1)||(keystat>1)||(keystat<0))
		goto err_exit;
	keyno--;
	
	if(argc>3) {
		if(!strncmp("-b", argv[3], 6))
			boot = 1;
		else
			goto err_exit;
	}
	Env.boot_key = ('k'<<24)|('b'<<16)|(keyno<<12)|(keystat<<8)|(boot);
	
	return 0;	
	
err_exit:
	printf("Usage : keyrun keyno keystat [-b]\nkeyno   key number 1~4\nkeystat 1->high, 0->low to autoboot\n-b   execute boot\n");
	return -1;
}

int SetMachine(int argc, char *argv[])
{
	U32 machine, len;
	
	if(argc<2)
		goto err_exit;
	
	len = strlen(argv[1]);
	machine = strtodec(argv[1], len);
	if((len>4)||(machine==-1))
		goto err_exit;
		
	Env.machine = machine;
	return 0;

err_exit:
	printf("Usage : machine no\nno   machine number(0~9999)\n");
	return -1;
}

#ifdef	USB_DOWNLOAD_SUPPORT
int UsbDownload(int argc, char *argv[])
{
	download_addr = DFT_DOWNLOAD_ADDR;
	if(argc>1) {
		download_addr = strtoul(argv[1]);
		if(download_addr==-1)
			download_addr = DFT_DOWNLOAD_ADDR;
	}
	
	printf("USB download file to 0x%x\n", download_addr);
	download_len =  BoardUsbDownload(download_addr);
	if(download_len!=-1)
		printf("0x%x bytes received\n", download_len);
	return download_len;
}

int UsbDownloadRun(int argc, char *argv[])
{
	if(UsbDownload(argc, argv)!=-1) {		
		RunProgram(0, NULL);
	}
	return 0;
}
#endif

/******************************************************************************
【功能說明】默認(rèn)系統(tǒng)設(shè)置,設(shè)置系統(tǒng)主頻、IP地址、波特率、啟動參數(shù)等
******************************************************************************/
int Default_Setting(int argc, char *argv[])
{
	unsigned short m = 0 ;

	#ifdef SDRAM_SIZE8M
		char linux_params[] = "root=/dev/mtdblock2 load_ramdisk=0 init=/linuxrc console=ttyS0 mem=8M";
	#elif defined SDRAM_SIZE16M
		char linux_params[] = "root=/dev/mtdblock2 load_ramdisk=0 init=/linuxrc console=ttyS0 mem=16M";
	#elif defined SDRAM_SIZE32M
		char linux_params[] = "root=/dev/mtdblock2 load_ramdisk=0 init=/linuxrc console=ttyS0 mem=32M";
	#elif defined SDRAM_SIZE64M
		char linux_params[] = "root=/dev/mtdblock2 load_ramdisk=0 init=/linuxrc console=ttyS0 mem=64M devfs=mount";
	#endif	

	static struct Partition NandPart_Def[5] = {
		{0, 		 0x00030000, "boot"},		//192K
		{0x00030000, 0x001d0000, "kernel"},		//2M-192K
		{0x00200000, 0x02000000, "romfs"},		//32M
		{0x02200000, 0x01e00000, "ext-fs"},		//30M
		{0,			 0         , 0}
	};
	
	while( linux_params[m] != 0 )
	{
		Env.boot_params[m] = linux_params[m] ;
		m++ ;
	}
	Env.boot_params[ m + 1 ] = 0 ;
	
	for( m = 0; m < 4 ; m++ ) 
	{
		pNandPart[m].offset = NandPart_Def[m].offset ;
		pNandPart[m].size   = NandPart_Def[m].size ;
		pNandPart[m].name   = NandPart_Def[m].name ;
		pNandPart[m+1].size = 0 ;
	}
	
	Env.nic_cfg.ip = ((192)<<24) | ((168)<<16) | ((3)<<8) | (100) ;			//設(shè)置默認(rèn)IP地址
	Env.nic_cfg.mask = ((255)<<24) | ((255)<<16) | ((255)<<8) | (0) ;	
	Env.nic_cfg.gate = ((192)<<24) | ((168)<<16) | ((3)<<8) | (1) ;	
	
	Env.baud = 115200 ;
	Env.current_uart = DEFAULT_SERIAL_PORT ;
	
	Env.clk_para[0] = 192 ;
	Env.clk_para[1] = 4 ;
	Env.clk_para[2] = 1 ;
	Env.clk_para[3] = 200000000 ;

	Env.prog_r_addr = 0x30008000 ;
	Env.prog_s_addr = 0x10000 ;
	Env.machine = 193 ;

	Env.boot_key = ('k'<<24)|('b'<<16)|(0<<12)|(0<<8)|(1);
	//設(shè)置boot啟動按鍵為KEY1,低電平有效
	
	#ifdef	SAVE_ENV_IN_NAND
		NFSaveParams((char *)&Env);
	#else
		NorFlashProg(BIOS_ENV_ADDR, (U32)&Env, sizeof(Env));
	#endif
 	
	return 0;
}
//*****************************************************************************

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人av电影在线网| 老司机免费视频一区二区| 99九九99九九九视频精品| 欧美经典三级视频一区二区三区| 国产成人一级电影| 国产精品毛片a∨一区二区三区| 成人黄页在线观看| 亚洲免费在线看| 欧美裸体bbwbbwbbw| 久久aⅴ国产欧美74aaa| 欧美国产乱子伦 | 欧美电视剧免费观看| 久久超碰97中文字幕| 国产免费成人在线视频| 91猫先生在线| 开心九九激情九九欧美日韩精美视频电影 | 久久66热re国产| 国产亚洲综合性久久久影院| 99久久精品国产精品久久| 丝袜美腿高跟呻吟高潮一区| 精品成人免费观看| 99精品国产一区二区三区不卡| 亚洲一区二区三区影院| 精品国产区一区| 日本高清免费不卡视频| 久99久精品视频免费观看| 中文字幕一区二区不卡| 日韩欧美色电影| 91免费版在线| 国产综合成人久久大片91| 一区二区日韩av| 国产偷v国产偷v亚洲高清| 在线视频中文字幕一区二区| 国产激情视频一区二区在线观看| 亚洲狠狠丁香婷婷综合久久久| 日韩视频一区在线观看| 色婷婷精品久久二区二区蜜臂av | 免费的国产精品| 亚洲色图.com| 2014亚洲片线观看视频免费| 色哟哟一区二区三区| 国产精品一级二级三级| 日韩精品每日更新| 亚洲男人的天堂一区二区| 久久久久久久久久久久久夜| 91麻豆精品91久久久久同性| 91福利在线观看| 成人综合在线网站| 国产呦萝稀缺另类资源| 日韩国产一区二| 亚洲综合清纯丝袜自拍| 亚洲欧美一区二区久久| 国产三级精品在线| 亚洲精品一线二线三线| 91麻豆精品国产91久久久久| 欧美日韩亚洲不卡| 91社区在线播放| 成人h精品动漫一区二区三区| 狠狠久久亚洲欧美| 久久精品99国产精品日本| 无吗不卡中文字幕| 亚洲国产一区在线观看| 亚洲女同一区二区| 亚洲色图在线视频| 亚洲男人的天堂av| 亚洲免费高清视频在线| 自拍偷在线精品自拍偷无码专区| 久久精品亚洲乱码伦伦中文 | 国产成人av资源| 精品一区二区三区免费毛片爱| 三级欧美在线一区| 天天做天天摸天天爽国产一区| 亚洲h动漫在线| 日韩中文字幕91| 男男gaygay亚洲| 免费在线观看一区二区三区| 午夜精品在线看| 日韩电影一二三区| 日本在线不卡视频一二三区| 视频在线在亚洲| 日韩av电影天堂| 精品一区二区三区免费| 国产米奇在线777精品观看| 国产suv一区二区三区88区| 国产+成+人+亚洲欧洲自线| 国产寡妇亲子伦一区二区| 高清不卡在线观看| 99热99精品| 欧美视频在线观看一区二区| 国产精品自产自拍| 99久久久久久| 欧美狂野另类xxxxoooo| 欧美r级在线观看| 久久精品网站免费观看| 亚洲私人影院在线观看| 一区二区不卡在线播放 | 久久先锋影音av鲁色资源| 久久精品一区二区| 亚洲欧美日韩国产成人精品影院| 一区二区三区**美女毛片| 日本成人中文字幕在线视频 | 欧美激情综合网| 亚洲精品视频在线观看免费| 亚洲123区在线观看| 国产精品一级黄| 在线看不卡av| 精品国精品国产| 亚洲三级在线观看| 蜜桃精品视频在线观看| 97久久精品人人澡人人爽| 欧美久久久久久蜜桃| 亚洲精品一线二线三线| 亚洲综合色网站| 国产精品夜夜嗨| 欧美三级韩国三级日本三斤 | 国产精品传媒视频| 天堂一区二区在线免费观看| 国产乱子轮精品视频| 色综合久久88色综合天天免费| 欧美一级生活片| 亚洲欧美自拍偷拍色图| 免费黄网站欧美| 91成人免费在线| 久久―日本道色综合久久| 亚洲国产精品自拍| 丰满亚洲少妇av| 日韩一级免费观看| 亚洲精品中文在线| 国产成人综合精品三级| 欧美军同video69gay| 国产精品狼人久久影院观看方式| 秋霞影院一区二区| 91福利视频在线| 亚洲欧洲在线观看av| 精品一区二区av| 在线成人免费观看| 亚洲精品久久嫩草网站秘色| 国产在线播精品第三| 欧美一卡二卡三卡四卡| 亚洲一二三级电影| 91小视频免费看| 中文字幕国产一区| 国产一区二区三区免费看| 69堂成人精品免费视频| 一区二区三区在线观看欧美| 成人免费精品视频| 国产亚洲精品免费| 国内偷窥港台综合视频在线播放| 欧美日韩精品二区第二页| 中文字幕综合网| 成人app软件下载大全免费| 久久久精品一品道一区| 精品一区二区免费在线观看| 欧美一区二区三区四区视频| 午夜精品久久久久久久| 在线亚洲一区二区| 亚洲另类春色国产| 色94色欧美sute亚洲线路一久| 欧美国产欧美亚州国产日韩mv天天看完整 | 精品免费日韩av| 日韩精品午夜视频| 在线播放欧美女士性生活| 亚洲成人黄色影院| 欧美日韩亚洲综合一区二区三区| 亚洲猫色日本管| 色综合天天性综合| 亚洲精品国产高清久久伦理二区| 91美女片黄在线观看91美女| 亚洲色图欧美在线| 欧美三级电影网| 青青青爽久久午夜综合久久午夜| 日韩精品中文字幕在线一区| 美女免费视频一区二区| 久久蜜桃av一区二区天堂| 国产精品996| 亚洲人吸女人奶水| 欧美日韩在线播放一区| 日韩专区在线视频| 精品久久久久久久久久久久久久久 | 日韩免费成人网| 国产精品中文字幕一区二区三区| 国产亚洲va综合人人澡精品| 成人精品视频一区| 18成人在线视频| 欧美日韩在线精品一区二区三区激情 | 成人av免费网站| 亚洲日本中文字幕区| 欧美色爱综合网| 蓝色福利精品导航| 中文字幕av一区二区三区高| 91网上在线视频| 亚洲国产精品一区二区久久| 日韩精品一区二区三区四区视频| 国产剧情一区二区| 一区二区三区欧美日| 日韩视频在线永久播放| 成人手机在线视频| 亚洲一区二区三区视频在线播放| 日韩视频免费直播| 粉嫩一区二区三区性色av|