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

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

?? universe.c

?? VxWorks下 Mv2100的BSP源碼
?? C
?? 第 1 頁 / 共 4 頁
字號:
/* universe.c - Tundra Universe chip VME-to-PCI bridge interface library *//* Copyright 1984-2002 Wind River Systems, Inc. *//* Copyright 1996-2000 Motorola, Inc. All Rights Reserved *//*modification history--------------------01j,16apr02,dat  Update for T2.2 release01i,07apr00,srr  Modification history updated to show this came from mv2304.01h,04jun99,rhk  added code to enable the A24 slave window.01g,16apr99,rhk  changed PCI space define names.01f,05apr99,rhk  legacy cleanup, removed references to "raven".01e,05mar99,rhk  changed sysMailbox routines to use LM0 interrupt,		 added support for UNIV II location monitors/mailbox intrs.01d,24feb99,rhk  setup to use dynamic base address for registers.01c,15feb99,dmw  changed include from ravenMpic.h to kahluaEpic.h.01b,11dec98,srr  changed comment from mv2600.h to mv2100.h.01a,11dec98,srr  Written (from version 01v of 2304 bsp).*//*DESCRIPTIONThe routines addressed here include:Initialization of Universe chipBus interrupt functions:.IP "-"enable/disable VMEbus interrupt levels.IP "-"enable/disable additional VME interrupts.IP "-"install handlers for the additional VME interrupts.IP "-"generate bus interruptsMailbox/locations monitor functions:.IP "-"- enable mailbox/location monitor interruptsAll byte I/O is done via the macros UNIV_IN_BYTE and UNIV_OUT_BYTE which may beredefined by the BSP.  By default, sysInByte() and sysOutByte() are used.  Allother I/O (32-bit) is handled by the macros UNIV_IN_LONG and UNIV_OUT_LONGwhich may be redefined by the BSP.  By default, sysPciRead32() andsysPciWrite32() are used.*//* includes */#include "vxWorks.h"#include "config.h"#include "vxLib.h"#include "kahluaEpic.h"#include "universe.h"/* defines */#ifndef UNIV_IN_BYTE# define UNIV_IN_BYTE(adr,pVal) \  *(volatile UCHAR *)(pVal)=sysInByte((volatile ULONG)(adr))#endif#ifndef UNIV_OUT_BYTE# define UNIV_OUT_BYTE(adr,val) \  sysOutByte((volatile ULONG)(adr),(volatile UCHAR)(val))#endif#ifndef UNIV_IN_LONG# define UNIV_IN_LONG(adr,pVal) \  *(UINT32 *)pVal = sysPciInLong((UINT32)(adr));#endif#ifndef UNIV_OUT_LONG# define UNIV_OUT_LONG(adr,val) \  sysPciOutLong((UINT32)(adr),(UINT32)(val));#endif# ifndef CPU_INT_LOCK#   define CPU_INT_LOCK(pData) (*pData = intLock ())# endif# ifndef CPU_INT_UNLOCK#   define CPU_INT_UNLOCK(data) (intUnlock (data))# endif/* forward declarations */LOCAL FUNCPTR sysMailboxRoutine  = NULL;LOCAL int sysMailboxArg          = 0;#ifdef  INCLUDE_VME_DMALOCAL STATUS sysVmeDmaCopy(UCHAR *, UCHAR *, UINT32, UINT32);#endif /* INCLUDE_VME_DMA *//* extern declarations */IMPORT int    intEnable (int);IMPORT int    intDisable (int);IMPORT void   sysOutByte (ULONG, UCHAR);IMPORT UCHAR  sysInByte (ULONG);IMPORT void   sysPciRead32  (UINT32, UINT32 *);IMPORT void   sysPciWrite32 (UINT32, UINT32);IMPORT void   sysUsDelay (UINT32);IMPORT INT_HANDLER_DESC * sysIntTbl [256];/* globals */int    sysUnivIntsEnabled = 0;	/* currently enabled Universe interrupts */int    sysUnivIntLevel    = 0;	/* current level at which ints are disabled */UINT32 sysUnivVERRCnt     = 0;	/* #VME errors since power on */UINT32 univBaseAdrs;/* * Universe interrupt priority mapping table  * * Interrupt priority level is equal to the index into the following array * where 0 is the lowest priority.  The prioritization scheme used here * is arbitrary.  If the scheme is changed, the interrupt masks (last column) * must be redefined accordingly.  See universe.h and the Universe Manual for * bit assignments and further information. */static INT_LEVEL_MAP univIntTable[UNIV_NUM_INT + 1] =  {  /* Int Bit Mask	       Int Vector		 Int Level Mask */  /* ------------------------  ------------------------  -------------- */    {0,                        0,                         0x00FFF7FF},    {UNIVERSE_VOWN_INT,        UNIV_VOWN_INT_VEC,         0x00FFF7FE},    {UNIVERSE_LM1_INT,	       UNIV_LM1_INT_VEC,	  0x00DFF7FE},    {UNIVERSE_LM2_INT,	       UNIV_LM2_INT_VEC,          0x009FF7FE},    {UNIVERSE_LM3_INT,         UNIV_LM3_INT_VEC,          0x001FF7FE},    {UNIVERSE_MBOX0_INT,       UNIV_MBOX0_INT_VEC,	  0x001EF7FE},    {UNIVERSE_MBOX1_INT,       UNIV_MBOX1_INT_VEC,        0x001CF7FE},    {UNIVERSE_MBOX2_INT,       UNIV_MBOX2_INT_VEC,        0x0018F7FE},    {UNIVERSE_MBOX3_INT,       UNIV_MBOX3_INT_VEC,        0x0010F7FE},    {LVL1,                     -1,                        0x0010F7FC},    {LVL2,                     -1,                        0x0010F7F8},    {LVL3,                     -1,                        0x0010F7F0},    {LVL4,                     -1,                        0x0010F7E0},    {LVL5,                     -1,                        0x0010F7C0},    {LVL6,                     -1,                        0x0010F780},    {LVL7,                     -1,                        0x0010F700},    {UNIVERSE_DMA_INT,         UNIV_DMA_INT_VEC,          0x0010F600},    {UNIVERSE_LM0_INT,	       UNIV_LM0_INT_VEC,	  0x0000F600},    {UNIVERSE_VME_SW_IACK_INT, UNIV_VME_SW_IACK_INT_VEC,  0x0000E600},    {UNIVERSE_PCI_SW_INT,      UNIV_PCI_SW_INT_VEC,       0x0000C600},    {UNIVERSE_LERR_INT,        UNIV_LERR_INT_VEC,         0x0000C400},    {UNIVERSE_VERR_INT,        UNIV_VERR_INT_VEC,         0x0000C000},    {UNIVERSE_SYSFAIL_INT,     UNIV_SYSFAIL_INT_VEC,      0x00008000},    {UNIVERSE_ACFAIL_INT,      UNIV_ACFAIL_INT_VEC,       0x00000000}  };/* locals */#ifdef  INCLUDE_VME_DMALOCAL BOOL  sysVmeDmaReady = FALSE;#endif /* INCLUDE_VME_DMA *//********************************************************************************* sysUniverseReset - reset the Universe VME chip** This routine performs the reseting of the Universe chip.  All functions* and VME mapping are disabled.** RETURNS: N/A*/void sysUniverseReset (void)    {    UINT32  reg;    /* initialize registers with defaults and disable mapping */    UNIV_OUT_LONG(UNIVERSE_SCYC_CTL,  0);    UNIV_OUT_LONG(UNIVERSE_SCYC_ADDR, 0);    UNIV_OUT_LONG(UNIVERSE_SCYC_EN,   0);    UNIV_OUT_LONG(UNIVERSE_LMISC,     LMISC_CRT_128_USEC);    UNIV_OUT_LONG(UNIVERSE_DCTL,      0);    UNIV_OUT_LONG(UNIVERSE_DTBC,      0);    UNIV_OUT_LONG(UNIVERSE_DLA,       0);    UNIV_OUT_LONG(UNIVERSE_DVA,       0);    UNIV_OUT_LONG(UNIVERSE_DCPP,      0);    UNIV_OUT_LONG(UNIVERSE_LINT_EN,   0);    UNIV_OUT_LONG(UNIVERSE_LINT_MAP0, 0);    UNIV_OUT_LONG(UNIVERSE_LINT_MAP1, 0);    UNIV_OUT_LONG(UNIVERSE_VINT_EN,   0);    UNIV_OUT_LONG(UNIVERSE_VINT_MAP0, 0);    UNIV_OUT_LONG(UNIVERSE_VINT_MAP1, 0);    UNIV_OUT_LONG(UNIVERSE_VSI0_CTL,  0);    UNIV_OUT_LONG(UNIVERSE_VSI1_CTL,  0);    UNIV_OUT_LONG(UNIVERSE_VSI2_CTL,  0);    UNIV_OUT_LONG(UNIVERSE_VSI3_CTL,  0);    UNIV_OUT_LONG(UNIVERSE_LSI0_CTL,  0);    UNIV_OUT_LONG(UNIVERSE_LSI1_CTL,  0);    UNIV_OUT_LONG(UNIVERSE_LSI2_CTL,  0);    UNIV_OUT_LONG(UNIVERSE_LSI3_CTL,  0);    UNIV_OUT_LONG(UNIVERSE_LM_CTL, 0);    /* clear the SYSFAIL signal */    UNIV_OUT_LONG(UNIVERSE_VCSR_CLR,  VCSR_CLR_SYSFAIL);    /* clear any outstanding interrupts/error conditions */    UNIV_OUT_LONG(UNIVERSE_LINT_STAT, LINT_STAT_CLEAR);    UNIV_OUT_LONG(UNIVERSE_VINT_STAT, VINT_STAT_CLEAR);    UNIV_OUT_LONG(UNIVERSE_V_AMERR, V_AMERR_V_STAT);    UNIV_IN_LONG(UNIVERSE_PCI_CSR, &reg);    reg |= PCI_CSR_D_PE | PCI_CSR_S_SERR | PCI_CSR_R_MA |           PCI_CSR_R_TA | PCI_CSR_S_TA;    UNIV_OUT_LONG(UNIVERSE_PCI_CSR, reg);    UNIV_OUT_LONG(UNIVERSE_L_CMDERR, L_CMDERR_L_ENABLE);    UNIV_OUT_LONG(UNIVERSE_DGCS, DGCS_STOP | DGCS_HALT | DGCS_DONE |                  DGCS_LERR | DGCS_VERR | DGCS_P_ERR);    sysUnivIntsEnabled = 0;    sysUnivIntLevel    = 0;    }/********************************************************************************* sysUniverseInit - initialize registers of the Universe chip** This routine initializes registers of the Universe VME-to-PCI bridge and maps* access to the VMEbus memory space.** NOTE: The sysProcNumSet() routine maps the master node's local memory on the* VMEbus.** RETURNS: OK, always.*/STATUS sysUniverseInit (void)    {    UINT32	temp_data;    /* Put vme chip into a power-up/reset state */    sysUniverseReset ();    if (pciToVmeDev == UNIVERSE_I)	{        UNIV_OUT_LONG(UNIVERSE_MAST_CTL, (MAST_CTL_RTRY_FOREVER |                                          MAST_CTL_PWON_4096    |                                          MAST_CTL_VRL3         |                                          MAST_CTL_VRM_DEMAND   |                                          MAST_CTL_VREL_RWD     |                                          MAST_CTL_PABS_32      ));	}    else	{	/* pciToVmeDev == UNIVERSE_II */        UNIV_OUT_LONG(UNIVERSE_MAST_CTL, (MAST_CTL_RTRY_FOREVER |                                          MAST_CTL_PWON_4096    |                                          MAST_CTL_VRL3         |                                          MAST_CTL_VRM_FAIR     |                                          MAST_CTL_VREL_ROR     |                                          MAST_CTL_PABS_128     ));	}    UNIV_IN_LONG(UNIVERSE_MISC_CTL, &temp_data);    /* maintain power-up option bits */    temp_data &= ( MISC_CTL_SYSCON | MISC_CTL_V64AUTO );    temp_data |= ( MISC_CTL_VBTO_256USEC   |		   MISC_CTL_VARB_RROBIN    |		   MISC_CTL_VARBTO_256USEC |		   MISC_CTL_RESCIND        );    UNIV_OUT_LONG(UNIVERSE_MISC_CTL, temp_data);    UNIV_OUT_LONG(UNIVERSE_USER_AM,  0);    UNIV_OUT_LONG(UNIVERSE_VRAI_CTL, 0);    UNIV_OUT_LONG(UNIVERSE_VCSR_CTL, 0);    /* clear the SYSFAIL signal */    UNIV_OUT_LONG(UNIVERSE_VCSR_CLR, VCSR_CLR_SYSFAIL);    /* set the latency timer to max value */    UNIV_OUT_LONG(UNIVERSE_PCI_MISC0, PCI_MISC0_LATENCY_TIMER);    /* Map to get to VMEbus  using A32 */    UNIV_OUT_LONG(UNIVERSE_LSI1_BS,  VAL_LSI1_BS);    UNIV_OUT_LONG(UNIVERSE_LSI1_BD,  VAL_LSI1_BD);    UNIV_OUT_LONG(UNIVERSE_LSI1_TO,  VAL_LSI1_TO);    UNIV_OUT_LONG(UNIVERSE_LSI1_CTL, VAL_LSI1_CTL);    /* Map to get to VMEbus  using A24 */    UNIV_OUT_LONG(UNIVERSE_LSI2_BS,  VAL_LSI2_BS);    UNIV_OUT_LONG(UNIVERSE_LSI2_BD,  VAL_LSI2_BD);    UNIV_OUT_LONG(UNIVERSE_LSI2_TO,  VAL_LSI2_TO);    UNIV_OUT_LONG(UNIVERSE_LSI2_CTL, VAL_LSI2_CTL);    /* Map to get to VMEbus using A16 */    UNIV_OUT_LONG(UNIVERSE_LSI3_BS,  VAL_LSI3_BS);    UNIV_OUT_LONG(UNIVERSE_LSI3_BD,  VAL_LSI3_BD);    UNIV_OUT_LONG(UNIVERSE_LSI3_TO,  VAL_LSI3_TO);    UNIV_OUT_LONG(UNIVERSE_LSI3_CTL, VAL_LSI3_CTL);    /* Map to get to VMEbus LM/SIG Registers using A32 */    UNIV_OUT_LONG(UNIVERSE_LSI0_BS,  VAL_LSI0_BS);    UNIV_OUT_LONG(UNIVERSE_LSI0_BD,  VAL_LSI0_BD);    UNIV_OUT_LONG(UNIVERSE_LSI0_TO,  VAL_LSI0_TO);    UNIV_OUT_LONG(UNIVERSE_LSI0_CTL, VAL_LSI0_CTL);    return (OK);    }/********************************************************************************* sysUniverseInit2 - enable local memory accesses from the VMEbus** This routine enables local resources to be accessed from the VMEbus.* All target boards have an A32 window opened to access the VMEbus LM/SIG* registers.  However, only the master node has an A32 and an A24* window open to its local memory space.** RETURNS: N/A** NOMANUAL*/void sysUniverseInit2    (    int         procNum                 /* processor number */    )    {#ifndef DOC    /* setup the VME LM registers address range */    UNIV_OUT_LONG(UNIVERSE_LM_CTL, VAL_LM_CTL);    UNIV_OUT_LONG(UNIVERSE_LM_BS, VAL_LM_BS);    if (procNum == 0)        {        /* setup the A32 window */        UNIV_OUT_LONG(UNIVERSE_VSI1_BS,  VAL_VSI1_BS);        UNIV_OUT_LONG(UNIVERSE_VSI1_BD,  VAL_VSI1_BD);        UNIV_OUT_LONG(UNIVERSE_VSI1_TO,  VAL_VSI1_TO);#ifdef A24_SLV_WINDOW	UNIV_OUT_LONG(UNIVERSE_VSI2_BS,  VAL_VSI2_BS);	UNIV_OUT_LONG(UNIVERSE_VSI2_BD,  VAL_VSI2_BD);	UNIV_OUT_LONG(UNIVERSE_VSI2_TO,  VAL_VSI2_TO);#endif	if (pciToVmeDev == UNIVERSE_I)	    {            UNIV_OUT_LONG(UNIVERSE_VSI1_CTL, VAL_VSI1_CTL);#ifdef A24_SLV_WINDOW	    UNIV_OUT_LONG(UNIVERSE_VSI2_CTL, VAL_VSI2_CTL);#endif	    }        else	    {	    /* pciToVmeDev == UNIVERSE_II */	    UNIV_OUT_LONG(UNIVERSE_VSI1_CTL, VAL_VSI1_CTL | VSI_CTL_PWEN);#ifdef A24_SLV_WINDOW	    UNIV_OUT_LONG(UNIVERSE_VSI2_CTL, VAL_VSI2_CTL | VSI_CTL_PWEN);#endif#if	(SM_OFF_BOARD == FALSE)#ifndef	ANY_BRDS_IN_CHASSIS_NOT_RMW            /*	     * All slave boards in the chassis generate a VMEbus RMW, and	     * the master is capable of translating an incoming RMW into	     * an atomic operation.	     */	    /*	     * The A32 access range is now divided into 3 separate windows.	     * The first window will allow normal access to the start of local	     * memory up to the Shared Memory Region.  It is defined above	     * thru the use of a conditional #define VAL_VSI1_BD in mv2100.h.	     * The second window will allow Read-Modify-Write (RMW) access to	     * the Standard VxWorks and VxMP's Shared Memory Region.  The	     * third window will allow normal access to the local memory	     * starting after the Shared Memory Region up to the end of	     * physical memory.	     */            /* setup the second A32 window */            UNIV_OUT_LONG(UNIVERSE_VSI4_BS,  VAL_VSI4_BS);            UNIV_OUT_LONG(UNIVERSE_VSI4_BD,  VAL_VSI4_BD);            UNIV_OUT_LONG(UNIVERSE_VSI4_TO,  VAL_VSI4_TO);            UNIV_OUT_LONG(UNIVERSE_VSI4_CTL, VAL_VSI4_CTL);            /* setup the third A32 window */            UNIV_OUT_LONG(UNIVERSE_VSI5_BS,  VAL_VSI5_BS);            UNIV_OUT_LONG(UNIVERSE_VSI5_BD,  VAL_VSI5_BD);            UNIV_OUT_LONG(UNIVERSE_VSI5_TO,  VAL_VSI5_TO);            UNIV_OUT_LONG(UNIVERSE_VSI5_CTL, VAL_VSI5_CTL);#endif	/* ANY_BRDS_IN_CHASSIS_NOT_RMW */#endif	/* SM_OFF_BAORD */	    }	}#endif    }/********************************************************************************* sysIntDisable - disable a bus interrupt level** This routine disables reception of a specified VMEbus interrupt level.** NOTE: revision 1.0 Universe chips can fail and lockup if two or more interrupt* levels are enabled.  For more details see Tundra Universe Errata sheet.** RETURNS: OK, or ERROR if <intLevel> is not in the range 1 - 7.** SEE ALSO: sysIntEnable()*/STATUS sysIntDisable

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91精品欧美综合在线观看最新 | 日韩一区二区高清| 久久只精品国产| 亚洲一区二区三区激情| 东方aⅴ免费观看久久av| 欧美嫩在线观看| 自拍偷拍欧美精品| 国产成人av一区二区三区在线 | 在线看国产一区| 国产精品三级久久久久三级| 日韩一区精品视频| 91国产免费观看| 国产精品国产精品国产专区不片| 老司机精品视频一区二区三区| 欧美色国产精品| 一区二区欧美视频| 91亚洲国产成人精品一区二三| 26uuu色噜噜精品一区二区| 天使萌一区二区三区免费观看| 色狠狠桃花综合| 亚洲男同性视频| 97se亚洲国产综合自在线不卡| 精品99一区二区三区| 久久99热这里只有精品| 欧美日韩精品一二三区| 亚洲国产三级在线| 欧美在线观看视频在线| 亚洲黄色小视频| 色呦呦网站一区| 亚洲综合精品自拍| 欧美中文字幕一区二区三区| 亚洲精品国产第一综合99久久| 91农村精品一区二区在线| 国产精品丝袜久久久久久app| 国产河南妇女毛片精品久久久| 精品国产99国产精品| 国产一区二区三区四| 精品国产凹凸成av人网站| 国产精品自拍av| 国产精品久久久久久久浪潮网站| 成人爱爱电影网址| 一区二区三区四区乱视频| 91高清视频免费看| 青娱乐精品在线视频| 日韩欧美一卡二卡| 国产精品一区二区91| 国产精品毛片大码女人| 91麻豆免费观看| 亚洲二区视频在线| 精品99999| caoporm超碰国产精品| 亚洲一区二区三区中文字幕在线| 欧美精品99久久久**| 久久99这里只有精品| 国产精品国产精品国产专区不片| 色av成人天堂桃色av| 美女mm1313爽爽久久久蜜臀| 久久蜜桃香蕉精品一区二区三区| 成人久久视频在线观看| 亚洲一区二三区| 精品国产乱码久久久久久免费| 盗摄精品av一区二区三区| 亚洲综合清纯丝袜自拍| 日韩欧美亚洲另类制服综合在线| 国产高清在线观看免费不卡| 亚洲色图另类专区| 91麻豆精品国产自产在线观看一区| 极品少妇xxxx偷拍精品少妇| 亚洲伦理在线精品| 精品国产一区二区国模嫣然| 99久久精品国产导航| 麻豆视频一区二区| 一区二区三区在线视频观看58 | 欧美激情在线观看视频免费| 91丨porny丨在线| 奇米一区二区三区| 中文字幕在线一区二区三区| 在线播放视频一区| 福利一区二区在线观看| 日韩在线卡一卡二| 亚洲精品免费视频| 国产欧美一区在线| 欧美电视剧在线观看完整版| 一本高清dvd不卡在线观看| 黄色成人免费在线| 五月天视频一区| 中文字幕在线观看一区二区| 精品国产一区二区国模嫣然| 欧美日韩中文另类| 91麻豆精品视频| 国产精品99久久不卡二区| 日韩av电影天堂| 亚洲国产日韩a在线播放| 国产精品视频一二| 久久久久99精品一区| 欧美一区2区视频在线观看| 欧洲一区在线电影| 91在线看国产| 成人精品在线视频观看| 激情六月婷婷综合| 日本不卡一区二区| 一区二区成人在线视频| 中文字幕永久在线不卡| 国产精品亲子伦对白| 久久久久国色av免费看影院| 日韩免费观看高清完整版在线观看| 91传媒视频在线播放| 色综合天天综合网天天看片| 91同城在线观看| 99久久亚洲一区二区三区青草| 成人一级片网址| 大美女一区二区三区| 国产99一区视频免费| 国产精品资源网| 国产成人在线影院| 国产**成人网毛片九色| 国产成人激情av| 国产福利91精品| 国产成a人亚洲精品| 国产+成+人+亚洲欧洲自线| www.亚洲国产| 色吊一区二区三区| 欧美午夜电影网| 欧美一区二区三区性视频| 这里只有精品免费| 久久这里只有精品首页| 国产精品久久三区| 亚洲精品videosex极品| 亚洲成人久久影院| 麻豆视频一区二区| 丁香六月久久综合狠狠色| 91丝袜高跟美女视频| 91免费国产视频网站| 欧美日韩日日骚| 日韩欧美一区二区久久婷婷| 久久精品综合网| 亚洲黄色免费网站| 美女在线观看视频一区二区| 国产精品资源在线看| 色悠悠久久综合| 日韩视频一区二区在线观看| 国产午夜一区二区三区| 亚洲精品日韩一| 毛片av一区二区| 成人高清视频免费观看| 欧美午夜理伦三级在线观看| 欧美电影免费观看高清完整版在线| 日本一区二区三区免费乱视频| 亚洲欧洲av在线| 免费高清视频精品| 99久久精品国产精品久久| 91精品国产综合久久香蕉的特点| 久久精品亚洲国产奇米99| 亚洲精品ww久久久久久p站| 久久成人av少妇免费| www.欧美日韩| 欧美一区二区大片| 亚洲精选视频免费看| 久久99精品久久久| 在线免费亚洲电影| 国产嫩草影院久久久久| 日本不卡在线视频| 99视频一区二区| 欧美mv和日韩mv的网站| 亚洲欧美另类综合偷拍| 国产一区二区福利视频| 欧美亚男人的天堂| 国产欧美一区二区精品性| 首页国产欧美久久| 欧美在线色视频| 日韩毛片在线免费观看| 国产一区二区三区| 欧美一区日韩一区| 亚洲国产日韩一区二区| 成人免费视频视频| 久久免费视频一区| 精品一区二区在线观看| 欧美日韩日日夜夜| 一区二区久久久久久| www.欧美日韩| 中文字幕欧美国产| 国产乱码精品一区二区三区忘忧草 | 欧美日韩国产色站一区二区三区| 国产日韩欧美精品电影三级在线| 免费高清在线视频一区·| 欧美日韩精品一区视频| 亚洲裸体xxx| 91麻豆123| 日韩理论在线观看| 99re6这里只有精品视频在线观看| 国产亚洲精久久久久久| 激情综合一区二区三区| 欧美成人福利视频| 秋霞成人午夜伦在线观看| 欧美色欧美亚洲另类二区| 亚洲一区在线播放| 欧美午夜影院一区| 午夜精品福利视频网站| 欧美日韩午夜在线| 日本亚洲欧美天堂免费|