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

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

?? cpb40drvapi.c

?? MPC8548上I2C控制器的初始化,讀寫單個字節,連續讀寫多個字節等函數.調試通過
?? C
字號:
/*=============================================================
*	Copyright (c) 2008~2010, CPIT. All Rights Reserved.
*
*	MODULE:  i2c 驅動
*
*	FILENAME: i2cDrv8548.c
*
*	DESCRIPTION:i2c 驅動程序代碼
*
*
*	HISTORY:
*
*	Date           CR No      Person        Description
*	----------  ------------  ------       -------------
*	2008-11-27                litao       created.
*
=============================================================*/

#include "vxWorks.h"
#include "sysLib.h"
#include "stdio.h"
#include "semLib.h"    
#include "taskLib.h"

#include "../../comm_drv/nbDrvDef.h"
#include"../../comm_drv/nbdrvcommintf.h"
#include "../../Driver/I2C8548/8548_I2C/inc/i2cDrv8548.h"
#include "../inc/cpb40DrvApi.h"
#include "../inc/cpb8548Drv.h"


UINT8 gDdConfigWords[] = 
{
0xAA,0x55,0xAA,
0xFF,0xFF,0xFF,0x00,0x2F,0x0C,0x00,
0xFF,0xFF,0xFF,0x44,0xEC,0x00,0x18,
0x01,
0x00,0x2F,0x0C,0x00,0x04,0xEC,0x00,0x28,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};

STATUS cpb_reset_8144(void)
{
	*(UINT8 *)CPB_CPLD_RESET_8144_REG=0x05;
	taskDelay(sysClkRateGet());
	return OK;
}


SYS_STATUS cpb_cfg_8144()
{
    UINT32 cfg_len = 0;
    UINT32 cfg_addr = 0x0;
    
      /*write 8144 config*/
    /*8144 reset status*/
    cpb_reset_8144();
    cfg_len = sizeof(gDdConfigWords);
    if(NB_DRV_OK != mpc8548_i2c_write(1,0x50,0x00,cfg_len,(UINT8 *)&gDdConfigWords[0]))
    {
        printf("\r\n8144 config failed.");
        return ERROR;
    }
    /*8144 reset status cleared*/
     cpb_reset_8144();

    return NB_DRV_OK;
}




/*------------------------------------------------------------------------------

*

*	Function Name: fpga_download

*

*	Input(s):

*		UINT8* pdata:加載數據

*            UINT32 len:加載數據長度

*

*	Output(s):

*		<none>

*

*	Returns:

*		DRV_OK: 成功

*		DRV_ERR:失敗

*             DRV_API_ERR_INPUT_PARA:輸入參數錯誤

*

*	Description:

*GPIO 的管腳定義:

*GPOUT12	FPGA異步全片復位PROGRAM_B

*GPOUT13	FPGA配置時鐘CCLK0

*GPOUT14	FPGA配置讀寫信號RDWR_B



*GPIN9	FPGA配置完成標志DONE

*GPIN10	FPGA配置校驗標志INIT_B

*GPIN11	FPGA配置忙標志BUSY



*GPOUT0	FPGA配置數據D7

*GPOUT1	FPGA配置數據D6

*GPOUT2	FPGA配置數據D5

*GPOUT3	FPGA配置數據D4

*GPOUT4	FPGA配置數據D3

*GPOUT5	FPGA配置數據D2

*GPOUT6	FPGA配置數據D1

*GPOUT7	FPGA配置數據D0

*

------------------------------------------------------------------------------*/
SYS_STATUS cpb_fpga_download (UINT8 fpga_id, UINT8* str_ptr, UINT32 str_len)
{
	UINT32 i;
	UINT32   code = 0;
	UINT8     *file_ptr = NULL;
	UINT8     val;
	UINT8     orderval;
	UINT8     tempnum;
	UINT32   tempval = 0;
	UINT32   immr_val = /*(vxImmrGet() && 0xff000000)*/0x80000000;

	if ((NULL == str_ptr )  || (0 == str_len) || (fpga_id>1))
	{
		return CPB_PARA_ERROR;
	}

	file_ptr = str_ptr;

	*M85XX_GPIOCR(immr_val) |= (TX2OUT | RX2IN | PCIOUT |PCIIN|GPOUT);
	*M85XX_DEVDISR(immr_val)  |= ETSEC2_DISABLE;
	*M85XX_DEVDISR(immr_val)  |= (PCI2_DISABLE|PCI1_DISABLE);

	if(0 == fpga_id)
	{
		/*prepare download, pulse PROGRAM pin down.*/
		*M85XX_GPOUTDR(immr_val) &= (~FPGA1_PROG);
		/*INIT_B*/
/*		*M85XX_GPINDR(immr_val) &= (~FPGA1_INIT);*/
		while(((*M85XX_GPINDR(immr_val) ) & (FPGA1_INIT)));
		taskDelay(3) ;

		*M85XX_GPOUTDR(immr_val) |= FPGA1_PROG;/* release */
		/*taskDelay(3) ;*/
/*		*M85XX_GPINDR(immr_val) |= FPGA1_INIT;*//* release */ 
		while(!((*M85XX_GPINDR(immr_val) ) & (FPGA1_INIT)));
		/*set CS*/
		*M85XX_GPOUTDR(immr_val) |=FPGA2_CS;
		*M85XX_GPOUTDR(immr_val) &=(~FPGA1_CS);
		

		/**M85XX_GPOUTDR(immr_val)  &=(~FPGA1_RDWR);*//*write fpga input*/ 
		taskDelay(50) ;  /* wait until FPGA finished internal memory clear */
		/*check done pin, must be low*/

#if 0

		if ((*M85XX_GPINDR(immr_val)  & FPGA_DONE ))
		{
		printf("\r\nfpga_download:fpga busy.....");
		return DRV_API_ERR_FPGA_BUSY ;
		}
#endif

		/*put data onto the FPGA*/
		while ( code < str_len )
		{
			val = file_ptr[code++];		
			orderval = 0;

			for(i = 0; i < 4; i++)
			{
				tempnum = (val>>(7 - i*2)) &((UINT8)0x80 >>(7 - i));
				orderval |= tempnum;
				tempnum = (val<<(7 - i*2)) &((UINT8)0x01 <<(7 - i));
				orderval |= tempnum;
			}

			*M85XX_GPOUTDR(immr_val) &= (~FPGA1_CCLK);    /* set CCLK lo  */
			tempval = *M85XX_GPOUTDR(immr_val);
			*M85XX_GPOUTDR(immr_val)  = (orderval |(tempval & (~FPGA_DATA_MASK)));/* put byte onto FPGA */
			*M85XX_GPOUTDR(immr_val) |= FPGA1_CCLK;         /* set CCLK hi */
		}

		/* send the bits of the last double word */
		for (i = 0; i < 120; i++)
		{
			*M85XX_GPOUTDR(immr_val) &= (~FPGA1_CCLK);    /* set CCLK lo  */	
			*M85XX_GPOUTDR(immr_val) |= FPGA1_CCLK;         /* set CCLK hi */
		}
		taskDelay(10);
		if (!(*M85XX_GPINDR(immr_val)  & FPGA1_DONE ))
		{
			printf("\r\nfpga_download:fpga is not done.....");
			*M85XX_GPOUTDR(immr_val) |=FPGA2_CS;
			*M85XX_GPOUTDR(immr_val) |=FPGA1_CS;
			return ERROR ;
		}

		/*set CS*/
		*M85XX_GPOUTDR(immr_val) |=FPGA2_CS;
		*M85XX_GPOUTDR(immr_val) |=FPGA1_CS;
		/*reset_fpga1*/

	}
	else
	{
		/*prepare download, pulse PROGRAM pin down.*/
		*M85XX_GPOUTDR(immr_val) &= (~FPGA2_PROG);
		/*INIT_B*/
		*M85XX_GPINDR(immr_val) &= (~FPGA2_INIT);
		taskDelay(3) ;

		*M85XX_GPOUTDR(immr_val) |= FPGA2_PROG;/* release */
		taskDelay(3) ;
		*M85XX_GPINDR(immr_val) |= FPGA2_INIT;/* release */ 

		/*set CS*/
		*M85XX_GPOUTDR(immr_val) |=FPGA1_CS;
		*M85XX_GPOUTDR(immr_val) &=(~FPGA2_CS);

		/**M85XX_GPOUTDR(immr_val)  &=(~FPGA1_RDWR);*//*write fpga input*/ 
		taskDelay(50) ;  /* wait until FPGA finished internal memory clear */
		/*check done pin, must be low*/

#if 0

		if ((*M85XX_GPINDR(immr_val)  & FPGA_DONE ))
		{
		printf("\r\nfpga_download:fpga busy.....");
		return DRV_API_ERR_FPGA_BUSY ;
		}
#endif

		/*put data onto the FPGA*/
		while ( code < str_len )
		{
			val = file_ptr[code++];		
			orderval = 0;
#if 1
			for(i = 0; i < 4; i++)
			{
				tempnum = (val>>(7 - i*2)) &((UINT8)0x80 >>(7 - i));
				orderval |= tempnum;
				tempnum = (val<<(7 - i*2)) &((UINT8)0x01 <<(7 - i));
				orderval |= tempnum;
			}
#endif
			/*orderval = val;*/
			*M85XX_GPOUTDR(immr_val) &= (~FPGA2_CCLK);    /* set CCLK lo  */
			tempval = *M85XX_GPOUTDR(immr_val);
/*			*M85XX_GPOUTDR(immr_val)  = ((orderval << 24) |(tempval & (~FPGA_DATA_MASK)));*//* put byte onto FPGA */
			*M85XX_GPOUTDR(immr_val)  = (orderval |(tempval & (~FPGA_DATA_MASK)));
			*M85XX_GPOUTDR(immr_val) |= FPGA2_CCLK;         /* set CCLK hi */
		}
		/* send the bits of the last double word */
		for (i = 0; i < 120; i++)
		{
			*M85XX_GPOUTDR(immr_val) &= (~FPGA2_CCLK);    /* set CCLK lo  */	
			*M85XX_GPOUTDR(immr_val) |= FPGA2_CCLK;         /* set CCLK hi */
		}
		taskDelay(10);
		if (!(*M85XX_GPINDR(immr_val)  & FPGA2_DONE ))
		{
			printf("\r\nfpga_download:fpga is not done.....");
			*M85XX_GPOUTDR(immr_val) |=FPGA2_CS;
			*M85XX_GPOUTDR(immr_val) |=FPGA1_CS;
			return ERROR ;
		}

		/*set CS*/
		*M85XX_GPOUTDR(immr_val) |=FPGA2_CS;
		*M85XX_GPOUTDR(immr_val) |=FPGA1_CS;
		/*reset_fpga2*/

	}
	return NB_DRV_OK;
	

}

/*************************************************************************************************/
/*************************************************************************************************/
/************************************FPGA下載相關接口**********************************************/
/*************************************************************************************************/
/*************************************************************************************************/
SYS_STATUS cpb_test_fpga_download(UINT8 chip_num)
{
	FILE *fp1;
	char* name_ptr;
	UINT32 file_len1 = 0;
	UINT8 *buf1;
	UINT32   immr_val = /*(vxImmrGet() && 0xff000000)*/0x80000000;
	sysClkRateSet(1000);

	*M85XX_GPOUTDR(immr_val) |=FPGA2_CS;
	*M85XX_GPOUTDR(immr_val) |=FPGA1_CS;
	switch(chip_num)
	{
		case 0:/*MFP*/
			name_ptr = "D:/iq_mux_top.bin";
			break;
		case 1:/*MFP*/
			name_ptr = "D:/cpu_interface.bin";
			break;
		default:
			return -1;
	}

	if ((fp1 = fopen(name_ptr,"r")) == NULL)/*目錄需要確認*/
	{
		printf("cannot open file!\n");
		return NB_DRV_ERROR;
	}

	if (0 != fseek(fp1, 0, SEEK_END))                  
	{                                                  
		printf("fseek() returns error!\n");        
		fclose(fp1);                               
		return NB_DRV_ERROR;                              
	}                                                  
	else                                               
	{                                                  
		file_len1 = ftell(fp1);                    
		printf("file 1 length is %d\n", file_len1);
	}                                                  
	                                                                   
	if (0 != fseek(fp1, 0, SEEK_SET))                  
	{                                                  
		printf("fseek() returns error!\n");        
		fclose(fp1);                               
		return NB_DRV_ERROR;                              
	}                                                  

	buf1 = malloc(file_len1);
	if (NULL == buf1)
		return NB_DRV_OK;

	if (file_len1 != fread(buf1, 1, file_len1, fp1))
	{
		printf("fread() returns error!\n");
		fclose(fp1);
		free(buf1);
		return NB_DRV_ERROR;
	}

	switch(chip_num)
	{
		case 0:
			if (OK != cpb_fpga_download(0,buf1, file_len1))
			{
				printf("CPB FPGA: Not received the DONE!\n");
				fclose(fp1);
				free(buf1);
				return NB_DRV_ERROR;
			}
			break;
		case 1:
			if (OK != cpb_fpga_download(1,buf1, file_len1))
			{
				printf("CPB FPGA: Not received the DONE!\n");
				fclose(fp1);
				free(buf1);
				return NB_DRV_ERROR;
			}
			break;
		default:
		   break;
	}
	       
	fclose(fp1);
	free(buf1);
	return NB_DRV_OK;    

}


?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩视频免费观看高清在线视频| 亚洲精品一区二区三区影院 | 亚洲午夜免费电影| 精品久久一区二区三区| 欧美一级高清大全免费观看| 亚洲国产成人私人影院tom| 欧美成人欧美edvon| 亚洲欧美国产高清| 亚洲精品免费看| 一区二区高清免费观看影视大全| 亚洲欧美在线另类| 亚洲色图丝袜美腿| 亚洲在线免费播放| 亚洲成人在线免费| 日本不卡一二三| 美女国产一区二区三区| 裸体健美xxxx欧美裸体表演| 亚洲一区二区三区四区在线观看| 精品制服美女丁香| 粉嫩av一区二区三区在线播放| 国产乱码精品1区2区3区| 国产一区二区在线观看免费| 国产乱国产乱300精品| 欧美高清hd18日本| 精品剧情在线观看| 日韩成人午夜电影| 成人午夜精品在线| 在线亚洲精品福利网址导航| 欧美中文一区二区三区| 国产精品福利一区二区三区| 一区二区三区在线视频免费| voyeur盗摄精品| 欧美色老头old∨ideo| 精品国产乱码久久久久久牛牛| 亚州成人在线电影| 91麻豆精品国产| 国产亚洲成av人在线观看导航| 国产精品成人免费| 成人丝袜18视频在线观看| 久久中文字幕电影| 国产综合色精品一区二区三区| 精品亚洲国产成人av制服丝袜| 欧美久久久一区| 日日摸夜夜添夜夜添亚洲女人| 国产乱人伦偷精品视频免下载| 日韩精品中文字幕一区二区三区| 国产精品久久福利| 99re视频精品| 久久婷婷国产综合精品青草 | 成人中文字幕电影| 中文字幕在线观看不卡| 91麻豆蜜桃一区二区三区| 日韩三级免费观看| 韩国欧美国产一区| 国产欧美一区二区三区鸳鸯浴 | 成人午夜在线视频| 中文字幕亚洲区| 欧美无人高清视频在线观看| 国产色婷婷亚洲99精品小说| 成人av网站大全| 久久久亚洲精品一区二区三区 | 另类小说欧美激情| 国产欧美一区在线| 欧美天天综合网| 精品一区二区在线播放| 久久久久久黄色| 色综合久久88色综合天天| 久久人人超碰精品| 99久久免费视频.com| 午夜免费久久看| 欧美亚一区二区| 捆绑调教美女网站视频一区| 国产精品女同互慰在线看| 精品一区二区三区免费视频| 国产精品青草综合久久久久99| 一本大道久久a久久综合| 玖玖九九国产精品| 最新成人av在线| 欧美一级一区二区| 日韩电影免费一区| 国产精品视频一区二区三区不卡| 欧洲av一区二区嗯嗯嗯啊| 日本v片在线高清不卡在线观看| 欧美国产综合一区二区| 欧美日韩一区二区在线观看| 国产美女一区二区三区| 亚洲一二三区视频在线观看| 国产区在线观看成人精品 | 国产精品白丝在线| 欧美一区二区视频观看视频| 成人高清视频在线| 久久精品国产久精国产| 亚洲精品高清在线| 国产婷婷一区二区| 日韩午夜小视频| 91成人在线观看喷潮| 亚洲午夜一二三区视频| 国产精品污www在线观看| 日韩一级免费一区| 欧美日韩一区二区三区在线看| 播五月开心婷婷综合| 国产一区二区三区免费在线观看| 亚洲午夜激情av| 国产精品灌醉下药二区| 国产色产综合产在线视频| 91精品国产综合久久久久久久| 91片在线免费观看| 粉嫩嫩av羞羞动漫久久久| 精品一区二区三区的国产在线播放| 亚洲综合丁香婷婷六月香| 国产精品久久久久桃色tv| 久久精品亚洲精品国产欧美kt∨| 日韩一区二区三区精品视频 | 高清不卡在线观看av| 麻豆精品新av中文字幕| 亚洲成人久久影院| 亚洲国产aⅴ天堂久久| 亚洲人成7777| 亚洲麻豆国产自偷在线| |精品福利一区二区三区| 国产精品激情偷乱一区二区∴| 久久精品欧美一区二区三区麻豆| 精品国产一二三| 欧美精品一区二区三区蜜臀| 日韩免费高清电影| 久久综合色播五月| 久久久久国产精品免费免费搜索| xvideos.蜜桃一区二区| 国产午夜三级一区二区三| 国产网红主播福利一区二区| 国产日产精品一区| 中文字幕一区二区三区不卡在线| 国产精品女同互慰在线看| 日韩一区有码在线| 亚洲在线观看免费| 日韩经典中文字幕一区| 久久99精品久久久久婷婷| 国产综合一区二区| 播五月开心婷婷综合| 在线观看免费亚洲| 51精品国自产在线| 久久久国产精华| 久久久五月婷婷| 亚洲视频一区二区在线观看| 亚洲一区日韩精品中文字幕| 蜜臀精品一区二区三区在线观看 | 99精品视频在线免费观看| 91国偷自产一区二区开放时间| 欧美视频精品在线观看| 欧美一区二区三区免费观看视频| 亚洲精品一区在线观看| 中文字幕一区二区三区四区 | 性欧美大战久久久久久久久| 毛片基地黄久久久久久天堂| 国产精品996| 91久久人澡人人添人人爽欧美| 在线观看91精品国产麻豆| 国产日韩欧美综合一区| 亚洲国产综合人成综合网站| 久久99精品久久久久| 91美女片黄在线观看91美女| 欧美一级艳片视频免费观看| 国产精品女同一区二区三区| 婷婷开心激情综合| 成人网页在线观看| 欧美一区二区三区免费| 亚洲天堂成人在线观看| 青青草原综合久久大伊人精品优势| 成人中文字幕合集| 91精品免费观看| 亚洲靠逼com| 国产成人精品三级| 国产成人精品一区二区三区网站观看| 日本道色综合久久| 亚洲国产精品成人久久综合一区| 亚洲高清久久久| av在线不卡观看免费观看| 欧美一区二区三区思思人| 《视频一区视频二区| 国产乱国产乱300精品| 在线播放亚洲一区| 亚洲美女区一区| www.亚洲精品| 久久久亚洲午夜电影| 青青草成人在线观看| 欧美又粗又大又爽| 1000部国产精品成人观看| 国产精品69毛片高清亚洲| 日韩你懂的在线播放| 亚洲v中文字幕| 在线一区二区视频| 综合久久久久久| 成人av网在线| 国产精品久久99| 成人一区二区三区中文字幕| 2024国产精品视频| 国产专区欧美精品| xnxx国产精品| 日产欧产美韩系列久久99| 欧美日韩国产美|