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

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

?? hac.c

?? WinCE5.0BSP for Renesas SH7770
?? C
?? 第 1 頁(yè) / 共 4 頁(yè)
字號(hào):
		Loop_n++;
		if(Loop_n > 500){
			DEBUGMSG(ZONE_ERROR, (TEXT("Error! Audio CODEC not ready! \r\n")));
			goto error_ret4;
		}
		if ( Wait_Status((ULONG)0x00026000) == FALSE ) goto error_ret4;
		CSDR_VALUE = (ULONG)READ_REGISTER_ULONG((PULONG)pHAC_CSDR);
	}

	DEBUGMSG(ZONE_INIT, (TEXT("ADC DAC ANL Ready!!\r\n")));
	DEBUGMSG(ZONE_TEST, (TEXT("Loop no = %08x\r\n"), (ULONG)Loop_n));

	WRITE_REGISTER_ULONG((PULONG)pHAC_TSR, (ULONG)(READ_REGISTER_ULONG(pHAC_TSR) & ~(HAC_TSR_CMDAMT|HAC_TSR_CMDDMT)));


	// VRA(Variable Rate Audio) set
	if (Write_codec( (ULONG)0x0002A000, (ULONG)0x00000010 ) == FALSE)	// Set Variable Rate Enable
		goto error_ret4;

	// CODEC parameters
	ulCurrentPlaySamplingRate = 44100 << 4;
	ulCurrentRecSamplingRate = 44100 << 4;
	ulMasterVol = 0x0000 << 4;	// Full Volume
	ulPCMoutVol = 0x0404 << 4;
	ulRecGain   = 0x0606 << 4;
	ulRecSel    = 0x0000 << 4;	// Mic (default)
	ulMicVol    = 0x0008 << 4;	// Mic mixing volume
//	ulLineInVol = 0x8000 << 4;	// Line in mixing volume - mute
	ulLineInVol = 0x0808 << 4;	// Line in mixing volume

#if AC97_USE_MIC == 1
	ulRecSel = 0x0000 << 4; // Mic
#endif
#if AC97_USE_LINE_IN == 1
	ulRecSel = 0x0404 << 4; // Line In 
#endif

	if (Write_codec( (ULONG)0x00002000, (ULONG)ulMasterVol ) == FALSE)	// Set Master Volume
		goto error_ret4;

	if (Write_codec( (ULONG)0x00018000, (ULONG)ulPCMoutVol ) == FALSE)	// Set PCM Out Volume
		goto error_ret4;

	if (Write_codec( (ULONG)0x00032000, (ULONG)ulCurrentRecSamplingRate ) == FALSE)		// Set ADC Sample rate
		goto error_ret4;

	if (Write_codec( (ULONG)0x0002C000, (ULONG)ulCurrentPlaySamplingRate ) == FALSE)	// Set DAC Sample rate
		goto error_ret4;

	if (Write_codec( (ULONG)0x0000A000, (ULONG)0x00080000 ) == FALSE)	// Set BEEP
		goto error_ret4;

	//Audio in set up  start
	if (Write_codec( (ULONG)0x0001C000, (ULONG)ulRecGain ) == FALSE)	// Set DAC Sample rate
		goto error_ret4;

	if (Write_codec( (ULONG)0x0001A000, (ULONG)ulRecSel ) == FALSE)		// Set Record Select
		goto error_ret4;

	if (Write_codec( (ULONG)0x0000E000, (ULONG)ulMicVol ) == FALSE)		// Set Mic Volume
		goto error_ret4;

	if (Write_codec( (ULONG)0x00010000, (ULONG)ulLineInVol ) == FALSE)	// Set Line In Volume
		goto error_ret4;

	//Audio in set up end

	if ( Wait_Status((ULONG)0x00002000) == FALSE ) goto error_ret4;
	DEBUGMSG(ZONE_TEST, (TEXT("Master Vol =%08x\r\n"), (ULONG)READ_REGISTER_ULONG((PULONG)pHAC_CSDR )));
	if ( Wait_Status((ULONG)0x00018000) == FALSE ) goto error_ret4;
	DEBUGMSG(ZONE_TEST, (TEXT("PCM    Vol =%08x\r\n"), (ULONG)READ_REGISTER_ULONG((PULONG)pHAC_CSDR )));
	if ( Wait_Status((ULONG)0x0002A000) == FALSE ) goto error_ret4;
	DEBUGMSG(ZONE_TEST, (TEXT("VRA        =%08x\r\n"), (ULONG)READ_REGISTER_ULONG((PULONG)pHAC_CSDR )));
	if ( Wait_Status((ULONG)0x00032000) == FALSE ) goto error_ret4;
	DEBUGMSG(ZONE_TEST, (TEXT("ADC rate   =%08x\r\n"), (ULONG)READ_REGISTER_ULONG((PULONG)pHAC_CSDR )));
	if ( Wait_Status((ULONG)0x0002C000) == FALSE ) goto error_ret4;
	DEBUGMSG(ZONE_TEST, (TEXT("DAC rate   =%08x\r\n"), (ULONG)READ_REGISTER_ULONG((PULONG)pHAC_CSDR )));
	if ( Wait_Status((ULONG)0x0000E000) == FALSE ) goto error_ret4;
	DEBUGMSG(ZONE_TEST, (TEXT("Mic    Vol =%08x\r\n"), (ULONG)READ_REGISTER_ULONG((PULONG)pHAC_CSDR )));

	//DQR_En
	if ( Wait_Status((ULONG)0x0007c000) == FALSE ) goto error_ret4;
	REG_VALUE = (ULONG)READ_REGISTER_ULONG((PULONG)pHAC_CSDR );

	return	TRUE;

error_ret4:
	if(Loop_r < AC97_RETRTY_MAX) goto reset_codec;
	RETAILMSG(1, (TEXT("AC97: Init Error!\r\n")));
	return	FALSE;
}


/*****************************************************************************
*   FUNCTION :  	module_txdmastart
*   DESCRIPTION :	HAC Tx Start
*   INPUTS :		None
*   OUTPUTS :     	None
*   DESIGN NOTES :  
*   CAUTIONS :		
*****************************************************************************/
VOID
module_txdmastart(
   VOID
   )
{
	ULONG	RegValue;

	FUNC_WPDD("+hac_txdmastart");

	RegValue  = READ_REGISTER_ULONG((PULONG)pHAC_ACR);
    RegValue |= (ULONG)(HAC_ACR_TX12_ATOMIC | HAC_ACR_DMATX16);
	WRITE_REGISTER_ULONG((PULONG)pHAC_ACR, (ULONG)RegValue );

	FUNC_WPDD("-hac_txdmastart");
}


/*****************************************************************************
*   FUNCTION :  	module_txstop
*   DESCRIPTION :	HAC Tx Stop
*   INPUTS :		None
*   OUTPUTS :     	None
*   DESIGN NOTES :  
*   CAUTIONS :		
*****************************************************************************/
VOID
module_txstop(
   VOID
   )
{
	FUNC_WPDD("+hac_txstop");

	WRITE_REGISTER_ULONG((PULONG)pHAC_ACR,
			(READ_REGISTER_ULONG((PULONG)pHAC_ACR) & ~(ULONG)(HAC_ACR_DMATX16)) |
								  (ULONG)HAC_ACR_TX12_ATOMIC );

	FUNC_WPDD("-hac_txstop");
}


/*****************************************************************************
*   FUNCTION :  	module_rxdmastart
*   DESCRIPTION :	HAC Rx Start
*   INPUTS :		None
*   OUTPUTS :     	None
*   DESIGN NOTES :  
*   CAUTIONS :		
*****************************************************************************/
VOID
module_rxdmastart(
   VOID
   )
{
	ULONG	RegValue;

	FUNC_WPDD("+hac_rxdmastart");

	RegValue  = READ_REGISTER_ULONG((PULONG)pHAC_ACR);
	RegValue |= (ULONG)(HAC_ACR_TX12_ATOMIC | HAC_ACR_DMARX16);
	WRITE_REGISTER_ULONG((PULONG)pHAC_ACR, (ULONG)RegValue );

	FUNC_WPDD("-hac_rxdmastart");
}


/*****************************************************************************
*   FUNCTION :  	module_rxstop
*   DESCRIPTION :	HAC Rx Stop
*   INPUTS :		None
*   OUTPUTS :     	None
*   DESIGN NOTES :  
*   CAUTIONS :		
*****************************************************************************/
VOID
module_rxstop(
   VOID
   )
{
	FUNC_WPDD("+hac_rxstop");

	WRITE_REGISTER_ULONG((PULONG)pHAC_ACR,
			(READ_REGISTER_ULONG((PULONG)pHAC_ACR) & ~(ULONG)(HAC_ACR_DMARX16)) |
								  (ULONG)HAC_ACR_TX12_ATOMIC );

	FUNC_WPDD("-hac_rxstop");
}


/*****************************************************************************
*   FUNCTION :  	module_txstart
*   DESCRIPTION :	HAC Tx Start
*   INPUTS :		None
*   OUTPUTS :     	None
*   DESIGN NOTES :  
*   CAUTIONS :		
*****************************************************************************/
VOID
module_txstart(
   VOID
   )
{
	FUNC_WPDD("+hac_txstart");

	WRITE_REGISTER_ULONG((PULONG)pHAC_CR, HAC_CR_ST|HAC_CR_RESERVE);
	WRITE_REGISTER_ULONG((PULONG)pHAC_ACR,
			(READ_REGISTER_ULONG((PULONG)pHAC_ACR) | (ULONG)HAC_ACR_TX12_ATOMIC) );	// ATOMIC Enable

	FUNC_WPDD("-hac_txstart");
}


/*****************************************************************************
*   FUNCTION :  	module_rxstart
*   DESCRIPTION :	HAC Rx Start
*   INPUTS :		None
*   OUTPUTS :     	None
*   DESIGN NOTES :  
*   CAUTIONS :		
*****************************************************************************/
VOID
module_rxstart(
   VOID
   )
{
	FUNC_WPDD("+hac_rxstart");

	WRITE_REGISTER_ULONG((PULONG)pHAC_CR, HAC_CR_ST|HAC_CR_RESERVE);
	WRITE_REGISTER_ULONG((PULONG)pHAC_ACR,
			(READ_REGISTER_ULONG((PULONG)pHAC_ACR) | (ULONG)HAC_ACR_TX12_ATOMIC) );	// ATOMIC Enable

	FUNC_WPDD("-hac_rxstart");
}


/*****************************************************************************
*   FUNCTION :  	Wait_CSAR
*   DESCRIPTION :   wait for CSAR register empty
*   INPUTS :		None
*   OUTPUTS :     	None
*   DESIGN NOTES :
*   CAUTIONS :		
*****************************************************************************/
BOOL Wait_CSAR(void)
{
	DWORD	i;

	i = 0;
	while(( READ_REGISTER_ULONG((PULONG)pHAC_TSR ) & HAC_TSR_CMDAMT ) != HAC_TSR_CMDAMT)
	{
		BusyWait(AdjustMicroSecondsToLoopCount( 21 ));	// wait 21us
		i++;
		if ( i > 10000 ){
			DEBUGMSG(ZONE_ERROR, (TEXT("AC97:Time out error in Wait_CSAR !\r\n")));
			return FALSE;
		}
	}
	WRITE_REGISTER_ULONG((PULONG)pHAC_TSR, (ULONG)(READ_REGISTER_ULONG(pHAC_TSR) & ~HAC_TSR_CMDAMT));
	return TRUE;
}

/*****************************************************************************
*   FUNCTION :  	Wait_CSDR
*   DESCRIPTION :   wait for CSDR register empty
*   INPUTS :		None
*   OUTPUTS :     	None
*   DESIGN NOTES :
*   CAUTIONS :		
*****************************************************************************/
BOOL Wait_CSDR(void)
{
	DWORD	i;

	i = 0;
	while(( (ULONG)READ_REGISTER_ULONG((PULONG)pHAC_TSR ) & HAC_TSR_CMDDMT ) != HAC_TSR_CMDDMT)
	{
		BusyWait(AdjustMicroSecondsToLoopCount( 21 ));	// wait 21us
		i++;
		if ( i > 10000 ){
			DEBUGMSG(ZONE_ERROR, (TEXT("AC97:Time out error in Wait_CSDR !\r\n")));
			return FALSE;
		}
	}

	WRITE_REGISTER_ULONG((PULONG)pHAC_TSR, (ULONG)(READ_REGISTER_ULONG(pHAC_TSR) & ~HAC_TSR_CMDDMT));
	return TRUE;
}


/*****************************************************************************
*   FUNCTION :  	Wait_AddrRdy
*   DESCRIPTION :   wait for Status Address Ready
*   INPUTS :		None
*   OUTPUTS :     	None
*   DESIGN NOTES :
*   CAUTIONS :		
*****************************************************************************/
BOOL Wait_AddrRdy(void)
{
	DWORD	i;

	i = 0;
	while(( (ULONG)READ_REGISTER_ULONG((PULONG)pHAC_RSR ) & HAC_RSR_STARY ) != HAC_RSR_STARY)
	{
		BusyWait(AdjustMicroSecondsToLoopCount( 21 ));	// wait 21us
		i++;
		if ( i > 10000 ){
			DEBUGMSG(ZONE_ERROR, (TEXT("AC97:Time out error in Wait_AddrRdy !\r\n")));
			return FALSE;
		}
	}

	WRITE_REGISTER_ULONG((PULONG)pHAC_RSR, READ_REGISTER_ULONG(pHAC_RSR) & ~HAC_RSR_STARY );
	return TRUE;
}

/*****************************************************************************
*   FUNCTION :  	Wait_DataRdy
*   DESCRIPTION :   wait for Status Data Ready
*   INPUTS :		None
*   OUTPUTS :     	None
*   DESIGN NOTES :
*   CAUTIONS :		
*****************************************************************************/
BOOL Wait_DataRdy(void)
{
	DWORD	i;

	i = 0;
	while(( (ULONG)READ_REGISTER_ULONG((PULONG)pHAC_RSR ) & HAC_RSR_STDRY ) != HAC_RSR_STDRY)
	{
		BusyWait(AdjustMicroSecondsToLoopCount( 21 ));	// wait 21us
		i++;
		if ( i > 10000 ){
			DEBUGMSG(ZONE_ERROR, (TEXT("AC97:Time out error in Wait_DataRdy !\r\n")));
			return FALSE;
		}
	}

	WRITE_REGISTER_ULONG((PULONG)pHAC_RSR, READ_REGISTER_ULONG(pHAC_RSR) & ~HAC_RSR_STDRY );
	return TRUE;
}

/*****************************************************************************
*   FUNCTION :  	Wait_Status
*   DESCRIPTION :   wait for Status data
*   INPUTS :		CODEC register address 
*   OUTPUTS :     	None
*   DESIGN NOTES :
*   CAUTIONS :		
*****************************************************************************/
BOOL Wait_Status(
	ULONG RegAddr
	)
{
	DWORD	i;
	ULONG	CSAR_VALUE;

	i = 0;
	WRITE_REGISTER_ULONG( (PULONG)pHAC_RSR, (ULONG)0x00000000 );
	WRITE_REGISTER_ULONG( (PULONG)pHAC_CSAR, (ULONG)RegAddr | 0x00080000 );

	BusyWait(AdjustMicroSecondsToLoopCount( 1 ));		// wait 1us
	WRITE_REGISTER_ULONG( (PULONG)pHAC_CSAR, (ULONG)RegAddr | 0x00080000 );

	if ( Wait_CSAR() == FALSE ) return FALSE;

	if ( Wait_AddrRdy() == FALSE ) return FALSE;
	CSAR_VALUE = (ULONG)( READ_REGISTER_ULONG((PULONG)pHAC_CSAR) & 0x0007F000 );
	while ( CSAR_VALUE != RegAddr ){
		BusyWait(AdjustMicroSecondsToLoopCount( 21 ));	// wait 21us
		i++;
		if ( i > 10000 ){
			DEBUGMSG(ZONE_ERROR, (TEXT("AC97:Time out error in Wait_Status(%08x) !\r\n"), CSAR_VALUE ));
			return FALSE;
		}
		if ( Wait_AddrRdy() == FALSE ) return FALSE;
		CSAR_VALUE = (ULONG)( READ_REGISTER_ULONG((PULONG)pHAC_CSAR) & 0x0007F000 );
	}

	if ( Wait_DataRdy() == FALSE ) return FALSE;

	return TRUE;
}


/*****************************************************************************
*   FUNCTION :  	Write_codec
*   DESCRIPTION :   wait for Status data
*   INPUTS :		CODEC register address and data
*   OUTPUTS :     	None
*   DESIGN NOTES :
*   CAUTIONS :		
*****************************************************************************/
BOOL Write_codec(
	ULONG RegAddr,
	ULONG RegData
	)
{
	DWORD	i;

	i = 0;
Retry:

	if ( READ_REGISTER_ULONG(pHAC_TSR) & HAC_TSR_CMDDMT )
		WRITE_REGISTER_ULONG((PULONG)pHAC_TSR, (ULONG)(READ_REGISTER_ULONG(pHAC_TSR) & ~HAC_TSR_CMDDMT));
		
	if ( READ_REGISTER_ULONG(pHAC_TSR) & HAC_TSR_CMDAMT )
		WRITE_REGISTER_ULONG((PULONG)pHAC_TSR, (ULONG)(READ_REGISTER_ULONG(pHAC_TSR) & ~HAC_TSR_CMDAMT));

	i++;
	if (i>5) return FALSE;
	WRITE_REGISTER_ULONG((PULONG)pHAC_CSDR, RegData);	// Set data 
	WRITE_REGISTER_ULONG((PULONG)pHAC_CSAR, RegAddr);  // Set address

	BusyWait(AdjustMicroSecondsToLoopCount( 1 ));		// wait 1us
	WRITE_REGISTER_ULONG((PULONG)pHAC_CSAR, RegAddr);  // Set address

	if ( Wait_CSDR() == FALSE ) goto Retry;
	if ( Wait_CSAR() == FALSE ) goto Retry;

	//verify pHAC_CSAR
	if ( Wait_Status((ULONG)RegAddr) == FALSE ) goto Retry;

	return TRUE;
}

/*****************************************************************************

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧洲精品一区二区| 国产日韩欧美精品综合| 偷拍一区二区三区四区| 日本道在线观看一区二区| 亚洲精品欧美综合四区| 欧美色图在线观看| 免费在线观看日韩欧美| 精品国产1区2区3区| 国产一区二区精品久久99| 国产日韩视频一区二区三区| www.成人网.com| 亚洲一区二区三区不卡国产欧美| 欧美日韩精品是欧美日韩精品| 蜜桃久久久久久| 国产欧美一区二区精品性| 99视频有精品| 丝袜国产日韩另类美女| 精品动漫一区二区三区在线观看| 粉嫩绯色av一区二区在线观看| 亚洲免费三区一区二区| 欧美美女网站色| 高潮精品一区videoshd| 亚洲激情av在线| 日韩欧美电影一二三| 粉嫩蜜臀av国产精品网站| 一二三四区精品视频| 日韩欧美国产一区二区在线播放| 国产一区二区女| 亚洲永久免费视频| 精品国产成人在线影院| 91视频观看视频| 麻豆精品新av中文字幕| 亚洲视频在线观看三级| 日韩一区二区麻豆国产| 97久久精品人人澡人人爽| 天天综合色天天综合| 欧美国产综合一区二区| 欧美精品乱码久久久久久| 国产成人精品影视| 日韩中文字幕亚洲一区二区va在线| 久久精品亚洲精品国产欧美kt∨| 欧美伊人久久久久久久久影院 | 成人午夜免费视频| 偷拍一区二区三区四区| 亚洲色大成网站www久久九九| 欧美xxxx老人做受| 欧美片网站yy| 91免费版pro下载短视频| 九九视频精品免费| 日本亚洲三级在线| 亚洲黄色片在线观看| 国产欧美日韩精品在线| 日韩美女天天操| 欧美精品自拍偷拍动漫精品| 91丨porny丨国产入口| 国产一区二区三区日韩| 美腿丝袜亚洲色图| 日韩av中文字幕一区二区| 亚洲日本在线a| 中文字幕一区二区三| 久久九九国产精品| 久久只精品国产| 日韩欧美国产三级| 91精品国产日韩91久久久久久| 在线视频国内自拍亚洲视频| 99精品视频一区| 国产成人精品影视| 另类中文字幕网| 日本伊人午夜精品| 日本一不卡视频| 美女尤物国产一区| 日本aⅴ亚洲精品中文乱码| 午夜av区久久| 爽爽淫人综合网网站| 婷婷夜色潮精品综合在线| 亚洲一区二区在线免费观看视频| 亚洲欧美欧美一区二区三区| 亚洲人被黑人高潮完整版| 中文字幕日韩一区| 日本一二三四高清不卡| 国产精品免费视频网站| 国产亚洲欧美在线| 亚洲国产精品精华液ab| 亚洲人亚洲人成电影网站色| 日韩一区在线播放| 一区二区三区四区在线免费观看 | 久久久99精品免费观看| 精品91自产拍在线观看一区| 久久亚洲综合av| 中文字幕免费不卡| 日韩一区在线看| 午夜精彩视频在线观看不卡| 男人的j进女人的j一区| 狠狠色丁香久久婷婷综合丁香| 国产裸体歌舞团一区二区| 国产成人综合在线| 色综合一区二区三区| 欧美日韩国产片| 亚洲精品在线观| 国产精品亲子伦对白| 一区二区三区四区激情| 日韩国产欧美三级| 国产精品系列在线观看| 91丨porny丨蝌蚪视频| 欧美乱妇20p| 国产欧美精品日韩区二区麻豆天美| 《视频一区视频二区| 亚洲成人自拍偷拍| 卡一卡二国产精品 | 极品少妇一区二区| bt7086福利一区国产| 欧美色老头old∨ideo| 日韩丝袜美女视频| 国产精品麻豆视频| 秋霞国产午夜精品免费视频| 成人晚上爱看视频| 欧美日本视频在线| 亚洲国产成人自拍| 偷偷要91色婷婷| 99在线视频精品| 欧美tk丨vk视频| 亚洲精品高清在线观看| 国产综合成人久久大片91| 91在线小视频| 精品999久久久| 亚洲第一福利一区| 成人精品国产福利| 欧美一区二区三区四区视频 | 亚洲在线成人精品| 国产精品伊人色| 精品视频一区二区三区免费| 久久久另类综合| 日本不卡的三区四区五区| av亚洲精华国产精华| 精品99一区二区三区| 日本最新不卡在线| 色婷婷精品久久二区二区蜜臂av | 国产精品毛片a∨一区二区三区| 午夜精品爽啪视频| 91小视频免费观看| 国产蜜臀av在线一区二区三区| 日本vs亚洲vs韩国一区三区二区| 99久久婷婷国产精品综合| 久久久亚洲精品一区二区三区 | 青青草国产成人99久久| 色婷婷亚洲精品| 中文字幕一区二区三中文字幕| 久久疯狂做爰流白浆xx| 欧美日韩成人激情| 夜夜嗨av一区二区三区四季av | 亚洲综合在线电影| 97久久超碰国产精品电影| 国产清纯美女被跳蛋高潮一区二区久久w | 免费美女久久99| 欧美视频一二三区| 亚洲精品v日韩精品| 成人精品一区二区三区中文字幕| 精品国产凹凸成av人网站| 男女男精品视频| 91精品国产综合久久蜜臀| 亚洲一区二区欧美日韩| 欧美亚洲自拍偷拍| 一区二区三区在线视频观看58| 色婷婷国产精品久久包臀 | 欧美日韩精品一区二区三区蜜桃 | 九一九一国产精品| 欧美不卡激情三级在线观看| 日本aⅴ亚洲精品中文乱码| 欧美精品久久久久久久多人混战 | 精品黑人一区二区三区久久| 日韩av一区二区在线影视| 欧美一级黄色片| 激情av综合网| 久久九九全国免费| 成人深夜在线观看| 亚洲人成人一区二区在线观看 | jvid福利写真一区二区三区| 国产精品欧美久久久久无广告| 成人av先锋影音| 亚洲欧美另类久久久精品| 91成人国产精品| 五月婷婷另类国产| 欧美成人性战久久| 国产盗摄一区二区三区| ㊣最新国产の精品bt伙计久久| 色综合色综合色综合色综合色综合 | 亚洲综合激情网| 在线综合亚洲欧美在线视频| 久久精品72免费观看| 久久噜噜亚洲综合| 91视频.com| 日韩va欧美va亚洲va久久| 久久九九全国免费| 欧美性色aⅴ视频一区日韩精品| 水野朝阳av一区二区三区| 精品对白一区国产伦| 国产一区二区三区精品欧美日韩一区二区三区 | 欧美激情在线一区二区三区| 91蜜桃网址入口| 日韩成人av影视|