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

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

?? dec2155xcpci.c

?? VxWorks下 Cpv3060的BSP源代碼
?? C
?? 第 1 頁 / 共 4 頁
字號:
/* dec2155xCpci.c - DEC 2155X (Drawbridge) PCI-to-PCI bridge library *//* Copyright 1998-2000 Motorola, Inc. All Rights Reserved *//*modification history--------------------01f 03jan01,rhk  Adjust for MPC860 interrupt handler.01e,25apr00,srr  Updated for WRS coding standards.01d,06dec99,rhk  mask all of the Upper 32 Bits Downstream Memory 3 		 Setup register01c,29oct99,dmw  Used TRANSLATE macro for cPCI address.01b,20oct99,srr  Include hawkMpic.h only if INCLUDE_MPIC defined.01a,10jun99,rhv  Written (from version 01o of mcpn750/dec2155xCcpi.c).*//*DESCRIPTIONThe routines addressed here include:Initialization of 2155x chipBus interrupt functions:    - enable/disable Compact PCI interrupts    - enable/disable drawbridge internal interrupts    - install handlers for the drawbridge internal  interrupts    - generate Compact PCI bus interruptsMailbox functions:    - enable mailbox interruptsPortions of this code (dec2155xInit) must run before the local PCI busenumeration been performed. As such, the 2155x BAR registers have not beeninitialized and access must be performed though the local PCI configurationspace. This is done using the pciConfigxxxx calls (in pciConfigLib.c). Oncelocal PCI bus enumeration has completed, access to most 2155x registers willbe performed using the local PCI memory space and sysPcixxxx calls.*//* includes */#include "vxWorks.h"#include "config.h"#include "vxLib.h"#ifdef INCLUDE_MPIC#  include "hawkMpic.h"#else#  if (CPU==PPC860)#     include "ppc860Intr.h"#  else#     include "sl82565IntrCtl.h"#  endif  /* (CPU==PPC860) */#endif /* INCLUDE_MPIC */#include "intLib.h"#include "logLib.h"#include "dec2155xCpci.h"#include "pci.h"/* defines */#define DEC2155X_ENABLE_MEM_AND_IO (PCI_CMD_IO_ENABLE | PCI_CMD_MEM_ENABLE)/* this section validates the upstream and downstream window parameters */#if (DEC2155X_CSR_AND_DS_MEM0_SIZE & (DEC2155X_CSR_AND_DS_MEM0_SIZE - 1))#    error DEC2155X_CSR_AND_DS_MEM0_SIZE is not a power of 2#else#    if (DEC2155X_CSR_AND_DS_MEM0_TRANS & (DEC2155X_CSR_AND_DS_MEM0_SIZE - 1))#        error DEC2155X_CSR_AND_DS_MEM0_TRANS is not a multiple of window size#    endif#    if (DEC2155X_CSR_AND_DS_MEM0_SIZE & DEC2155X_MEM_TB_RSV_MSK)#        error DEC2155X_CSR_AND_DS_MEM0_SIZE is less than 4KB in size#    endif#endif#if (DEC2155X_DS_IO_OR_MEM1_SIZE & (DEC2155X_DS_IO_OR_MEM1_SIZE - 1))#    error DEC2155X_DS_IO_OR_MEM1_SIZE is not a power of 2#else#    if (DEC2155X_DS_IO_OR_MEM1_TRANS & (DEC2155X_DS_IO_OR_MEM1_SIZE - 1))#        error DEC2155X_DS_IO_OR_MEM1_TRANS is not a multiple of window size#    endif#    if (DEC2155X_DS_IO_OR_MEM1_TYPE & PCI_BAR_SPACE_IO)#        if (DEC2155X_DS_IO_OR_MEM1_SIZE & DEC2155X_IO_OR_MEM_TB_RSV_MSK)#            error DEC2155X_DS_IO_OR_MEM1_SIZE is less than 64 bytes#        endif#    else#        if (DEC2155X_DS_IO_OR_MEM1_SIZE & DEC2155X_MEM_TB_RSV_MSK)#            error DEC2155X_DS_IO_OR_MEM1_SIZE is less than 4KB#        endif#    endif        #endif#if (DEC2155X_DS_MEM2_SIZE & (DEC2155X_DS_MEM2_SIZE - 1))#    error DEC2155X_DS_MEM2_SIZE is not a power of 2#else#    if (DEC2155X_DS_MEM2_TRANS & (DEC2155X_DS_MEM2_SIZE - 1))#        error DEC2155X_DS_MEM2_TRANS is not a multiple of window size#    endif#    if (DEC2155X_DS_MEM2_SIZE & DEC2155X_MEM_TB_RSV_MSK)#        error DEC2155X_DS_MEM2_SIZE is less than 4KB in size#    endif#endif#if (DEC2155X_DS_MEM3_SIZE & (DEC2155X_DS_MEM3_SIZE - 1))#    error DEC2155X_DS_MEM3_SIZE is not a power of 2#else#    if (DEC2155X_DS_MEM3_TRANS & (DEC2155X_DS_MEM3_SIZE - 1))#        error DEC2155X_DS_MEM3_TRANS is not a multiple of window size#    endif#    if (DEC2155X_DS_MEM3_SIZE & DEC2155X_MEM_TB_RSV_MSK)#        error DEC2155X_DS_MEM3_SIZE is less than 4KB in size#    endif#endif#if (DEC2155X_US_IO_OR_MEM0_SIZE & (DEC2155X_US_IO_OR_MEM0_SIZE - 1))#    error DEC2155X_US_IO_OR_MEM0_SIZE is not a power of 2#else#    if (DEC2155X_US_IO_OR_MEM0_TRANS & (DEC2155X_US_IO_OR_MEM0_SIZE - 1))#        error DEC2155X_US_IO_OR_MEM0_TRANS is not a multiple of window size#    endif#    if (DEC2155X_US_IO_OR_MEM0_TYPE & PCI_BAR_SPACE_IO)#        if (DEC2155X_US_IO_OR_MEM0_SIZE & DEC2155X_IO_OR_MEM_TB_RSV_MSK)#            error DEC2155X_US_IO_OR_MEM0_SIZE is less than 64 bytes#        endif#    else#        if (DEC2155X_US_IO_OR_MEM0_SIZE & DEC2155X_MEM_TB_RSV_MSK)#            error DEC2155X_US_IO_OR_MEM0_SIZE is less than 4KB#        endif#    endif        #endif#if (DEC2155X_US_MEM1_SIZE & (DEC2155X_US_MEM1_SIZE - 1))#    error DEC2155X_US_MEM1_SIZE is not a power of 2#else#    if (DEC2155X_US_MEM1_TRANS & (DEC2155X_US_MEM1_SIZE - 1))#        error DEC2155X_US_MEM1_TRANS is not a multiple of window size#    endif#    if (DEC2155X_US_MEM1_SIZE & DEC2155X_MEM_TB_RSV_MSK)#        error DEC2155X_US_MEM1_SIZE is less than 4KB in size#    endif#endif/* create window setup values */#if (DEC2155X_CSR_AND_DS_MEM0_SIZE)#   define DEC2155X_CSR_AND_DS_MEM0_SETUP ( \           DEC2155X_SETUP_REG_BAR_ENABLE        | \           ~(DEC2155X_CSR_AND_DS_MEM0_SIZE - 1) | \           DEC2155X_CSR_AND_DS_MEM0_TYPE)#else#   define DEC2155X_CSR_AND_DS_MEM0_SETUP 0x00000000#endif#if (DEC2155X_DS_IO_OR_MEM1_SIZE)#   define DEC2155X_DS_IO_OR_MEM1_SETUP ( \           DEC2155X_SETUP_REG_BAR_ENABLE      | \           ~(DEC2155X_DS_IO_OR_MEM1_SIZE - 1) | \           DEC2155X_DS_IO_OR_MEM1_TYPE)#else#   define DEC2155X_DS_IO_OR_MEM1_SETUP 0x00000000#endif#if (DEC2155X_DS_MEM2_SIZE)#   define DEC2155X_DS_MEM2_SETUP ( \           DEC2155X_SETUP_REG_BAR_ENABLE | \           ~(DEC2155X_DS_MEM2_SIZE - 1)  | \           DEC2155X_DS_MEM2_TYPE)#else#   define DEC2155X_DS_MEM2_SETUP 0x00000000#endif#if (DEC2155X_DS_MEM3_SIZE)#   define DEC2155X_DS_MEM3_SETUP ( \           DEC2155X_SETUP_REG_BAR_ENABLE | \           ~(DEC2155X_DS_MEM3_SIZE - 1)  | \           DEC2155X_DS_MEM3_TYPE)#else#   define DEC2155X_DS_MEM3_SETUP 0x00000000#endif#if (DEC2155X_US_IO_OR_MEM0_SIZE)#   define DEC2155X_US_IO_OR_MEM0_SETUP ( \           DEC2155X_SETUP_REG_BAR_ENABLE      | \           ~(DEC2155X_US_IO_OR_MEM0_SIZE - 1) | \           DEC2155X_US_IO_OR_MEM0_TYPE)#else#   define DEC2155X_US_IO_OR_MEM0_SETUP 0x00000000#endif#if (DEC2155X_US_MEM1_SIZE)#   define DEC2155X_US_MEM1_SETUP ( \           DEC2155X_SETUP_REG_BAR_ENABLE | \           ~(DEC2155X_US_MEM1_SIZE - 1)  | \           DEC2155X_US_MEM1_TYPE)#else#   define DEC2155X_US_MEM1_SETUP 0x00000000#endif#define DEC2155X_UPR32_DS_MEM3_SETUP 0x00000000#define DEC2155X_CFG_CHP_STS_ERR_CLR (DEC2155X_CHPSR_US_DLYD_TRNS_MSTR_TO | \                                      DEC2155X_CHPSR_US_DLYD_RD_TRNS_TO   | \                                      DEC2155X_CHPSR_US_DLYD_WRT_TRNS_TO  | \                                      DEC2155X_CHPSR_US_PSTD_WRT_DATA_DISC)#define DEC2155X_CFG_STS_ERR_CLR (DEC2155X_CFG_STS_DATA_PAR_ERR_DET | \                                  DEC2155X_CFG_STS_SIG_TGT_ABT      | \                                  DEC2155X_CFG_STS_RCVD_TGT_ABT     | \                                  DEC2155X_CFG_STS_RCVD_MSTR_ABT    | \                                  DEC2155X_CFG_STS_SIG_SYS_ERR      | \                                  DEC2155X_CFG_STS_DET_PAR_ERR)/* structures */typedef struct windowParameters    {    UINT32 windowType; /* mem or i/o */    UINT32 origBase;   /* as seen from originating bus */    UINT32 trgtBase;   /* as seen from target bus */    UINT32 trgtLimit;  /* end of window + 1 */    } WINDOW_PARAMETERS;typedef struct windowOffsets    {    UINT32 bar;        /* offset to base address register */    UINT32 trans;      /* offset to translation or opposite base address reg */    UINT32 setup;      /* offset to setup reg or pseudo-register contents */    UINT32 unuseable;  /* unuseable space at start of window */    } WINDOW_OFFSETS;/* * NOTE: The Primary CSR I/O BAR, Secondary CSR Memory BAR and the Secondary * CSR I/O BAR do not have corresponding setup registers in the Dec2155x. * Also note that the first 4KB of the window mapped by the * Primary CSR and Downstream Memory 0 BAR actually references the * Dec2155x CSR set. To accommodate these hardware-defined windows, * a number of simulated setup registers are present in the offset tables * below. They can be recognized by the fact that their values are far * to large to be true register offsets. This fact is ensured because * an enabled setup register will always have bit 31 set. When the  * window mapping code encounters one of large offsets, it simply uses * the emulated setup value from the table as if it had been read from * the Dec2155x itself. Please bear this in mind should any modifications * to the table be required. * * Also note that there are two table entries for the Primary CSR and * Downstream Memory 0 window. This apparent double mapping is done to * simplify the translation of addresses which lie within this window. * Addresses in the CSR register set (doorbell interrupts, doorbell * interrupt masks, etc.) are translated by looking up the address of the * register when viewed by the opposite processor while the memory area * above the CSR register space is translated using the downstream CSR * and Memory 0 translated base register. Even though these two windows * overlap for the first 4KB (the size of the CSR register image), no * conflict is created because the translation routines always check the * CSR space first. If the address resides in the CSR space, the search * will never advance to the memory portion of the window and only one * translated value is possible. If the address resides above the CSR * space, the first mapping window will lie below the address of * interest and the corresponding memory 0 mapping will be used to * translate the address. */static WINDOW_OFFSETS dsWindowOffsets [] =    {    /* first two entries must be at the front of the table and in order */        {        DEC2155X_CFG_PRI_CSR_AND_DS_MEM0_BAR+DEC2155X_PRI_FROM_SEC_OFFSET,        DEC2155X_CFG_SEC_CSR_MEM_BAR,        (~(DEC2155X_DEFAULT_MEM_WINDOW_SZ - 1) | PCI_BAR_SPACE_MEM),        NULL        },        {        DEC2155X_CFG_PRI_CSR_AND_DS_MEM0_BAR+DEC2155X_PRI_FROM_SEC_OFFSET,        DEC2155X_CFG_DS_MEM0_TB,        DEC2155X_CFG_DS_MEM0_SETUP,        DEC2155X_DEFAULT_MEM_WINDOW_SZ        },        {        DEC2155X_CFG_PRI_CSR_IO_BAR+DEC2155X_PRI_FROM_SEC_OFFSET,        DEC2155X_CFG_SEC_CSR_IO_BAR,        (~(DEC2155X_DEFAULT_IO_WINDOW_SZ - 1) | PCI_BAR_SPACE_IO),        NULL        },        {        DEC2155X_CFG_PRI_DS_IO_OR_MEM1_BAR+DEC2155X_PRI_FROM_SEC_OFFSET,        DEC2155X_CFG_DS_IO_OR_MEM1_TB,        DEC2155X_CFG_DS_IO_OR_MEM1_SETUP,        NULL        },        {        DEC2155X_CFG_PRI_DS_MEM2_BAR+DEC2155X_PRI_FROM_SEC_OFFSET,        DEC2155X_CFG_DS_MEM2_TB,        DEC2155X_CFG_DS_MEM2_SETUP,        NULL        },        {        DEC2155X_CFG_PRI_DS_MEM3_BAR+DEC2155X_PRI_FROM_SEC_OFFSET,        DEC2155X_CFG_DS_MEM3_TB,        DEC2155X_CFG_DS_MEM3_SETUP,        NULL        },    };static WINDOW_OFFSETS usWindowOffsets [] =    {        {        DEC2155X_CFG_SEC_CSR_MEM_BAR,        DEC2155X_CFG_PRI_CSR_AND_DS_MEM0_BAR+DEC2155X_PRI_FROM_SEC_OFFSET,        (~(DEC2155X_DEFAULT_MEM_WINDOW_SZ - 1) | PCI_BAR_SPACE_MEM),        NULL        },        {        DEC2155X_CFG_SEC_CSR_IO_BAR,        DEC2155X_CFG_PRI_CSR_IO_BAR+DEC2155X_PRI_FROM_SEC_OFFSET,        (~(DEC2155X_DEFAULT_IO_WINDOW_SZ - 1) | PCI_BAR_SPACE_IO),        NULL        },         {        DEC2155X_CFG_SEC_US_IO_OR_MEM0_BAR,        DEC2155X_CFG_US_IO_OR_MEM0_TB,        DEC2155X_CFG_US_IO_OR_MEM0_SETUP,        NULL        },        {        DEC2155X_CFG_SEC_US_MEM1_BAR,        DEC2155X_CFG_US_MEM1_TB,        DEC2155X_CFG_US_MEM1_SETUP,        NULL        }    };#define DS_WINDOW_COUNT (sizeof (dsWindowOffsets) / sizeof (WINDOW_OFFSETS))#define US_WINDOW_COUNT (sizeof (usWindowOffsets) / sizeof (WINDOW_OFFSETS))/* forward declarations */LOCAL FUNCPTR 	sysMailboxRoutine  = NULL;LOCAL int 	sysMailboxArg      = NULL;void 		sysDec2155xIntr (void);/* extern declarations */IMPORT int     intEnable (int);IMPORT int     intDisable (int);IMPORT INT_HANDLER_DESC * sysIntTbl [256];  /*  Intr vector table */IMPORT STATUS  pciConfigModifyLong (int, int, int, int, UINT32, UINT32);IMPORT STATUS  pciConfigModifyWord (int, int, int, int, UINT16, UINT16);IMPORT STATUS  pciConfigModifyByte (int, int, int, int, UINT8, UINT8);IMPORT void    sysPciInsertLong (UINT32, UINT32, UINT32);IMPORT void    sysPciInsertWord (UINT32, UINT16, UINT16);IMPORT void    sysPciInsertByte (UINT32, UINT8, UINT8);IMPORT void    sysOutByte (ULONG, UCHAR);IMPORT void    sysPciOutWordConfirm (UINT32, UINT16);/* globals */UINT32 sysDec2155xCsrAdrs = 0;	/* Base address of dec2155x CSR space *//* * If sysDec2155xInit finds the drawbridge in the wrong state this variable * will be set non-zero. */UINT32 sysDec2155xInitFail = 0;/* Arrays to hold the Dec2155x window translation values */WINDOW_PARAMETERS dsWindows[DS_WINDOW_COUNT] = {                                                   {                                                   0                                                   }                                               };WINDOW_PARAMETERS usWindows[US_WINDOW_COUNT] = {                                                   {                                                   0                                                   }                                               };/* Variables to hold the number of Dec2155x windows detected */UINT32 dsWinsValid = 0;UINT32 usWinsValid = 0;/* DEC 2155x Access macros */#ifndef DEC2155X_CSR_ADRS#   define DEC2155X_CSR_ADRS(offset) (sysDec2155xCsrAdrs+offset)#endif#ifndef DEC2155X_CFG_RD_LONG#   define DEC2155X_CFG_RD_LONG(offset, result) \           pciConfigInLong (0, DEC2155X_PCI_DEV_NUMBER, 0, (offset), \                            (UINT32 *)(result))#endif#ifndef DEC2155X_CFG_RD_WORD#   define DEC2155X_CFG_RD_WORD(offset, result) \           pciConfigInWord (0, DEC2155X_PCI_DEV_NUMBER, 0, (offset), \                            (UINT16 *)(result))#endif#ifndef DEC2155X_CFG_RD_BYTE#   define DEC2155X_CFG_RD_BYTE(offset, result) \           pciConfigInByte (0, DEC2155X_PCI_DEV_NUMBER, 0, (offset), \                            (UINT8 *)(result))#endif#ifndef DEC2155X_CFG_WR_LONG#   define DEC2155X_CFG_WR_LONG(offset, result) \           pciConfigOutLong (0, DEC2155X_PCI_DEV_NUMBER, 0, (offset), \                             (UINT32)(result))#endif#ifndef DEC2155X_CFG_WR_WORD  #   define DEC2155X_CFG_WR_WORD(offset, result) \           pciConfigOutWord (0, DEC2155X_PCI_DEV_NUMBER, 0, (offset), \                             (UINT16)(result))#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
一级特黄大欧美久久久| 欧美mv日韩mv国产| 日韩国产欧美三级| 国产精品另类一区| 日韩一区二区在线看| 成人免费观看视频| 一区在线观看免费| 欧美sm美女调教| 在线观看日韩电影| 成人精品gif动图一区| 五月婷婷综合网| 综合中文字幕亚洲| 国产欧美一区二区精品久导航| 欧美欧美午夜aⅴ在线观看| av成人老司机| 国产成人精品一区二区三区四区 | 亚洲777理论| 亚洲色图欧美激情| 久久综合九色综合欧美亚洲| 69成人精品免费视频| 欧美一级一级性生活免费录像| 污片在线观看一区二区| 91精品国产综合久久蜜臀| 一区二区三区在线观看动漫| 91视视频在线观看入口直接观看www | 久久99热这里只有精品| 亚洲精品一区二区三区影院| av亚洲精华国产精华| 26uuuu精品一区二区| 精品一区二区三区蜜桃| 欧美成人aa大片| 91黄色小视频| 国产风韵犹存在线视精品| 国产蜜臀av在线一区二区三区| 56国语精品自产拍在线观看| 成人免费视频视频| 久久99久久久久| 午夜精品久久久久久久99水蜜桃| 欧美体内she精高潮| 韩国女主播一区| 成人午夜在线视频| 美女网站色91| 中文字幕亚洲在| 一区二区三区**美女毛片| 亚洲一区二区视频| 国产视频一区二区三区在线观看| 久久久久久久久岛国免费| 欧美福利视频导航| 北条麻妃一区二区三区| 国产麻豆一精品一av一免费| 亚洲aⅴ怡春院| 亚洲欧美日韩精品久久久久| 欧美另类久久久品| 国产欧美日产一区| 午夜电影网亚洲视频| 亚洲sss视频在线视频| 亚洲最色的网站| 亚洲免费观看高清完整版在线| 久久综合九色综合欧美就去吻| 色噜噜狠狠色综合欧洲selulu| 久久99精品久久久久久久久久久久 | 国产精品一二三四五| 91精品综合久久久久久| 久久99久久99| 欧美一级理论性理论a| 久久99精品国产麻豆婷婷| 亚洲国产欧美日韩另类综合 | 91黄色小视频| 久久99热99| 亚洲综合清纯丝袜自拍| 欧美一区二区免费视频| bt欧美亚洲午夜电影天堂| 日韩国产欧美在线观看| 亚洲欧洲色图综合| 精品国产一区二区三区不卡| 色综合久久中文字幕| 麻豆一区二区在线| 一区二区三区日本| 国产欧美一区二区精品性| 日韩写真欧美这视频| 色婷婷综合久久久中文一区二区| 国产精一品亚洲二区在线视频| 午夜久久久影院| 亚洲福利视频一区二区| 国产精品美女一区二区| 成人小视频免费在线观看| 亚洲色图欧洲色图| 欧美性xxxxx极品少妇| 蜜桃视频一区二区三区在线观看| 欧美一二三区在线观看| 成人精品视频一区二区三区| 亚洲综合男人的天堂| 2022国产精品视频| 91久久奴性调教| 加勒比av一区二区| 一区二区在线观看视频在线观看| 欧美日韩激情一区二区| 韩国一区二区三区| 一区二区三区不卡视频| 久久久一区二区| 欧美特级限制片免费在线观看| 黄色小说综合网站| 亚洲在线视频一区| 日本一区二区视频在线观看| 欧美美女bb生活片| 91色.com| www.成人在线| 国产精品一品二品| 麻豆国产欧美一区二区三区| 一区二区久久久| 亚洲国产高清在线观看视频| 日韩精品在线看片z| 欧美日韩在线三区| 91啪亚洲精品| 高清国产一区二区| 国产成人免费9x9x人网站视频| 日韩av中文字幕一区二区三区| 亚洲天堂免费看| 亚洲综合免费观看高清在线观看| 日韩午夜av电影| 91精品国产高清一区二区三区蜜臀 | 精品美女被调教视频大全网站| 欧美午夜精品理论片a级按摩| 在线影视一区二区三区| 色婷婷亚洲综合| 欧美剧情片在线观看| 欧美乱妇15p| 欧美xxxx在线观看| 日韩欧美一级在线播放| 久久蜜桃一区二区| 成人欧美一区二区三区视频网页| 日韩理论片在线| 亚洲综合视频网| 国产永久精品大片wwwapp| 盗摄精品av一区二区三区| 97久久超碰国产精品| 欧美亚洲尤物久久| 欧美成人a在线| 亚洲日韩欧美一区二区在线| 亚洲精品高清视频在线观看| 日韩精品成人一区二区在线| 国产精品888| 欧美精品日韩精品| 国产精品女主播在线观看| 亚洲福利一二三区| 国产99久久久精品| 91精品国产欧美一区二区18| 久久精品免视看| 视频一区视频二区中文| 粉嫩av一区二区三区粉嫩| 91精品国产色综合久久不卡蜜臀 | 日韩精品一级中文字幕精品视频免费观看 | 欧美日韩国产精品成人| 国产精品久久毛片av大全日韩| 蜜乳av一区二区三区| 欧美丝袜丝交足nylons| 亚洲成人av一区| 欧美在线免费视屏| 亚洲美女屁股眼交| 成人av免费观看| 中文一区二区在线观看| 国内精品久久久久影院色| 久久亚洲一区二区三区四区| 日韩av网站在线观看| 欧美一区二区三区白人| 日韩国产欧美在线观看| 国产农村妇女精品| 国产一区二区精品久久91| 精品久久久三级丝袜| 国产精一区二区三区| 国产欧美日韩综合精品一区二区| 国产精品白丝jk白祙喷水网站| 久久午夜国产精品| 99精品视频在线观看免费| 一区二区久久久| 日韩手机在线导航| 成人精品免费看| 亚洲电影在线播放| www国产亚洲精品久久麻豆| www.亚洲在线| 日本色综合中文字幕| 欧美极品aⅴ影院| 欧美日本精品一区二区三区| 久久精品久久精品| 亚洲激情五月婷婷| 欧美精品一区二区三| 色婷婷香蕉在线一区二区| 奇米一区二区三区av| 亚洲裸体在线观看| 久久久一区二区三区| 欧美日韩一区二区三区四区 | 国产精品国产精品国产专区不片| 6080日韩午夜伦伦午夜伦| 99久久夜色精品国产网站| 国产综合色精品一区二区三区| 一区二区成人在线| 国产精品高清亚洲| 国产欧美日韩久久| 久久亚洲一区二区三区四区| 欧美日本韩国一区二区三区视频 |