九九99在线视频-九九99香蕉在线视频美国毛片-九九99热久久精品在线9-九九99热-九九99久久精品在免费线bt-九九99久久

以文本方式查看主題

-  曙海教育集團論壇  (http://www.adgdgn.cn/bbs/index.asp)
--  Windows驅(qū)動開發(fā)  (http://www.adgdgn.cn/bbs/list.asp?boardid=75)
----  Windows CE下驅(qū)動程序開發(fā)基礎(chǔ)(1)  (http://www.adgdgn.cn/bbs/dispbbs.asp?boardid=75&id=2722)

--  作者:wangxinxin
--  發(fā)布時間:2010-12-17 12:02:45
--  Windows CE下驅(qū)動程序開發(fā)基礎(chǔ)(1)

Windows CE下的串口驅(qū)動程序能夠處理所有I/O行為類似串口的設(shè)備,包括基于16450、16550 UART(通用異步收發(fā)芯片)的設(shè)備和一些采用DMA的設(shè)備,常見的有9針串口、紅外I/O口、Modem等。在%_WINCEROOT%\\Public\\Common\\OAK\\Drivers\\Serial目錄下,COM_MDD2子目錄包含新的串口驅(qū)動MDD層函數(shù)代碼。COM16550子目錄包含串口驅(qū)動PDD層代碼。SER16550子目錄包含的一系列函數(shù)專用于控制與16550兼容的UART,這樣PDD層的主要工作就是調(diào)用SER16550中的函數(shù)。還有一個ISR16550子目錄包含的是串口驅(qū)動程序?qū)S玫目砂惭bISR(中斷服務(wù)例程),而很多硬件設(shè)備驅(qū)動程序采用CE默認的可安裝ISR giisr.dll。一般串口設(shè)備相應(yīng)的注冊表設(shè)置例子及意義如下:

[HKEY_LOCAL_MACHINE\\Drivers\\BuiltIn\\Serial_1]

鍵 意義
"SysIntr"=dword:13 串口1的中斷ID為十進制13
"IoBase"=dword:02F8 串口1的IO空間首地址為十六進制2F8
"IoLen"=dword:8  串口1的IO空間長度為8個字節(jié)
"DeviceArrayIndex"=dword:0 串口1的索引,是1的由來
"Order"=dword:0 串口1驅(qū)動的加載順序
"DeviceType"=dword:0 串口1的設(shè)備類型
"DeVConfig"=hex: 10,00 .... 串口1在與Modem設(shè)備通訊時的配置,如波特率、奇偶校檢等
"FriendlyName"="COM1:" 串口1在撥號程序中顯示的名字
"Tsp"="Unimodem.dll" 串口1 被用于與Modem設(shè)備通訊的時候要加載的TSP(TAPI Service provider)DLL
"Prefix"="COM" 串口1的流接口的前綴
"Dll"="com16550.Dll" 串口1的驅(qū)動程序DLL

  SysIntr由CE在文件Nkintr.h中預定義,用于唯一標識中斷設(shè)備。OEM可以在文件Oalintr.h中定義自己的SysIntr。常見的預定義SysIntr有SYSINTR_NOP(中斷只由ISR處理,IST不再處理),SYSINTR_RESCHED(重新調(diào)度線程),SYSINTR_DEVICES(由CE預定義的設(shè)備中斷ID的基值),SYSINTR_PROFILE、SYSINTR_TIMING、SYSINTR_FIRMWARE等都是基于SYSINTR_DEVICES定義的。IoBase是串口1的IO地址空間的首地址,IoLen是IO空間的大小。IO地址空間只存在于x86平臺,如果在其它平臺硬件寄存器必須映射到物理地址空間,那子鍵的名稱為MemBase和MemLen。在x86平臺更多硬件的寄存器由于IO空間的局限也映射到物理地址空間。DeviceArrayIndex是設(shè)備的索引,用于區(qū)分同類型的設(shè)備。Prefix是流驅(qū)動程序的前綴,當應(yīng)用程序調(diào)用CreateFile函數(shù)傳遞COM1:參數(shù)時,文件系統(tǒng)負責與串口驅(qū)動程序通信,串口驅(qū)動程序是在CE啟動時由device.exe加載的。

  下面從MDD層函數(shù)COM_Init開始探索串口驅(qū)動的初始化過程。COM_Init是在串口設(shè)備被檢測后由設(shè)備管理器device.exe調(diào)用的,主要的作用是初始化設(shè)備,它的唯一參數(shù)Identifier是由device.exe傳遞的,其類型是一個字符串指針,字符串的內(nèi)容是HLM\\Drivers\\Active\\xx,xx是一個十進制數(shù)(device.exe會跟蹤系統(tǒng)中每個驅(qū)動程序,把加載的驅(qū)動程序記錄在Active鍵下)。

  COM_Init先分配一個HW_INDEP_INFO結(jié)構(gòu)體,這個結(jié)構(gòu)體是獨立于串口硬件的頭信息(MDD、PDD、SER16550都包含自己獨特的結(jié)構(gòu)體,具體的結(jié)構(gòu)體定義請參見串口驅(qū)動源碼),分配之后再初始化結(jié)構(gòu)體中每個成員,初始化結(jié)構(gòu)體后調(diào)用 OpenDeviceKey((LPCTSTR)Identifier)打開HLM\\Drivers\\Active\\xx\\Key包含的注冊表路徑,在這里路徑一般為HLM\\Drivers\\BuiltIn\\Serial,即串口的驅(qū)動程序信息在注冊表中所處的位置。COM_Init接著在HLM\\Drivers\\BuiltIn\\Serial下查詢DeviceArrayIndex、Priority256的值,Priority256指定了驅(qū)動程序的優(yōu)先級,如果沒有就用默認的優(yōu)先級。接下來調(diào)用GetSerialObject(DeviceArrayIndex),這個函數(shù)由PDD層定義,返回HWOBJ結(jié)構(gòu)體,這個結(jié)構(gòu)體主要包含PDD層和SER16550定義的函數(shù)的指針。

  也就是說MDD通過調(diào)用這個函數(shù)才能調(diào)用底層實現(xiàn)的函數(shù)。接下來的大多數(shù)工作都是調(diào)用底層函數(shù)實現(xiàn)初始化。第一個調(diào)用的底層函數(shù)SerInit主要設(shè)置由用戶設(shè)置的硬件配置,例如線路控制、波特率。它調(diào)用Ser_GetReGIStryData函數(shù)得到保存在注冊表中的硬件信息,Ser_GetRegistryData在內(nèi)部調(diào)用系統(tǒng)提供的DDKReg_GetIsrInfoDDK和DDKReg_GetWindowInfo函數(shù)得到在HLM\\Drivers\\BuiltIn\\Serial下保存的IRQ、SysIntr、IsrDll、IsrHandler、IoBase、IoLen。IRQ是邏輯中斷號,IsrDll表示當前驅(qū)動程序的可安裝ISR所在的DLL名稱,IsrHandler 表示可安裝ISR的函數(shù)名稱。

  在這里順便提一下可安裝ISR,讀者在我以前發(fā)表的關(guān)于OAL的文章中可以了解到OEM在OEMInit函數(shù)中關(guān)聯(lián)IRQ和SysIntr,當硬件設(shè)備發(fā)生中斷時,ISR會禁止同級和低級中斷,然后根據(jù)IRQ返回關(guān)聯(lián)的SysIntr,內(nèi)核根據(jù)ISR返回的SysIntr喚醒相應(yīng)的IST(SysIntr與IST創(chuàng)建的Event關(guān)聯(lián)),IST處理中斷之后調(diào)用InterruptDone解除中斷禁止。在OEMInit中關(guān)聯(lián)的缺點是一旦編譯了CE內(nèi)核后就無法添加這種關(guān)聯(lián)了,而一些硬件設(shè)備會隨時插拔或者共享中斷,要關(guān)聯(lián)這樣的硬件設(shè)備解決方法就是可安裝ISR,可安裝ISR專用于處理指定的硬件設(shè)備發(fā)出的中斷,所以如果硬件設(shè)備需要可安裝ISR必須在注冊表中添加IsrDll、IsrHandler。多數(shù)硬件設(shè)備采用CE默認的可安裝ISR giisr.dll,格式如下:

"IsrDll"="giisr.dll"

"IsrHandler"="ISRHandler"

  如果一個硬件驅(qū)動程序需要可安裝ISR而開發(fā)者又不想自己寫一個,那么可以利用giisr.dll來實現(xiàn)。除了在注冊表中添加如上所示外,還要在驅(qū)動程序中調(diào)用相關(guān)函數(shù)注冊可安裝ISR。偽代碼如下:

g_IsrHandle = LoadIntChainHandler(IsrDll, IsrHandler, (BYTE)Irq);

GIISR_INFO Info;

PHYSICAL_ADDRESS PortAddress = {PhysAddr, 0};

TransBusAddrToStatic(BusType, dwBusNumber, PortAddress, dwAddrLen, &dwIOSpace, &(PVOID)PhysAddr)

Info.SysIntr = dwSysIntr;

Info.CheckPort = TRUE;

Info.PortIsIO = (dwIOSpace) ? TRUE : FALSE;

Info.UseMaskReg = TRUE;

Info.PortAddr = PhysAddr + 0x0C;

Info.PortSize = sizeof(DWORD);

Info.MaskAddr = PhysAddr + 0x10;

KernelLibIoControl(g_IsrHandle, IOCTL_GIISR_INFO, &Info, sizeof(Info), NULL, 0, NULL);

  LoadIntChainHandler函數(shù)負責注冊可安裝ISR,參數(shù)1為DLL名稱,參數(shù)2為ISR函數(shù)名稱,參數(shù)3為IRQ。TransBusAddrToStatic函數(shù)在后面講。如果要利用giisr.dll作為可安裝ISR,必須先填充GIISR_INFO結(jié)構(gòu)體,CheckPort=TRUE表示giisr要檢測指定的寄存器來確定當前發(fā)出中斷的是否是這個設(shè)備。PortIsIO表示寄存器地址屬于哪個地址空間,F(xiàn)ALSE表示是內(nèi)定空間,TRUE表示IO空間。UseMaskReg=TRUE表示設(shè)備有一個掩碼寄存器,專用于指定當前設(shè)備是否是中斷源,也就是發(fā)出中斷,而MaskAddr表示掩碼寄存器的地址。如果對Info.Mask賦值,那么PortAddr表示一個特殊的寄存器地址,這個寄存器的值與Mask的值&運算的結(jié)果如果為真,則證明當前設(shè)備是中斷源,否則返回SYSINTR_CHAIN(表示當前ISR沒有處理中斷,內(nèi)核將調(diào)用ISR鏈中下一個ISR),如果UseMaskReg=TRUE,那么MaskReg寄存器的值與PortAddr指定的寄存器的值&運算的結(jié)果如果為真,則證明當前設(shè)備是中斷源。

  函數(shù)SerInit接著調(diào)用函數(shù)Ser_InternalMapRegisterAddresses轉(zhuǎn)換IO地址并且映射地址,Ser_InternalMapRegisterAddresses在內(nèi)部調(diào)用系統(tǒng)提供的HalTranslateBusAddress(Isa, 0, ioPhysicalBase, &inIoSpace, &ioPhysicalBase)函數(shù)將與總線相關(guān)的地址轉(zhuǎn)換為系統(tǒng)地址,參數(shù)1為總線類型,參數(shù)2為總線號,參數(shù)3為要轉(zhuǎn)換的地址(PHYSICAL_ADDRESS類型,實際是LARGE_INTEGER型),參數(shù)4指定寄存器地址屬于IO地址空間還是物理地址空間,參數(shù)5返回轉(zhuǎn)換后的物理地址。觀察HalTranslateBusAddress的源碼得知如果是在x86平臺,這個函數(shù)除了把參數(shù)3賦給了參數(shù)5其余什么都沒有做,而非x86平臺將inIoSpace的值置為0,表示一定是物理地址。在調(diào)用HalTranslateBusAddress前要確定從注冊表中得到的寄存器地址到底是屬于哪個地址空間的,例如:

ULONG inIoSpace = 1; ///1表示是IO空間
PHYSICAL_ADDRESS ioPhysicalBase = {iobase, 0}; ///相當于ioPhysicalBase.LowPart = iobase

  在地址轉(zhuǎn)換后就要將轉(zhuǎn)換后的地址映射到驅(qū)動程序(一般IST和應(yīng)用程序一樣運行在用戶模式)能夠訪問的虛擬地址空間(0x80000000以下)和ISR能夠訪問的靜態(tài)虛擬地址空間中(0x80000000以上)。例如:

////如果地址屬于物理地址空間

ioPortBase = (PUCHAR)MmMapIoSpace(ioPhysicalBase, Size, FALSE);
TransBusAddrToStatic(Isa, 0, ioPhysicalBase, Size, &inIoSpace, ppStaticAddress);

  MmMapIoSpace函數(shù)負責將物理地址映射到驅(qū)動程序能夠訪問的虛擬地址空間中,通過源碼分析MmMapIoSpace在內(nèi)部分別調(diào)用:

pVirtualAddress =VirtualAlloc(0, SourceSize, MEM_RESERVE, PAGE_NOAccess);

VirtualCopy(pVirtualAddress, (PVOID)(SourcePhys >> 8), SourceSize, PAGE_PHYSICAL | PAGE_READWRITE |
(CacheEnable ? 0 : PAGE_NOCACHE));

  VirtualAlloc分配一塊和MemLen一樣大小的虛擬地址空間,因為參數(shù)1為0,所以內(nèi)核自動分配。一般MemLen小于2MB,所以會在應(yīng)用程序的地址空間中分配。VirtualCopy負責將硬件設(shè)備寄存器的物理地址與VirtualAlloc分配的虛擬地址做一個映射關(guān)系,這樣驅(qū)動程序訪問PvirtualAddress實際上就是訪問第一個寄存器。因為硬件設(shè)備寄存器的物理地址一定是在512MB(CE支持RAM的最大值)以上,所以除了最后的參數(shù)要加PAGE_PHYSICAL外,第二個參數(shù)物理地址也要右移8位(或者除以256)。

  映射硬件寄存器當然PAGE_NOCACHE是必須加的。TransBusAddrToStatic函數(shù)負責將物理地址映射到ISR能夠訪問的靜態(tài)虛擬地址空間中,當出現(xiàn)中斷共享時,ISR要負責訪問硬件設(shè)備的某一個寄存器來判斷中斷源,所以將寄存器的物理地址映射到靜態(tài)虛擬地址空間中是必要的(ISR只能訪問靜態(tài)的虛擬地址空間)。所謂靜態(tài)虛擬地址空間是指在OEMAddressTable中定義的虛擬地址空間(當然是0x80000000以上)。在x86平臺一般這個表只定義RAM的物理地址與虛擬地址對應(yīng)關(guān)系,而硬件設(shè)備的寄存器地址并不在該表中定義,所以如果要創(chuàng)建一塊靜態(tài)的虛擬地址空間供ISR訪問,必須在此之前調(diào)用CreateStaticMapping函數(shù)在0xC4000000到0xE0000000虛擬地址空間中分配。TransBusAddrToStatic函數(shù)在內(nèi)部就是調(diào)用了CreateStaticMapping函數(shù)。注:硬件設(shè)備的寄存器地址也可以在OEMAddressTable中定義。

////如果地址屬于IO空間

ioPortBase = (PUCHAR)ioPhysicalBase.LowPart;
*ppStaticAddress=ioPortBase

  這種情況只屬于x86平臺,是IO空間就可以直接訪問,即使是用戶模式。

  SerInit函數(shù)接著初始化SER_INFO結(jié)構(gòu)體成員,之后調(diào)用SL_Init函數(shù),這個函數(shù)在ser16550中定義,負責初始化SER16550_INFO結(jié)構(gòu)體,在這個結(jié)構(gòu)體中保存串口8個寄存器的地址。SerInit函數(shù)執(zhí)行完畢后COM_Init函數(shù)創(chuàng)建接收緩沖區(qū),然后調(diào)用StartDispatchThread函數(shù)初始化中斷并且創(chuàng)建IST。StartDispatchThread函數(shù)在內(nèi)部調(diào)用InterruptInitialize函數(shù)關(guān)聯(lián)SysIntr和Event,然后調(diào)用InterruptDone函數(shù)告訴內(nèi)核當前串口可以中斷處理,接著調(diào)用CreateThread函數(shù)創(chuàng)建IST線程。(over吧,再往下說就和串口硬件有關(guān)了,看多了沒注釋的代碼我也煩!!)


主站蜘蛛池模板: 91人人爽久久涩噜噜噜 | 中文字幕手机在线视频 | 国产亚洲欧美精品永久 | 性饥渴的农村熟妇 | 亚洲午夜无码av毛片久久 | 国产成人久久婷婷精品流白浆 | 男女猛烈无遮挡免费视频 | 久久av免费看| 男女后进式猛烈xx00动态图片 | 久久青青草原国产毛片 | 97毛片| 一本中文字幕 | 国产69精品久久久久9999不卡免费 | 中文字幕人妻无码专区 | 三级视频在线观看 | www日本在线视频 | 国产91网 | 久久天天躁狠狠躁亚洲综合公司 | 高清欧美性猛交 | 国产又粗又硬又猛的免费视频 | 国产成人在线免费观看 | 亚洲免费观看在线视频 | 伊人啪啪 | 亚洲成人a v | 69视频在线观看免费 | 日本乱偷人妻中文字幕 | 97在线视频观看 | 91n成人| 国产 精品 自在自线 | 国产猛烈高潮尖叫视频免费 | 成人合集 | 国产涩涩视频在线观看 | 天天干夜夜操 | 超碰免费看 | 日韩精品无码中文字幕一区二区 | www.av网址| 日本一级bbbbbbbbb | 午夜精品久久久久久久96蜜桃 | 夜夜摸狠狠添日日添高潮出水 | 玩弄中年熟妇正在播放 | 二区视频在线 | 成人久久一区 | 亚洲精品一区二区五月天 | 午夜激情视频在线 | 丰满熟妇人妻中文字幕 | 青青视频免费在线观看 | 中文字幕第一页av | 国产精品手机免费 | 黄色免费网站观看 | 国产精品igao视频网入口 | 杨幂一区二区三区免费看视频 | 国产69精品久久久久999小说 | 超色视频| 日本边添边摸边做边爱的网站 | 国产中文字幕乱人伦在线观看 | 野战的情欲hd三级 | 人妻少妇精品一区二区三区 | 日日操操| 久久99综合| 成人免费观看黄a大片夜月小说 | 欧美日韩免费在线 | 国产精品丝袜在线 | 大江大河第三部50集在线观看旭豪 | 日本免费在线观看 | 日韩免费福利视频 | 国产精品粉嫩jk国产呦系列 | 国产精品99久久久久久小说 | 80日本xxxxxxxxx96 81国产精品久久久久久久久久 | 欧美性色19p | 午夜精品久久久久久久99老熟妇 | 26uuu亚洲国产欧美日韩 | 日本69式三人交 | 性按摩玩人妻hd中文字幕 | 日本黄色免费 | 伊人久久大香线蕉综合5g | 久久久久99精品成人片牛牛影视 | 国产最露的三级 | 国产破苞第一次 | 999午夜| 中文字幕在线第一页 | 黄色理论片 | 日韩精品在线免费观看视频 | 亚洲欧美日韩另类 | 日韩精品99久久久久中文字幕 | 亚洲欧美日韩综合在线 | 国内精自线一二三四在线看 | 巨胸喷奶水视频www免费网站 | 亚洲第一网站在线观看 | 日韩国精品一区二区a片 | 日本精品三级 | 极品蜜桃臀肥臀-x88av | 亚洲区小说区图片区qvod | 国产精品乱码一区二区三 | 男女做爰猛烈啪啪吃奶动床戏麻豆 | 综合久久五月 | а√最新版在线天堂 | 国产精品另类激情久久久免费 | 国产精品久久久亚洲 | 国产欧美日韩视频 | 狠狠躁夜夜躁人人爽天天天天97 | 熟妇人妻av无码一区二区三区 | 日本高清有码视频 | 欧日韩无套内射变态 | 亚洲 欧美 日韩 综合 国产aⅴ | 中文字幕av日韩精品一区二区 | 97视频免费观看2区 97视频网站 | 在线观看久| 黑人巨大精品欧美一区二区 | 日韩欧美一级大片 | 中文字幕不卡一区 | 老色鬼在线精品视频在线观看 | 四川少妇被弄到高潮 | 欧美又大又黄又粗高潮免费 | 国产成人av一区二区在线观看 | 国产乱人伦精品一区二区 | 日韩99在线 | 中文 | 国精产品一区一区三区有限在线 | aaa级片 | 成人欧美一区二区三区黑人麻豆 | 亚洲乱码日产精品bd在线 | 中文字幕在线二区 | 伊人蕉 | 青青草原综合久久大伊人精品 | 强开小婷嫩苞又嫩又紧视频 | 欧美色图首页 | 久久99久久99精品 | 欧美8888| 日本a v在线播放 | 日韩av免费网站 | 久久国产精品久久久久久久久久 | zzijzzij日本成熟少妇 | 香港曰本韩国三级网站 | 亚洲国产精品一区二区第一页 | 中国亚州女人69内射少妇 | 日韩aa视频 | 国产剧情久久久 | 在线精品亚洲一区二区佐佐木明希 | 福利一区视频 | 少妇下蹲露大唇无遮挡 | 亚洲天堂久久久 | 97视频在线免费 | 日本japanese丰满少妇 | av一本久道久久综合久久鬼色 | 六月婷婷激情网 | 精品国产黄 | 97久久精品一区二区三区观看 | 国产性猛交××××乱七区 | 日韩一区二区三区av | 51区成人一码二码三码是什么 | 唐人社导航福利精品 | 不卡的av在线 | 欧美精品一区二区三区视频 | 99久在线观看 | 亚洲日韩看片无码超清 | 永久免费看成品人影视 | 久久久久久久999 | 国产在线视频一区二区 | 男女啪啪免费体验区 | 国产精品自在在线午夜出白浆 | 精品久久久久久乱码天堂 | 午夜一区二区国产好的精华液 | 日本精品视频网站 | 深夜影院在线观看 | 成人无码www在线看免费 | 香蕉视频国产精品 | 国产鲁鲁视频在线观看免费 | 清纯小美女主播流白浆 | 波多野结衣不卡 | 天堂av免费| 在线观看的av网站 | 粉嫩av一区二区在线观看 | 18女人毛片 | 美女大逼| 久在线观看 | 国产一级一级一级 | 日本国产忘忧草一区在线 | 亚洲精品视频免费 | 伊人久久大香线蕉午夜 | 亚洲国产精品av | 精品国产一区二区三区香蕉 | 国产成人视屏 | 寂寞骚妇被后入式爆草抓爆 | aaa日本高清在线播放免费观看 | 亚洲三级一区 | 免费观看成人38网站 | caoporn视频在线 | 色www情 | 精品亚洲一区二区三区四区五区 | 青青草av | 澳门日本三级少妇三级99 | jjzz日本视频 | 一级片www | 国产亚洲精品久久久97蜜臀 | 东北少妇和黑人3p视频 | 色诱久久久久综合网ywww | 91黑丝美女 | www日韩高清 | 高级会所人妻互换94部分 | 亚洲国产精品成人va在线观看 | 久久婷香| 天天干网 | 国产午夜视频在线观看 | 免费成人在线看 | 国产精品久久久久毛片 | 国产性色强伦免费视频 | 久久精品无码一区二区无码 | 黄色爱爱视频 | 久色影视 | 深夜福利免费观看 | 久久国产精品一区二区 | 国产精品色哟哟 | 夜夜爱夜夜做夜夜爽 | 日韩精品无玛区免费专区又长又大 | 色婷婷av一区二区三区软件 | 国产精品v欧美精品v日韩 | 国模无码一区二区三区 | 91伊人网| 国产久色在线拍揄自揄拍 | 黄色av免费在线播放 | 777av| 超碰碰97| 99国产热 | www国产亚洲 | 久久久久久久 | 欧美毛片在线观看 | 日韩在线免费看 | 中文字幕精品久久久久人妻红杏1 | 性户外野战hd | 国产精品刘玥久久一区 | 久久精品中文字幕无码绿巨人 | 二区免费视频 | 绿帽av | 亚洲精品一区二区久久 | 又色又爽又黄无遮挡的免费视频 | 精品少妇一区二区三区四区五区 | 亚洲女人的天堂 | 欧美日本免费一区二区三区 | 亚洲青涩在线 | 欧美国产成人精品一区二区三区 | 国产成人精品av在线观 | 性做久久久久久免费观看欧美 | 国产女人高潮大叫a毛片 | 午夜精品久久久久久久99热黄桃 | 色哟哟视频 | 国产66精品久久久久999小说 | 福利视频网站 | 国产婷婷综合在线视频 | 国产一区在线视频观看 | 盗摄精品av一区二区三区 | 亚洲激情免费视频 | 中文字幕第31页 | 久久久久久亚洲国产精品 | 亚洲精品一区二区三区不 | 亚洲精品激情 | 国产又白又嫩又紧又爽18p | 亚洲美女精品视频 | 精品无人乱码一区二区三区的优势 | 欧美aaaaa| 免费精品人在线二线三线 | 高h禁伦肉伦np双龙 高h捆绑拘束调教小说 | 91大神在线看 | 久久精品国产亚洲a | 在线久久| 午夜精品久久久久久久传媒 | 91成人网在线播放 | 久草在线中文视频 | 催眠调教邻居美人若妻在线播放 | 无码视频一区二区三区在线观看 | 激情亚洲 | 久久精品亚洲天堂 | 国产3页 | 欧美激情视频一区二区三区不卡 | 强奷乱码中文字幕 | 久久久www成人免费毛片麻豆 | 精品一区二区超碰久久久 | 一本一道久久久a久久久精品蜜臀 | 国产精品二区一区二区aⅴ污介绍 | 国内精品久久久久伊人av | 国产成人精选视频在线观看 | 九九99九九精彩6 | 亚洲精品av久久久久久久影院 | 91精彩刺激对白 | 精品久久久久久无码专区 | 日本曰又深又爽免费视频 | 欧美干干 | 青草视频在线播放 | 大吊日肥婆视频 | 欧美在线观看一区二区 | 精品国产中文字幕 | 婷婷91欧美777一二三区 | 亚洲欧美自拍偷拍视频 | 五月天中文字幕mv在线 | 99亚洲一区 | 亚洲国产精品久久久久秋霞不卡 | 狠狠干天天色 | 丁香天五香天堂综合 | 国产好大好紧好爽好湿视频唱戏 | 午夜性色福利在线视频福利 | 日本理论片a级奶大 | 九一成人网 | 强乱中文字幕亚洲精品 | 少妇人妻无码永久免费视频 | 国产成人精品日本亚洲专区 | 日韩av在线一区二区 | 国产一级大片 | 欧美另类激情 | 成人免费网站在线观看 | 国精产品一区二区三区 | 一本一道dvd在线观看免费视频 | 亚洲 欧美 日韩 综合 国产aⅴ | 农村妇女毛片精品久久久 | 国产精品毛片久久久久久久 | 日韩视频免费在线 | 少妇久久久久久久久久 | 日韩乱码人妻无码系列中文字幕 | 日本亚洲精品成人欧美一区 | 国产伦精品一区二区三区在线观看 | 中文字幕午夜精品一区二区三区 | 另类视频一区 | 97国精产品无人区一码二码 | 最近中文字幕在线中文视频 | 午夜一区 | 老司机精品福利视频 | 欧美日韩中文国产 | 国产情侣小视频 | 欧美日韩国产区 | 闺蜜张开腿让我爽了一夜 | 在线黄色av网站 | 日本娇小侵犯hd | 欧美自拍亚洲综合丝袜 | 国产特级乱淫免费看 | 亚洲欧美一区二区三区情侣bbw | 国产99精品视频 | 无码爆乳护士让我爽 | 国产尤物av一区二区三区 | 大尺度做爰黄9996片视频 | 国产精品主播 | 日韩 国产 在线 | 97超碰碰碰 | 国产精品久久久久久久久潘金莲 | 亚洲成a v人片在线观看 | www一区二区| 77777亚洲午夜久久多人 | 一区二区久久精品66国产精品 | 欧美少妇b | 国产无套免费网站69 | 在线观看av网站 | 欧美jizzhd精品欧美18 | 亚洲草逼 | 天堂8资源最新版8 | 青青草十七色 | 午夜dv内射一区二区 | 日本中文字幕一区二区有限公司 | 韩国av三级 | 亚洲第一二三四区 | 激情网婷婷 | 九九久久精品视频 | 久久久久久a亚洲欧洲av | 精久国产av一区二区三区孕妇 | 中曰韩黄色片 | 成人av动漫在线观看 | 自拍偷拍中文字幕 | 久久精品噜噜噜成人 | 中文字幕在线不卡视频 | 古装大尺度激情呻吟视频 | 久久久久国产精品视频 | 亚洲一区中文字幕永久在线 | 青青草欧美 | 亚洲精品www久久久 亚洲精品www久久久久久 | 成人手机在线免费视频 | 岛国av在线免费 | 色综久久综合桃花网 | 99热最新网址 | 午夜精品免费观看 | 国产又粗又猛又爽又黄的视频软件 | 九九久久九九久久 | 国产午夜精品免费一区二区三区视频 | 国产精品高潮呻吟久久久 | 日韩有码在线播放 | 99久热在线精品996热是什么 | 亚洲鲁丝片一区二区三区 | 内射人妻视频国内 | 免费无码又爽又刺激网站 | 国产精品九九九 | 男人的天堂你懂的 | 天天躁日日摸久久久精品 | 水蜜桃一二三区 | 久久99精品国产自在现线小黄鸭 | 久久国产精品久久久久久电车 | 欧美国产高潮xxxx1819 | 一个人免费观看视频www中文 | 欧美精品一二三 | 高清av一区二区三区 | 一区精品在线 | 一级a毛片 | 热99re久久免费视精品频软件 | 97人人添人澡人人爽超碰 | 波多野结衣日韩 | 久久精品国产99久久无毒不卡 | 人妻少妇精品系列 | 求欧美精品网址 | 亚洲不卡中文字幕无码 | 手机成人免费视频 | 美女av网站 | 久久久亚洲裙底偷窥综合 | 亚洲国产成人精品久久久国产成人一区 | 亚洲精品久久久无码一区二区 | 国产乱妇无乱码大黄aa片 | 尤物精品视频在线观看 | 衣服被扒开强摸双乳18禁网站 | 亚洲视频在线一区二区 | 欧美黑人一级视频 | 神马影院午夜伦理片 | 国产亚洲精品久久yy50 | 欧美成人另类 | 一本色道久久88加勒比—综合 | 色婷婷综合久色aⅴ五区最新 | 中文字幕无线观看中文字幕 | 欧美特一级片 | 日韩在线免费 | 国产精品刺激 | 久久精品国产亚洲7777 | 色情久久久av熟女人妻网站 | 日韩欧美在线观看一区二区 | 视频一二三区 | 国产农村妇女露脸对白视频 | 国产激情久久久久影院老熟女 | 成年人天堂com | 国内精品999 | 亚洲精品丝袜日韩 | 国产午夜精品理论片 | 爱情岛论坛亚洲首页入口章节 | 日本一级片在线观看 | 久久精品国产久精国产一老狼 | 欧美老熟妇xb水多毛多 | av在线亚洲男人的天堂 | 久久人妻少妇嫩草av | 久久精品99国产精品亚洲 | 国产大学生毛片 | 人人干夜夜操 | 特级毛片在线 | 欧美z○zo变态重口另类黄 | 午夜成人亚洲理伦片在线观看 | 一及黄色毛片 | 色视频www在线播放国产成人 | 亚洲激情国产 | 天堂欧美 | 亚洲色图插插插 | 日本乱偷互换人妻中文字幕 | 久久中文字幕在线观看 | 国产一区二区三区又黄又爽 | 久久精品国产亚 | 粉嫩精品国产色综合久久不8 | 久久精品无码一区二区日韩av | 免费av黄色| 亚洲妓女综合网99 | 国产精品欧美一区二区三区 | 成人性生交免费大片 | 亚洲 a v无 码免 费 成 人 a v | 日本国产三级xxxxxx | 久久精品国产视频 | 国产一区二区在线影院 | 亚州av影院 | 国产av一区二区三区天堂综合网 | 久久免费看少妇高潮 | 久久精品国产清高在天天线 | 久久免费公开视频 | 成人免费观看视频 | 精品无码成人久久久久久 | 国产精品久久久久久2021 | 337人体做爰大胆视频 | 欧美xxxx非洲| 黄色一级视屏 | 国产精品嫩草99a | 国产精品揄拍100视频 | 国产欧美日韩va另类在线播放 | 中文字幕色网 | 免费视频欧美无人区码 | 久久精品国产99精品国产亚洲性色 | 亚洲高清国产拍精品网络战 | 三级第一页| 国产欧美日韩a片免费软件 九九久久精品无码专区 | 色偷偷偷久久伊人大杳蕉 | 91张津瑜 午夜在线播放 | 欧美日韩精品 | 精品视频不卡 | 亚洲精品国产a久久久久久 51国偷自产一区二区三区 | 成人一区av偷拍 | 亚洲精品一区二区 | 看国产一级毛片 | 婷婷伊人综合中文字幕 | 九九热免费观看 | 调教性瘾双性高清冷美人 | 久久免费黄色网址 | jizz另类| 91亚洲天堂| 在线看片不卡 | 国产欧美日韩在线视频 | 九色九一 | 12一15性xxxx粉嫩国产 | 免费99精品国产自在在线 | 日本中文字幕一区二区有码在线 | 亚洲一区免费 | 婷婷午夜精品久久久久久性色av | 亚洲成人av中文字幕 | 美女视频黄a视频免费全程软件axs | 少妇高潮太爽了在线视频 | 日本在线免费视频 | 色窝av| 国产成人avxxxxx在线看 | 亚洲在线视频 | 夜色www国产精品资源站 | 欧美性猛烈 | 国产精品区av | 欧美黑人又粗又大又爽免费 | 午夜高清福利 | 成人妖精视频yjsp地址 | 久久99热狠狠色精品一区 | 欧美日韩在线视频一区二区三区 | 欧美性猛交xxx嘿人猛交 | av黄色在线免费观看 | 日日艹夜夜艹 | 男人扒开添女人下部免费视频 | 午夜激情视频免费观看 | 一级黄色片视频 | 亚洲系列在线观看 | 日本xxxxx高潮少妇 | 国产a免费 | 国产欧美黑寡妇久久久 | 日韩精品一区二区在线观看 | 69天堂网 | 日韩国产成人 | 亚洲国产精品久久久久久 | 欧美黄绝喷潮片 | 国产一线二线三线在线观看 | 天堂中文最新版在线官网在线 | 无码中文av波多野吉衣迅雷下载 | 久久午夜夜伦鲁鲁片免费无码 | 国产一级片网址 | 国产情侣呻吟对白高潮 | 亚洲男人的天堂在线观看 | 亚洲人成伊人成综合网小说 | 555www成人网 | 天天摸夜夜| 成人性生交大片免费看冫视频 | 久久亚洲精品中文字幕冲田杏梨 | 久久aⅴ免费观看 | 少妇高潮一区二区三区99 | 一级欧美视频 | 97国产资源| 国产午夜精品一区理论片飘花 | 日本aaaaa级毛片片 | 日韩在线播放一区二区 | 99综合视频 | 成人性生交大片免费网站 | 欧美一级片在线播放 | 在线视频观看一区 | 国产福利免费观看 | 精品国产乱码久久久久软件 | 国产黄色三级 | 男男巨肉啪啪动漫3d | 国产精品19乱码一区二区三区 | www蜜臀| 国产精品日韩一区二区 | 九九久久精品国产 | 波多野结衣在线视频播放 | 日韩国产欧美视频 | 日本精品一区二区三区在线观看 | 亚洲 欧美 中文字幕 | 丰满少妇高潮惨叫视频 | 日本69精品久久久久999小说 | 亚洲色图一区二区三区 | 美女网站免费福利视频 | 亚洲精品成av人片天堂无码 | 国产黄色免费视频 | 黄色大片在线 | 108种啪姿势大全动态图 | 伊人久久大香线焦av色 | 久久久国产毛片 | 人人妻人人爽人人做夜欢视频 | 久久久久麻豆v国产精华液好用吗 | 久久99精品久久久久久久久久久久 | 久久久久9 | 亚洲欧美日韩精品永久在线 | 少妇性l交大片免费观看 | 国语精品一区二区三区 | 国产欧美不卡 | 在线国产视频一区 | 国产高清不卡无码视频 | 丁香婷婷综合网 | 全国男人的天堂网 | 国外处破女一区二区 | 91香蕉在线视频 | 日韩精品在线一区二区 | 免费成人在线视频网站 | 狂揉吃奶胸高潮视频免费 | 日韩少妇内射免费播放 | 亚洲最色 | 69xxxx在线观看 | 精品久久久久久中文字幕大豆网 | 久草资源福利 | 又大又长粗又爽又黄少妇视频 | 国产黄a三级三级三级看三级黑人 | 一本色道久久综合无码人妻 | 高h肉放荡爽全文寂寞少妇 高h肉各种姿势g短篇np视频 | zσzo欧美性猛交xx | 亚洲精品网站在线观看你懂的 | 色噜噜狠狠狠狠色综合久不 | 野外做受又硬又粗又大视幕 | 少妇一级淫免费观看 | 日日噜噜噜夜夜爽爽狠狠视频 | 日本精品视频一区二区三区 | 范冰冰一级做a爰片久久毛片 | 中文字幕一区二区三区免费视频 | 一本一道久久综合狠狠老 |