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

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

?? rprombw.c

?? 此代碼為WCE5.0下顯示器的源代碼
?? C
?? 第 1 頁 / 共 5 頁
字號:
* Note: 
*       
*
\**************************************************************************/

VOID vMBW_GetSclHBlankTime(LPFIXEDPOINT lpHBlankTime, ULONG ulSclMode, 
                           ULONG ulSclBurst, ULONG ulMemClock, 
                           ULONG ulMemIPC)
{
  FIXEDPOINT   sTemp;

  if (ulSclMode == MBW_SCL_PLANAR_MODE)
  {
    // planar mode
    // (1 / SCL_EFF) * ((SCL_BURST * 2) / MEM_CLK)
    vMBW_GetSclEff(lpHBlankTime, ulSclBurst, ulMemIPC);

    sTemp.Integral = ulSclBurst << 1;
    sTemp.Fractional = 0;
    vMultiplyFixed(lpHBlankTime, &sTemp);

    sTemp.Integral = ulMemClock;
    sTemp.Fractional = 0;
    vDivideFixed(lpHBlankTime, &sTemp);
  }
  else if (ulSclMode == MBW_SCL_PACKED_MODE)
  {
    // packed mode 

    if (!ulSclBurst)
    {
      lpHBlankTime->Integral = 0;
      lpHBlankTime->Fractional = 0;
    }
    else
    {
      // just assume we need at least 4 QWORD at 80% efficiency for now
      // 1*1/4 by reciprocal
      lpHBlankTime->Integral = 1;
      lpHBlankTime->Fractional = MBW_GetFractional(1, 4);

      sTemp.Integral = 4;
      sTemp.Fractional = 0;
      vMultiplyFixed(lpHBlankTime, &sTemp);
      
      sTemp.Integral = ulMemClock;
      sTemp.Fractional = 0;
      vDivideFixed(lpHBlankTime, &sTemp);
    }
  }
}



/****************************Public*Routine*******************************\
*
* MBW_ReqHBlankTime()
*
* Calculate Required Horizontal Blank Time in Micro Second
* 
* Note: lpReqHBlankTime with output fixed-point value
*       function return ULONG value
*       
\**************************************************************************/

ULONG MBW_ReqHBlankTime(LPFIXEDPOINT lpReqHBlankTime, ULONG ulMemClock)
{
  FIXEDPOINT   sHBlankTime;
  ULONG        ulHWCI_Size;
  ULONG        ulMemIPC = 1;    // hard code
  ULONG        ulVidFlush = 4;  // hard code
  ULONG        ulHFBFIFO = 32;   // hard code
  ULONG        ulSubBurst = 32;  // hard code
  ULONG        ulSclMode = MBW_SCL_PLANAR_MODE;    // hard code
  ULONG        ulSclBurst = 56;  // hard code

#define HWCUR1_SIZE  2   // hard code
#define HWICON1_SIZE 4   // hard code

#define HWCUR2_SIZE  2   // hard code
#define HWICON2_SIZE 4   // hard code

  ulHWCI_Size = HWCUR1_SIZE + HWICON1_SIZE; 

  // REQ_HBLANK = DISP1_HBLANK
  vMBW_GetDispHBlankTime(lpReqHBlankTime, MBW_DISP_FIFO, 
                         ulHWCI_Size, ulMemClock, ulMemIPC);

  ulHWCI_Size = HWCUR2_SIZE + HWICON2_SIZE; 

  vMBW_GetDispHBlankTime(&sHBlankTime, MBW_DISP_FIFO, 
                         ulHWCI_Size, ulMemClock, ulMemIPC);

  // REQ_HBLANK += DISP2_HBLANK
  vAddFixed(lpReqHBlankTime, &sHBlankTime);

//  vMBW_GetVideoHBlankTime(&sHBlankTime, ulVidFlush, ulMemClock, ulMemIPC);

  // REQ_HBLANK += VID_HBLANK
  vAddFixed(lpReqHBlankTime, &sHBlankTime);

  vMBW_GetHFBHBlankTime(&sHBlankTime, ulHFBFIFO, ulMemClock, ulMemIPC);

  // REQ_HBLANK += HFB_HBLANK
  vAddFixed(lpReqHBlankTime, &sHBlankTime);

  vMBW_GetSubHBlankTime(&sHBlankTime, ulSubBurst, ulMemClock, ulMemIPC);

  // REQ_HBLANK += SUB_HBLANK
  vAddFixed(lpReqHBlankTime, &sHBlankTime);

  vMBW_GetSclHBlankTime(&sHBlankTime, ulSclMode, ulSclBurst, ulMemClock, 
                        ulMemIPC);

  // REQ_HBLANK += SCL_HBLANK
  vAddFixed(lpReqHBlankTime, &sHBlankTime);

  if (lpReqHBlankTime->Fractional >= 128)
    return lpReqHBlankTime->Integral + 1;
  else
    return lpReqHBlankTime->Integral;
}



/****************************Public*Routine*******************************\
*
* ULONG MBW_VGATextReqHBlankTime()
*
* Calculate VGA Text Required Horizontal Blank Time in Micro Second
* 
* Note: lpHBlankTime with output fixed-point value
*       function return ULONG value
*       
\**************************************************************************/

ULONG MBW_VGATextReqHBlankTime(HGCO hGCO, LPFIXEDPOINT lpHBlankTime, 
                               LPDEVMODE_INFO lpModeInfo, ULONG ulMemClock, LPFIXEDPOINT lpPixelClock)
{
  LPHW_RAGEPROCRTC_EXTENSION lpHwCrtc = (LPHW_RAGEPROCRTC_EXTENSION)hGCO;
  FIXEDPOINT   sEff;
  FIXEDPOINT   sPixClk;
  FIXEDPOINT   sOverhead;
  FIXEDPOINT   sTemp;
  ULONG        ulDispFIFO  = 32;   // hard code
  ULONG        ulMemIPC = 1;       // hard code

#define HWICON_SIZE 4         // hard code

  sPixClk = *lpPixelClock;

  sOverhead.Integral = 12;
  sOverhead.Fractional = 0;

  sTemp.Integral = ulMemClock;
  sTemp.Fractional = 0;

  // (2 / MEM_CLK) + (10 / MEM_CLK)
  vDivideFixed(&sOverhead, &sTemp);

  sTemp.Integral = 5;
  sTemp.Fractional = 0;
  // (5 / PIX_CLK)
  vDivideFixed(&sTemp, &sPixClk);

  // 5 PCLK delay for CDE_XCLK + 2 XCLK delay until daddrgen
  // state machine starts + 10 XCLK states
  // (5 / PIX_CLK) + (2 / MEM_CLK) + (10 / MEM_CLK)
  vAddFixed(&sOverhead, &sTemp);

  // (1 / CHARACTER_EFF) * DISP_FIFO
  vMBW_GetBurstEff(&sEff, ulDispFIFO, ulMemIPC);
  lpHBlankTime->Integral = ulDispFIFO;
  lpHBlankTime->Fractional = 0;
  vMultiplyFixed(lpHBlankTime, &sEff);

  // (1 / FONT_EFF) * 2
  vMBW_GetBurstEff(&sEff, 1, ulMemIPC);
  sTemp.Integral = 2;
  sTemp.Fractional = 0;
  vMultiplyFixed(&sTemp, &sEff);

  vAddFixed(lpHBlankTime, &sTemp);

  // (1 / HWICON_EFF) * HWICON_SIZE
  vMBW_GetBurstEff(&sEff, HWICON_SIZE, ulMemIPC);
  sTemp.Integral = HWICON_SIZE;
  sTemp.Fractional = 0;
  vMultiplyFixed(&sTemp, &sEff);

  vAddFixed(lpHBlankTime, &sTemp);

  // Divided by MEM_CLK
  sTemp.Integral = ulMemClock;
  sTemp.Fractional = 0;
  vDivideFixed(lpHBlankTime, &sTemp);

  // Add OVERHEAD
  vAddFixed(lpHBlankTime, &sOverhead);

  if (lpHBlankTime->Fractional >= 128)
    return lpHBlankTime->Integral + 1;
  else
    return lpHBlankTime->Integral;
}



/****************************Private*Routine*******************************\
*
* ULONG GetMemWidth()
*
* Get Memory Width
* 
* Note: 
*       
*
\**************************************************************************/

ULONG GetMemWidth(HGCO hGCO)
{
  ULONG                      ulMemWidth;
  LPHW_RAGEPROCRTC_EXTENSION lpHwCrtc = (LPHW_RAGEPROCRTC_EXTENSION)hGCO;

  if ((lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_VTB) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_VTB_PLUS) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_VTB_VT4) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_GTB) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_LTG) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_GTB_PLUS) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_GTB_IIC) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_GTC) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_LT_PRO))
  {
    ulMemWidth = MBW_MEM_WID64; // for LT PRO
  }
  else if ((lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_RAGE_MOBILITY) ||
           (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_RAGE_XL) ||
           (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_RAGE_XC))
  { 
    if (lpHwCrtc->ulMemoryInterface & MEMORY_INTERFACE_64BIT)
      ulMemWidth = MBW_MEM_WID64;
    else if (lpHwCrtc->ulMemoryInterface & MEMORY_INTERFACE_32BIT)
      ulMemWidth = MBW_MEM_WID32;
    else
      ulMemWidth = 0;
  }

  return ulMemWidth;
}



/****************************Private*Routine*******************************\
*
* ULONG GetMemoryClock()
*
* Get Memory Clock
* 
* Note: 
*       
*
\**************************************************************************/

ULONG GetMemoryClock(HGCO hGCO)
{
  UCHAR   ucAddress;
  UCHAR   ucResult;
  UCHAR   XClockDivider []  = {1,2,4,8,3,1,1,1}; // 5,6,7 is not used
  ULONG   ulXClock;
  ULONG   ulMemWidth;

  PLL_DIVIDERS XClockPLLDividers;

  LPHW_RAGEPROCRTC_EXTENSION lpHwCrtc = (LPHW_RAGEPROCRTC_EXTENSION)hGCO;
  
  // Now get the values for XCLK this is common for both CRTC
  ucAddress = PLL_EXT_CNTL;
  ucResult  = GcoPLLReadByte(hGCO, ucAddress);       

  XClockPLLDividers.ucPLL_POST_DIV = XClockDivider[ (ucResult & 0x07) ];
  
  if (ucResult & MFB_TIMES_4_2b )
  {
      XClockPLLDividers.usPLL_FB_DIV = 4;  // incorporate Nmult in the  ulXClkFeedBackDevider
  }
  else
  {
      XClockPLLDividers.usPLL_FB_DIV = 2;
  }    
  
  ucAddress = MCLK_FB_DIV;
  ucResult  = GcoPLLReadByte(hGCO, ucAddress);
  
  XClockPLLDividers.usPLL_FB_DIV *= (USHORT)ucResult;   
  
  ucAddress = PLL_REF_DIV;
  ucResult  = GcoPLLReadByte(hGCO, ucAddress);
  
  XClockPLLDividers.usPLL_REF_DIV = (USHORT) ucResult;   
     
  if (XClockPLLDividers.ucPLL_POST_DIV == 0 || 
      XClockPLLDividers.usPLL_REF_DIV  == 0 ||
      XClockPLLDividers.usPLL_FB_DIV   == 0)
  {
    return 0;
  }

  // X Clock in kHz/10
  ulXClock = (lpHwCrtc->HwAsicId.ulReferenceFrequency * (ULONG)XClockPLLDividers.usPLL_FB_DIV) /
             ((ULONG)XClockPLLDividers.usPLL_REF_DIV * (ULONG)XClockPLLDividers.ucPLL_POST_DIV);

  ulXClock /= 100; //XClock in MHz

  ulMemWidth = GetMemWidth(hGCO);

  if (lpHwCrtc->ucHFBOn && (ulMemWidth == MBW_MEM_WID32))
    ulXClock <<= 1;
  else
    // For SDRAM 2:1 Memory Clock is twice the value of XCLK. 
    if (lpHwCrtc->ulRageProCrtcCaps & RAGEPRO_CRTC_CAPS_SDRAM_21)
      ulXClock <<= 1;

  return ulXClock;
}



/****************************Private*Routine*******************************\
*
* ULONG MBW_GetMemIPC()
*
* Get MEM_IPC
* 
* Note: 
*       
*
\**************************************************************************/

ULONG MBW_GetMemIPC(HGCO hGCO)
{
  ULONG   ulMemIPC;
  LPHW_RAGEPROCRTC_EXTENSION lpHwCrtc = (LPHW_RAGEPROCRTC_EXTENSION)hGCO;

  if ((lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_VTB) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_VTB_PLUS) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_VTB_VT4) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_GTB) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_LTG) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_GTB_PLUS) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_GTB_IIC) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_GTC) ||
      (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_LT_PRO))
  {
    ulMemIPC = MBW_MEM_IPC1;
  }
  else if ((lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_RAGE_MOBILITY) ||
           (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_RAGE_XL) ||
           (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_RAGE_XC))
  {
    // 64-bit width and 1 MEM_IPC for SDR 1:1 
    if (lpHwCrtc->ulMemoryInterface & MEMORY_INTERFACE_64BIT)
      ulMemIPC = MBW_MEM_IPC1;
    // 32-bit width and 2 MEM_IPC for SDR 2:1 
    else if (lpHwCrtc->ulMemoryInterface & MEMORY_INTERFACE_32BIT)
      ulMemIPC = MBW_MEM_IPC2;
  }

  return ulMemIPC;
}



/****************************Public*Routine*******************************\
*
* vMBW_GetTotalBandwidth()
*
* Get Total Bandwidth
* 
* Note: 
*       
*
\**************************************************************************/

VOID vMBW_GetTotalBandwidth(HGCO hGCO, LPFIXEDPOINT lpBandwidth)
{
  ULONG                      ulMemClock;
  ULONG                      ulMemWidth;
  FIXEDPOINT                 sFactorMem32 = {1, 192};
  LPHW_RAGEPROCRTC_EXTENSION lpHwCrtc = (LPHW_RAGEPROCRTC_EXTENSION)hGCO;

  ulMemClock = GetMemoryClock(hGCO);

  ulMemWidth = GetMemWidth(hGCO);

  vMBW_GetMemBW(lpBandwidth, ulMemClock, ulMemWidth, (lpHwCrtc->ulRageProCrtcCaps & RAGEPRO_CRTC_CAPS_BANDWIDTH_FIX));

  if ((ulMemWidth == MBW_MEM_WID64) && (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_RAGE_MOBILITY))
  {
    // EPR# 34959 to support 1600x1200x32@85Hz
    lpBandwidth->Integral += 90;  // 42
  }
  else if ((ulMemWidth == MBW_MEM_WID32) && !(lpHwCrtc->ulRageProCrtcCaps & RAGEPRO_CRTC_CAPS_SDRAM_21))
  {
    vMultiplyFixed(lpBandwidth, (LPFIXEDPOINT)&sFactorMem32);

    if (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_RAGE_XC)       
    {
      sFactorMem32.Fractional = 64;

      vMultiplyFixed(lpBandwidth, (LPFIXEDPOINT)&sFactorMem32);
    }
  }
}



/****************************Public*Routine*******************************\
*
* vMBW_GetTotalHTime()
*
* Get Total HTime
* 
* Note: 
*       
*
\**************************************************************************/

VOID vMBW_GetTotalHTime(HGCO hGCO, LPHORIZONTAL_TIME lpHTime, LPDEVMODE_INFO lpModeInfo, ULONG ulDisplayTypes)
{
  BIOS_GENERAL_CRTC_TIMING   sBiosGeneralCrtcTiming;
  USHORT                     ausModeTableOffset[MAX_NO_OF_LCD_RES_TIMING];
  LPHW_RAGEPROCRTC_EXTENSION lpHwCrtc = (LPHW_RAGEPROCRTC_EXTENSION)hGCO;
  PANEL_INFO                 PanelInfo;
  DEVMODE_INFO               sModeInfo = *lpModeInfo;
  FIXEDPOINT                 sTotal;
  FIXEDPOINT                 sDisp;
  FIXEDPOINT                 sHalfHOverScan = {0, 0};
//  FIXEDPOINT                 sHalfVOverScan = {0, 0};
  FIXEDPOINT                 sFactorMem32 = {1, 192};
  ULONG                      ulMemWidth;
  ULONG                      ulMemClock;
  FIXEDPOINT                 sPixelClock;
  ULONG                      ulHBlankFactor;
  ULONG                      ulVBlankFactor;


  if ((ulDisplayTypes & HW_DISPLAY_TYPE_LCD) && !(ulDisplayTypes & HW_DISPLAY_TYPE_TV))
  {
    if ((lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_RAGE_XL) ||
        (lpHwCrtc->HwAsicId.ulChipFamily == FAMILY_RAGE_XC))
    {
      sModeInfo.ulPelsWidth = (ULONG)lpHwCrtc->LCDPanelInfo.usHorizontalSize;
      sModeInfo.ulPelsHeight = (ULONG)lpHwCrtc->LCDPanelInfo.usVerticalSize;

    }
    else
    {
      GetPanelInformationTable(hGCO, lpHwCrtc->BiosInfoTable.usOffsetToLcdParameterTable, 
                               (LPUSHORT)ausModeTableOffset, (LPPANEL_INFO)&PanelInfo);
    
      sModeInfo.ulPelsWidth = (ULONG) PanelInfo.usHorizontalSize;
      sModeInfo.ulPelsHeight = (ULONG)PanelInfo.usVerticalSize;
    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久超级碰视频| 中文字幕精品—区二区四季| 亚洲一区二区三区国产| 欧美日韩日本视频| 日韩—二三区免费观看av| 日韩一级片在线播放| 美女国产一区二区| 欧美高清在线一区二区| 91麻豆.com| 青青青伊人色综合久久| 国产校园另类小说区| 91蜜桃视频在线| 免费欧美日韩国产三级电影| 国产三级一区二区| 91色视频在线| 亚洲mv在线观看| 2021久久国产精品不只是精品| 丁香婷婷深情五月亚洲| 亚洲一区二区三区自拍| 久久综合色之久久综合| 色综合久久久久网| 久久国产福利国产秒拍| 亚洲视频在线一区| 日韩欧美高清一区| 99视频在线精品| 奇米在线7777在线精品| 国产精品美女一区二区| 欧美日韩另类一区| 懂色中文一区二区在线播放| 亚洲国产裸拍裸体视频在线观看乱了 | 国产成人激情av| 亚洲综合激情另类小说区| 欧美v日韩v国产v| 日本电影欧美片| 久草精品在线观看| 亚洲精品国产无天堂网2021| 精品卡一卡二卡三卡四在线| 99精品在线免费| 91丨九色porny丨蝌蚪| 三级欧美在线一区| 日韩一区欧美一区| 精品粉嫩aⅴ一区二区三区四区| 91在线观看高清| 国产在线国偷精品免费看| 亚洲午夜免费视频| 欧美极品美女视频| 日韩欧美国产一区在线观看| 欧美色手机在线观看| 9i在线看片成人免费| 国产一区二区毛片| 免费三级欧美电影| 亚洲高清一区二区三区| 国产精品国产a级| 久久婷婷国产综合精品青草 | 亚洲一区二区三区四区的 | 日韩欧美你懂的| 在线视频观看一区| 91视频一区二区| 成人不卡免费av| 国产99久久久精品| 国产成人精品一区二区三区四区| 麻豆传媒一区二区三区| 亚洲成av人片在线观看| 亚洲精品国产品国语在线app| 欧美国产精品v| 国产拍欧美日韩视频二区| 2023国产精品| 久久精品在线观看| 久久久久国色av免费看影院| www国产成人| 国产午夜亚洲精品理论片色戒| 欧美一区二区福利在线| 欧美精品国产精品| 91精品国产福利在线观看| 这里只有精品99re| 欧美一级理论片| 精品久久久三级丝袜| 久久人人爽爽爽人久久久| 久久综合色综合88| 欧美国产在线观看| 亚洲色欲色欲www在线观看| ●精品国产综合乱码久久久久| 亚洲素人一区二区| 国产成人在线视频播放| 国产一区三区三区| 懂色中文一区二区在线播放| 不卡一区二区三区四区| 91麻豆国产福利在线观看| 色偷偷一区二区三区| 欧美日韩精品专区| 精品国产成人系列| 国产日韩欧美精品在线| 亚洲视频一区在线| 午夜精品免费在线观看| 日韩一区国产二区欧美三区| 国产精品久久久久影视| 国产精品日产欧美久久久久| 国产精品国产三级国产普通话三级 | 日韩欧美中文字幕一区| 久久精品亚洲国产奇米99| 久久综合久久综合久久| 国产欧美精品一区| 国产一区二区精品在线观看| 成人黄色软件下载| 欧美三级韩国三级日本三斤| 欧美喷水一区二区| 欧美成人官网二区| 久久久99精品免费观看不卡| 一区在线中文字幕| 亚洲观看高清完整版在线观看| 七七婷婷婷婷精品国产| 成人黄色软件下载| 亚洲天堂精品在线观看| 一区二区日韩av| 99久久亚洲一区二区三区青草| 色噜噜狠狠成人中文综合| 日韩视频免费直播| 国产精品久久久久久久久晋中 | 亚洲免费电影在线| 欧美性猛片aaaaaaa做受| 国产精品亚洲专一区二区三区| 粉嫩一区二区三区在线看| 三级不卡在线观看| 在线免费亚洲电影| 亚洲视频一区在线| 99久久综合色| 中文字幕在线观看一区二区| 国产成人精品在线看| 久久久久久日产精品| 亚洲成人免费观看| 欧美日韩在线精品一区二区三区激情| 亚洲美女视频在线观看| 91一区二区三区在线播放| 亚洲欧洲色图综合| 97精品久久久午夜一区二区三区| 国产精品视频观看| 成人精品小蝌蚪| 国产精品久久久久一区| 99久久精品国产精品久久| 亚洲欧洲性图库| 在线观看成人免费视频| 亚洲综合一区二区| 欧美精品在线视频| 男人操女人的视频在线观看欧美| 欧美成人一区二区三区| 国产在线精品国自产拍免费| 国产欧美日韩亚州综合| 99久久精品免费看国产免费软件| 一区二区三区在线视频免费| 欧美丝袜丝nylons| 青青草国产精品97视觉盛宴| 欧美精品一区二区三区蜜臀| 国产成人精品免费| 国产精品美女www爽爽爽| caoporen国产精品视频| 亚洲精选免费视频| 6080日韩午夜伦伦午夜伦| 麻豆精品久久精品色综合| 日韩网站在线看片你懂的| 国产精品18久久久久久久久久久久 | 成人18视频在线播放| 一区二区国产盗摄色噜噜| 在线不卡免费av| 国产成人免费在线观看不卡| 亚洲精品视频自拍| 欧美一区二区高清| 北条麻妃国产九九精品视频| 香港成人在线视频| 国产日韩在线不卡| 精品视频1区2区| 国产一区二区在线电影| 亚洲精品视频免费看| 日韩一区二区在线观看视频| 不卡的电视剧免费网站有什么| 亚洲午夜激情av| eeuss鲁片一区二区三区| 日韩电影在线一区二区三区| 日韩欧美国产三级| 不卡在线观看av| 日本视频中文字幕一区二区三区| 久久免费电影网| 欧美日韩午夜在线视频| 高清成人在线观看| 日韩精品视频网| 国产精品第五页| 精品久久久久久最新网址| 在线看国产日韩| 国产91在线看| 蜜桃av一区二区| 亚洲一区二区欧美日韩| 欧美国产禁国产网站cc| 日韩欧美国产综合| 欧美视频在线观看一区二区| 福利一区二区在线观看| 久久精品国产免费| 亚洲已满18点击进入久久| 亚瑟在线精品视频| 国产精品免费久久久久| 精品成人佐山爱一区二区| 欧美在线观看一区|