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

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

?? extdma.c

?? 基于s3c2410的arm920t的DMA編程
?? C
字號(hào):
#include <string.h>
#include "2410addr.h"
#include "2410lib.h"
#include "option.h"
#include "def.h"

void _Dma0XdreqHandshakeUnit8bit(void);	    //SET_XDREQ16()
void _Dma0XdreqHandshakeUnit16bit(void);    //SET_XDREQ16()
void _Dma0XdreqHandshakeUnit32bit(void);    //SET_XDREQ16()
void _Dma0XdreqHandshakeBurst16bit(void);   //SET_XDREQ16()

void _Dma0XdreqDemandUnit16bit(void);	    //SET_XDREQDm()
void _Dma0XdreqDemandBurst16bit(void);	    //SET_XDREQDm()

void _Dma0XdreqWholeUnit16bit(void);	    //SET_XDREQ1()
void _Dma0XdreqWholeBurst16bit(void);	    //SET_XDREQ1()


#define BUS8		(0)
#define BUS16		(1)
#define BUS32		(2)

//GPG9  = DMAMODE0
//GPG10 = DMAMODE1
//GPG8  = nDMASTART

#define SET_XDREQ16()	rGPGDAT=(rGPGDAT&~(3<<9))|(0x1<<9)    //xxx01xxx handshake
#define SET_XDREQ1()	rGPGDAT=(rGPGDAT&~(3<<9))|(0x2<<9)    //xxx10xxx whole
#define START_XDREQ()	{rGPGDAT=(rGPGDAT&~(1<<8))|(0x0<<8);\
			rGPGDAT=(rGPGDAT&~(1<<8))|(0x1<<8);} //xxx1xxx -> xxx0xxx -> xxx1xxx
#define SET_XDREQDm()	rGPGDAT=(rGPGDAT&~(3<<9))|(0x3<<9)    //xxx11xxx demand
//DMAMODE[1:0]:	01b= 16 time requests   
//		10b= one time request
//		11b= demand request

volatile int isDma0Done;

//Verilog code for data bus pins of the EPM7032AE
//assign data[3:0] = (!nGCS && !nOE ) ? wdata:4'bz;


void IsrDma0Done(void)
{
    ClearPending(BIT_DMA0);
    isDma0Done=1;
}


void Test_Dma0Xdreq(void)
{
    U32 savePLLCON,saveCLKDIVN;


    rINTMSK=BIT_ALLMSK;
    pISR_DMA0=(U32)IsrDma0Done;
    rINTMSK=~(BIT_DMA0);

    saveCLKDIVN=rCLKDIVN;
    savePLLCON=rMPLLCON;

    Uart_TxEmpty(0);
    ChangeClockDivider(1,1);	    // 1:2:4 
    ChangeMPllValue(0x5c,0x4,0x1);  //Fin=12MHz FCLK=100MHz
    Uart_Init(25000000,115200);

    rGPBCON=(rGPBCON & (~(0xf<<18))) | (0xa<<18);   //GPB9=nXDACK0, GPB10=nXDREQ0
    //rMISCCR=(rMISCCR & (~(0xf<<4))) | (0x3<<4);   // reset value = nRSTCON bit is high
    rMISCCR=0x330;	//HCLK
    rGPHCON=(rGPHCON & (~(0x3<<18))) | (0x2<<18);   //GPH9=CLKOUT0
    
    rGPGDAT &= (0x9<<8);    // DMAMODE[1:0]=00
    rGPGDAT |= (0x1<<8);    // nDMASTART=1;
    rGPGCON=(rGPGCON & (~(0x3f<<16))) | (0x15<<16);   //GPG8=nDMASTART,GPG9=DMAMODE0,GPG10=DMAMODE1

    Uart_Printf("Test Menu for Dma0 nXDREQ/nXDACK\n");
    Uart_Printf("1: Single/handshake/unit/8bit   src:GCS0(16)  dst:SDRAM(32)\n");
    Uart_Printf("2: Single/handshake/unit/16bit  src:GCS0(16)  dst:SDRAM(32)\n");
    Uart_Printf("3: Single/handshake/unit/32bit  src:GCS0(16)  dst:SDRAM(32)\n");
    Uart_Printf("4: Single/handshake/burst/16bit src:GCS0(16)  dst:SDRAM(32)\n");
    Uart_Printf("5: Whole/handshake/unit/16bit   src:GCS0(16)  dst:SDRAM(32)\n");
    Uart_Printf("6: Whole/handshake/burst/16bit  src:GCS0(16)  dst:SDRAM(32)\n");
//    Uart_Printf("7: Single/Demand/unit/16bit     src:GCS0(16)  dst:SDRAM(32)\n");
//    Uart_Printf("8: Single/Demand/burst/16bit    src:GCS0(16)  dst:SDRAM(32)\n");
    Uart_Printf("Select the item?\n");

    switch(Uart_Getch())
    {
    case '1':
    	_Dma0XdreqHandshakeUnit8bit();
    	break;
    case '2':
    	_Dma0XdreqHandshakeUnit16bit();
    	break;
    case '3':
    	_Dma0XdreqHandshakeUnit32bit();
    	break;
    case '4':
    	_Dma0XdreqHandshakeBurst16bit();
    	break;
    case '5':
    	_Dma0XdreqWholeUnit16bit();
    	break;
    case '6':
    	_Dma0XdreqWholeBurst16bit();
    	break;
/*    case '7':
	_Dma0XdreqDemandUnit16bit();
	break;
    case '8':
	_Dma0XdreqDemandBurst16bit();
	break;*/
    default:
    	break;
    }
    rINTMSK=BIT_ALLMSK;

    Uart_TxEmpty(0);
    rCLKDIVN=saveCLKDIVN;
    rMPLLCON=savePLLCON;
    Uart_Init(0,115200);
}

void _Dma0XdreqHandshakeUnit8bit(void)
{
    int i;
    static U8 *bufDst;
    
    Uart_Printf("[Dma0,Single,handShake,unit,8bit Test,B0->SDRAM]\n");
    //Uart_Printf("NOTE:Ignore bit[3:0]!!\n");//?????

    bufDst=(U8 *)0x31000000;//Non cacheable area

    for(i=0;i<16;i++)
	bufDst[i]=0;
    
    isDma0Done=0;

    rDISRC0=(int)(0x0);	// B0
    rDISRCC0=(0<<1)+(0<<0);	// AHB, inc
    rDIDST0=(U32)(bufDst);	// bufDst
    rDIDSTC0=(0<<1)+(0<<0);	// AHB, inc
    rDCON0=(1<<31)+(1<<30)+(1<<29)+(0<<28)+(0<<27)+(0<<24)+(1<<23)+(1<<22)+(0<<20)+16;
    //handshake, sync HCLK, TC int, single tx, single service, nXDREQ0, H/W request, 
    //auto-reload off, byte, 16
    rDMASKTRIG0=(0<<2)+(1<<1)+0;    //no-stop, DMA2 channel on, no-sw trigger 


    SET_XDREQ16();
    START_XDREQ();
    
    while(isDma0Done==0);
    
    for(i=0;i<16;i++)
	Uart_Printf( "%2x,",*((U8 *)0x0+i) );
    Uart_Printf("\n");
    for(i=0;i<16;i++)
	Uart_Printf("%2x,",bufDst[i]);
}

void _Dma0XdreqHandshakeUnit16bit(void)
{
    int i;
    static U16 *bufDst;

    Uart_Printf("[Dma0,Single,HandShake,unit,16bit Test,B0->SDRAM]\n");

    bufDst=(U16 *)0x31000000;//Non cacheable area

    for(i=0;i<16;i++)//{bufSrc[i]=i;bufDst[i]=0;}
	bufDst[i]=0;
    
    isDma0Done=0;

    rDISRC0=(int)(0x0);		// B0
    rDISRCC0=(0<<1)+(0<<0);	// AHB, inc
    rDIDST0=(U32)(bufDst);	// bufDst
    rDIDSTC0=(0<<1)+(0<<0);	// AHB, inc
    rDCON0=(1<<31)+(1<<30)+(1<<29)+(0<<28)+(0<<27)+(0<<24)+(1<<23)+(1<<22)+(1<<20)+16;
    //handshake, sync HCLK, TC int, single tx, single service, nXDREQ0, H/W request, 
    //auto-reload off, half word, 16hw
    rDMASKTRIG0=(0<<2)+(1<<1)+0;    //no-stop, DMA2 channel on, no-sw trigger 
    SET_XDREQ16();
    START_XDREQ();
    
    while(isDma0Done==0);

    for(i=0;i<16;i++)
	Uart_Printf("%4x,",*((U16 *)0x0+i));
    Uart_Printf("\n");
    for(i=0;i<16;i++)
	Uart_Printf("%4x,",*((U16 *)bufDst+i));
}

void _Dma0XdreqHandshakeUnit32bit(void)
{
    int i;
    static U32 *bufDst;

    Uart_Printf("[Dma0,HandShake,unit,32bit Test,B0->SDRAM]\n");

    bufDst=(U32 *)0x31000000;//Non cacheable area

    for(i=0;i<16;i++)
	bufDst[i]=0;
    
    isDma0Done=0;

    rDISRC0=(int)(0x0);		// B0
    rDISRCC0=(0<<1)+(0<<0);	// AHB, inc
    rDIDST0=(U32)(bufDst);	// bufDst
    rDIDSTC0=(0<<1)+(0<<0);	// AHB, inc
    rDCON0=(1<<31)+(1<<30)+(1<<29)+(0<<28)+(0<<27)+(0<<24)+(1<<23)+(1<<22)+(2<<20)+16;
    //handshake, sync HCLK, TC int, single tx, single service, nXDREQ0, H/W request, 
    //auto-reload off, word, 16w
    rDMASKTRIG0=(0<<2)+(1<<1)+0;    //no-stop, DMA2 channel on, no-sw trigger 
    
    SET_XDREQ16();
    START_XDREQ();
    
    while(isDma0Done==0);    	
    for(i=0;i<16;i++)
    {
    	Uart_Printf("%8x,",*((U32 *)0+i));
    	if(i%8==7)
	    Uart_Printf("\n");
    }
    
    for(i=0;i<16;i++)
    {
    	Uart_Printf("%8x,",bufDst[i]);
    	if(i%8==7)
	    Uart_Printf("\n");
    }
}

void _Dma0XdreqHandshakeBurst16bit(void)
{
    int i;
    static U16 *bufDst;

    Uart_Printf("[Dma0,HandShake,burst,16bit Test,B0->SDRAM]\n");

    bufDst=(U16 *)0x31000000;//Non cacheable area
    for(i=0;i<64;i++)
	bufDst[i]=0;
    
    isDma0Done=0;
    
    rDISRC0=(int)(0x0);		// B0
    rDISRCC0=(0<<1)+(0<<0);	// AHB, inc
    rDIDST0=(U32)(bufDst);	// bufDst
    rDIDSTC0=(0<<1)+(0<<0);	// AHB, inc
    rDCON0=(1<<31)+(1<<30)+(1<<29)+(1<<28)+(0<<27)+(0<<24)+(1<<23)+(1<<22)+(1<<20)+16;
    //handshake, sync HCLK, TC int, burst tx, single service, nXDREQ0, H/W request, 
    //auto-reload off, half-word, 64hw
    rDMASKTRIG0=(0<<2)+(1<<1)+0;    //no-stop, DMA2 channel on, no-sw trigger 

    SET_XDREQ16();
    START_XDREQ();
    
    while(isDma0Done==0);

    for(i=0;i<64;i++)
    {
	Uart_Printf("%4x,",*((U16 *)0x0+i));
	if(i%8==7)
	    Uart_Printf("\n");
    }
    Uart_Printf("\n");
    for(i=0;i<64;i++)
    {
	Uart_Printf("%4x,",*((U16 *)bufDst+i));
	if(i%8==7)Uart_Printf("\n");
    }
}

void _Dma0XdreqWholeUnit16bit(void)
{
    int i;
    static U16 *bufDst;


    Uart_Printf("[Dma0,Whole,HandShake,unit,16bit Test,B0->SDRAM]\n");
    
    bufDst=(U16 *)0x31000000;//Non cacheable area
    for(i=0;i<16;i++)
	bufDst[i]=0;
    
    isDma0Done=0;

    rDISRC0=(int)(0x0);		// B0
    rDISRCC0=(0<<1)+(0<<0);	// AHB, inc
    rDIDST0=(U32)(bufDst);	// bufDst
    rDIDSTC0=(0<<1)+(0<<0);	// AHB, inc
    rDCON0=(1<<31)+(1<<30)+(1<<29)+(0<<28)+(1<<27)+(0<<24)+(1<<23)+(1<<22)+(1<<20)+16;
    //handshake, sync HCLK, TC int, unit tx, whole service, nXDREQ0, H/W request, 
    //auto-reload off, half-word, 16hw
    rDMASKTRIG0=(0<<2)+(1<<1)+0;    //no-stop, DMA2 channel on, no-sw trigger 

    SET_XDREQ1();
    START_XDREQ();
    
    while(isDma0Done==0);

    for(i=0;i<16;i++)
    {
	Uart_Printf("%4x,",*((U16 *)0x0+i));
	if(i%8==7)
	    Uart_Printf("\n");
    }
    Uart_Printf("\n");
    for(i=0;i<16;i++)
    {
	Uart_Printf("%4x,",*((U16 *)bufDst+i));
	if(i%8==7)Uart_Printf("\n");
    }
}



void _Dma0XdreqWholeBurst16bit(void)
{
    int i;
    static U16 *bufDst;

    Uart_Printf("[Dma0,whole,burst,16bit Test,B0->SDRAM]\n");

    bufDst=(U16 *)0x31000000;//Non cacheable area
    for(i=0;i<64;i++)
	bufDst[i]=0;
    
    isDma0Done=0;

    rDISRC0=(int)(0x0);		// B0
    rDISRCC0=(0<<1)+(0<<0);	// AHB, inc
    rDIDST0=(U32)(bufDst);	// bufDst
    rDIDSTC0=(0<<1)+(0<<0);	// AHB, inc
    rDCON0=(1<<31)+(1<<30)+(1<<29)+(1<<28)+(1<<27)+(0<<24)+(1<<23)+(1<<22)+(1<<20)+16;
    //handshake, sync HCLK, TC int, burst tx, whole service, nXDREQ0, H/W request, 
    //auto-reload off, half-word, 64hw
    rDMASKTRIG0=(0<<2)+(1<<1)+0;    //no-stop, DMA2 channel on, no-sw trigger 

    SET_XDREQ1();
    START_XDREQ();
    
    while(isDma0Done==0);
    
    for(i=0;i<64;i++)
    {
	Uart_Printf("%4x,",*((U16 *)0x0+i));
	if(i%8==7)
	    Uart_Printf("\n");
    }
    Uart_Printf("\n");

    for(i=0;i<64;i++)
    {
    	Uart_Printf("%4x,",bufDst[i]);
    	if(i%8==7)Uart_Printf("\n");
    }
}

// Demand test OK!! with another logic
void _Dma0XdreqDemandUnit16bit(void)
{
    int i;
    static U16 *bufDst;

    Uart_Printf("[Dma0,Single,Demand,unit,16bit Test,B0->SDRAM]\n");
    
    bufDst=(U16 *)0x31000000;//Non cacheable area
    for(i=0;i<16;i++)
	bufDst[i]=0;
    
    isDma0Done=0;

    rDISRC0=(int)(0x0);		// B0
    rDISRCC0=(0<<1)+(0<<0);	// AHB, inc
    rDIDST0=(U32)(bufDst);	// bufDst
    rDIDSTC0=(0<<1)+(0<<0);	// AHB, inc
    rDCON0=(0<<31)+(1<<30)+(1<<29)+(0<<28)+(0<<27)+(0<<24)+(1<<23)+(1<<22)+(1<<20)+16;
    //Demand, sync HCLK, TC int, unit tx, single service, nXDREQ0, H/W request, 
    //auto-reload off, half-word, 16hw
    rDMASKTRIG0=(0<<2)+(1<<1)+0;    //no-stop, DMA2 channel on, no-sw trigger 

    SET_XDREQDm();
    START_XDREQ();
    
    while(isDma0Done==0);

    for(i=0;i<16;i++)
    {
	Uart_Printf("%4x,",*((U16 *)0x0+i));
	if(i%8==7)
	    Uart_Printf("\n");
    }
    Uart_Printf("\n");
    for(i=0;i<16;i++)
    {
	Uart_Printf("%4x,",*((U16 *)bufDst+i));
	if(i%8==7)Uart_Printf("\n");
    }
}


void _Dma0XdreqDemandBurst16bit(void)
{
    int i;
    static U16 *bufDst;

    Uart_Printf("[Dma0,whole,burst,16bit Test,B0->SDRAM]\n");

    bufDst=(U16 *)0x31000000;//Non cacheable area
    for(i=0;i<64;i++)
	bufDst[i]=0;
    
    isDma0Done=0;

    rDISRC0=(int)(0x0);		// B0
    rDISRCC0=(0<<1)+(0<<0);	// AHB, inc
    rDIDST0=(U32)(bufDst);	// bufDst
    rDIDSTC0=(0<<1)+(0<<0);	// AHB, inc
    rDCON0=(0<<31)+(1<<30)+(1<<29)+(1<<28)+(0<<27)+(0<<24)+(1<<23)+(1<<22)+(1<<20)+16;
    //Demand, sync HCLK, TC int, burst tx, single service, nXDREQ0, H/W request, 
    //auto-reload off, half-word, 64hw
    rDMASKTRIG0=(0<<2)+(1<<1)+0;    //no-stop, DMA2 channel on, no-sw trigger 

    SET_XDREQDm();
    START_XDREQ();
    
    while(isDma0Done==0);
    
    for(i=0;i<64;i++)
    {
	Uart_Printf("%4x,",*((U16 *)0x0+i));
	if(i%8==7)
	    Uart_Printf("\n");
    }
    Uart_Printf("\n");

    for(i=0;i<64;i++)
    {
    	Uart_Printf("%4x,",bufDst[i]);
    	if(i%8==7)Uart_Printf("\n");
    }
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久精品国产网站| 欧美手机在线视频| 白白色亚洲国产精品| 91丨porny丨最新| 欧美肥妇free| 欧美国产日韩a欧美在线观看| 亚洲天堂精品视频| 日本中文字幕一区| 国产成人免费在线观看| 91久久线看在观草草青青| 日韩欧美国产高清| 亚洲三级电影网站| 精品一区二区三区免费视频| aaa国产一区| 欧美一级一级性生活免费录像| 国产亚洲欧美色| 亚洲一区二区三区四区的| 国产一区二区在线视频| 欧美中文字幕亚洲一区二区va在线| 日韩欧美专区在线| 亚洲欧美日韩一区二区| 美腿丝袜一区二区三区| 在线观看亚洲精品视频| 久久亚区不卡日本| 亚洲国产日韩一区二区| 国产盗摄精品一区二区三区在线| 欧美日韩卡一卡二| 国产精品成人在线观看 | 色老头久久综合| 欧美成人午夜电影| 一区二区三区免费观看| 国产在线不卡一卡二卡三卡四卡| 在线观看欧美黄色| 欧美国产日产图区| 韩国一区二区三区| 欧美一区二区三区啪啪| 亚洲三级理论片| 懂色av一区二区夜夜嗨| 日韩美女主播在线视频一区二区三区| 一区二区三区在线播| 国产精品99久久久久久久vr| 91精品国产91久久久久久最新毛片 | 亚洲在线一区二区三区| 成人网在线免费视频| 欧美xfplay| 五月天亚洲婷婷| 在线日韩av片| 亚洲女人小视频在线观看| 丁香婷婷综合五月| 久久久午夜精品| 精品一区免费av| 69久久99精品久久久久婷婷| 一区二区三区四区亚洲| k8久久久一区二区三区| 日本一区免费视频| 国产在线日韩欧美| 精品成人免费观看| 久久国内精品自在自线400部| 欧美妇女性影城| 亚洲一区二区欧美日韩| 欧美色电影在线| 亚洲女人的天堂| 一本一道久久a久久精品综合蜜臀 一本一道综合狠狠老 | 亚洲va韩国va欧美va精品| 色噜噜夜夜夜综合网| 亚洲男人天堂一区| 99久久精品情趣| 中文字幕一区二区三区蜜月 | 亚洲激情图片小说视频| 白白色 亚洲乱淫| 亚洲天堂2014| 99vv1com这只有精品| 中文字幕色av一区二区三区| 成人性生交大片免费看视频在线| 国产三级精品三级| 国产91在线看| 国产精品少妇自拍| 波多野结衣中文一区| 亚洲图片另类小说| 色婷婷久久久久swag精品| 亚洲老司机在线| 色88888久久久久久影院野外| 一区二区三区在线免费观看| 欧美性大战久久久久久久蜜臀| 亚洲第一激情av| 欧美一个色资源| 久久精品99久久久| 国产亚洲人成网站| 99re视频这里只有精品| 亚洲一区二区三区小说| 制服丝袜亚洲色图| 精品一区二区三区蜜桃| 国产亚洲精品超碰| 91丝袜国产在线播放| 亚洲国产日韩一区二区| 日韩免费电影网站| 成人综合激情网| 亚洲女人的天堂| 制服丝袜成人动漫| 国产一区二区三区在线看麻豆| 国产日韩欧美麻豆| av成人老司机| 天堂资源在线中文精品| 欧美精品一区二区三区在线播放 | 亚洲欧美日韩国产中文在线| 欧美日本不卡视频| 国内久久婷婷综合| 亚洲精品一二三| 欧美一区永久视频免费观看| 国产精品1区2区3区| 日韩毛片一二三区| 91精品久久久久久蜜臀| 国产高清久久久久| 亚洲一区精品在线| 欧美成人女星排名| 色综合av在线| 久久www免费人成看片高清| 国产精品福利一区二区| 欧美精品 国产精品| 国产精品资源在线观看| 亚洲一区二区四区蜜桃| 欧美成人伊人久久综合网| av亚洲产国偷v产偷v自拍| 首页综合国产亚洲丝袜| 中文在线一区二区| 91精品国产91久久久久久最新毛片 | 日韩欧美的一区二区| 成a人片亚洲日本久久| 免费亚洲电影在线| 亚洲色图丝袜美腿| 精品久久久久久久久久久久包黑料| 99视频精品全部免费在线| 久久精品国产一区二区三| 中文字幕一区二区三中文字幕| 日韩视频在线永久播放| 在线日韩av片| 国产成人av自拍| 老司机精品视频导航| 日韩理论电影院| 国产日韩欧美不卡| 91精品国产日韩91久久久久久| 97国产精品videossex| 国产麻豆成人传媒免费观看| 亚洲第一av色| 亚洲嫩草精品久久| 国产欧美日韩三级| 欧美大片在线观看一区| 欧美日韩国产色站一区二区三区| yourporn久久国产精品| 国产精品一二三四区| 日本成人在线不卡视频| 夜夜精品浪潮av一区二区三区| 欧美国产成人精品| 欧美成人福利视频| 欧美精品少妇一区二区三区| 91麻豆产精品久久久久久| 国产成人精品亚洲午夜麻豆| 美女视频一区二区| 婷婷开心激情综合| 一区二区三区蜜桃网| 亚洲天堂av一区| 国产精品第四页| 欧美激情自拍偷拍| 久久伊99综合婷婷久久伊| 91精品国产一区二区三区| 欧美色男人天堂| 91国产福利在线| 色先锋aa成人| www.性欧美| 99久久精品费精品国产一区二区| 国产成人精品一区二区三区四区 | 日本一区二区三级电影在线观看 | jvid福利写真一区二区三区| 国产成人在线电影| 国产精品99久久久| 国产成人综合亚洲91猫咪| 国产一区二区免费视频| 极品瑜伽女神91| 美日韩黄色大片| 精品系列免费在线观看| 久久黄色级2电影| 国产自产高清不卡| 国产一区二区主播在线| 国产成人啪午夜精品网站男同| 国产麻豆视频精品| 成人手机在线视频| jlzzjlzz国产精品久久| 色婷婷综合久久久中文字幕| 色婷婷av一区| 欧美日韩日日夜夜| 3d成人h动漫网站入口| 精品免费国产二区三区| 久久久久久久久久久久久久久99 | 色综合久久中文综合久久97| 色乱码一区二区三区88| 欧美日韩国产综合一区二区三区| 88在线观看91蜜桃国自产| 精品毛片乱码1区2区3区| 精品国产91乱码一区二区三区 | 欧美丰满高潮xxxx喷水动漫 |