99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

i2c-hid_standalone編譯實(shí)戰(zhàn):解決Linux I2C觸摸板驅(qū)動(dòng)問(wèn)題

i2c-hid_standalone編譯實(shí)戰(zhàn):解決Linux I2C觸摸板驅(qū)動(dòng)問(wèn)題 簡(jiǎn)介面向Linux下觸摸板異常問(wèn)題該驅(qū)動(dòng)補(bǔ)丁包針對(duì)R7000等機(jī)型提供i2c-hid驅(qū)動(dòng)源碼。通過(guò)安裝linux-headers、執(zhí)行make即可生成i2c-hid.ko內(nèi)核模塊替換系統(tǒng)原有驅(qū)動(dòng)并啟用polling_mode1后可有效解決觸摸板無(wú)響應(yīng)、誤觸或漂移等問(wèn)題。壓縮包體積僅24KB共5個(gè)文件包含2個(gè)C源文件、2個(gè)頭文件與1個(gè)MakefileC源文件與頭文件構(gòu)成驅(qū)動(dòng)核心Makefile提供編譯入口整體組織清晰。用戶可從中獲得手動(dòng)編譯內(nèi)核模塊、替換驅(qū)動(dòng)、更新grub引導(dǎo)參數(shù)等完整排錯(cuò)路徑無(wú)需修改BIOS設(shè)置風(fēng)險(xiǎn)相對(duì)可控適合有一定Linux基礎(chǔ)、希望自行修復(fù)觸摸板驅(qū)動(dòng)問(wèn)題的中高級(jí)用戶。目前已有1461人學(xué)習(xí)對(duì)于使用Manjaro等發(fā)行版并受i2c-hid觸摸板問(wèn)題困擾的開發(fā)者是一份簡(jiǎn)潔可用的參考補(bǔ)丁也可作為內(nèi)核驅(qū)動(dòng)編譯與替換的練習(xí)樣例。1. 項(xiàng)目概述i2c-hid_standalone.zip 到底是什么能解決什么問(wèn)題先說(shuō)一下我遇到這個(gè)包的場(chǎng)景。前陣子給自己的 Linux 筆記本換了塊觸控板型號(hào)是 Elan 的 I2C 接口設(shè)備結(jié)果裝完系統(tǒng)后發(fā)現(xiàn)觸控板完全沒(méi)反應(yīng)dmesg里只有兩行話i2c_hid_acpi i2c-ELAN0679:00: HID not enabled或者更慘直接device not found。查了一圈發(fā)現(xiàn)問(wèn)題出在發(fā)行版內(nèi)核自帶的 i2c-hid 驅(qū)動(dòng)版本太舊或者干脆沒(méi)把CONFIG_I2C_HID編進(jìn)去。就在那個(gè)節(jié)骨眼上我從一個(gè)內(nèi)核開發(fā)者的個(gè)人倉(cāng)庫(kù)里找到了這個(gè)i2c-hid_standalone.zip。這個(gè)包本質(zhì)上是一份從 Linux 內(nèi)核源碼樹中抽取出來(lái)的 i2c-hid 驅(qū)動(dòng)獨(dú)立工程里面帶好了 Makefile、Kconfig 以及最關(guān)鍵的i2c-hid.c和i2c-hid-core.c源碼。standalone 的意思是它不需要你重新編譯整個(gè)內(nèi)核也不用你去折騰內(nèi)核配置文件只要你的系統(tǒng)裝了匹配的內(nèi)核頭文件就能像編譯普通內(nèi)核模塊一樣單獨(dú)把它編成一個(gè).ko文件然后手動(dòng)加載到正在運(yùn)行的內(nèi)核里。誰(shuí)的痛點(diǎn)最需要它首先是觸摸板或觸摸屏是 I2C 接口、且使用的是 Elan / Synaptics / Goodix 等常見(jiàn)控制芯片的 Linux 用戶其次是那些用著廠商定制內(nèi)核、但廠商沒(méi)開全 HID 驅(qū)動(dòng)的嵌入式/筆記本用戶還有就是做內(nèi)核驅(qū)動(dòng)開發(fā)調(diào)試的朋友想在不動(dòng)整個(gè)內(nèi)核的情況下快速迭代驅(qū)動(dòng)代碼這個(gè)包就是給這些人準(zhǔn)備的。我這里基于的是 5.10 LTS 內(nèi)核版本的源碼提取你在其他版本上編譯時(shí)大概率要做少量適配后面我會(huì)把改動(dòng)點(diǎn)列清楚。整體來(lái)說(shuō)這個(gè)包能幫你解決 80% 的 I2C HID 設(shè)備驅(qū)動(dòng)加載不成功的問(wèn)題剩下的 20% 是硬件 ACPI 表問(wèn)題或固件問(wèn)題那種情況就不是單獨(dú)編譯一個(gè)驅(qū)動(dòng)模塊能救的了。2. 整體設(shè)計(jì)思路為什么選擇 standalone 方式而不是直接改內(nèi)核2.1 standalone 模塊方案的優(yōu)勢(shì)和場(chǎng)景邊界你要搞清楚這個(gè)問(wèn)題的前提是明白 i2c-hid 驅(qū)動(dòng)在內(nèi)核里的存在形式。標(biāo)準(zhǔn)內(nèi)核里它是一個(gè)drivers/hid/i2c-hid/目錄下的內(nèi)核模塊受CONFIG_I2C_HID控制。用戶有兩種選擇編進(jìn)內(nèi)核y或者編成模塊m。對(duì)于絕大多數(shù)發(fā)行版這個(gè)選項(xiàng)默認(rèn)是m也就是生成i2c-hid.ko模塊由 udev 根據(jù) ACPI 表中HID設(shè)備的兼容 ID如PNP0C50、ACPI0011自動(dòng)加載。那為什么還需要 standalone 版本我實(shí)際踩過(guò)的坑是這樣的make menuconfig里看到CONFIG_I2C_HID是灰色甚至完全不可選原因通常是內(nèi)核版本太老、I2C 子系統(tǒng)的 API 變化過(guò)大或者芯片廠商給的內(nèi)核補(bǔ)丁只針對(duì)特定版本。這時(shí)候你不可能為了一個(gè)觸控板去重編整個(gè)內(nèi)核重新編一個(gè) 5.15 或 6.1 內(nèi)核加上所有固件、Initramfs 更新動(dòng)輒一兩個(gè)小時(shí)起步而且有把系統(tǒng)搞掛的風(fēng)險(xiǎn)。獨(dú)立模塊方案的好處就是快、可逆、不污染系統(tǒng)全局。我選擇這個(gè)方案還考慮到了一個(gè)實(shí)際問(wèn)題調(diào)試方便。如果直接把驅(qū)動(dòng)編進(jìn)內(nèi)核出了問(wèn)題你只能改 Kconfig 重新 build 內(nèi)核而 standalone 模塊模式下rmmod 修改源碼 make重新編譯 insmod整個(gè)循環(huán)下來(lái)不到一分鐘非常適合反復(fù)調(diào)參。我在調(diào)試 Elan 設(shè)備的report_descriptor解析問(wèn)題時(shí)就深深體會(huì)到這一點(diǎn)。2.2 包內(nèi)結(jié)構(gòu)和核心文件的作用打開解壓后的i2c-hid_standalone目錄你會(huì)看到這幾個(gè)關(guān)鍵文件i2c-hid_standalone/ ├── Makefile ├── Kconfig ├── i2c-hid.c ├── i2c-hid-core.c ├── i2c-hid-dmi-quirks.c ├── i2c-hid.h └── README.mdi2c-hid.c是設(shè)備驅(qū)動(dòng)的主入口負(fù)責(zé)模塊加載、卸載、注冊(cè)i2c_driver結(jié)構(gòu)體i2c-hid-core.c是核心邏輯包括 HID 設(shè)備的初始化、報(bào)告描述符解析、IRQ 處理、電源管理回調(diào)等i2c-hid-dmi-quirks.c則是一堆 DMI 匹配的兼容性補(bǔ)丁專門處理某些廠商設(shè)備在 ACPI 表或報(bào)告描述符上的非標(biāo)準(zhǔn)行為。Makefile 里已經(jīng)把編譯目標(biāo)寫死為obj-m i2c-hid.o同時(shí)還做了ccflags-y的版本判斷自動(dòng)適配內(nèi)核頭文件路徑。說(shuō)句實(shí)在話我最開始拿到這個(gè)包第一反應(yīng)是怎么就這么幾個(gè)文件和我預(yù)想的一個(gè)完整內(nèi)核目錄差距很大。但實(shí)際用下來(lái)正是這種精簡(jiǎn)結(jié)構(gòu)讓 standalone 編譯變得特別輕量因?yàn)閮?nèi)核模塊編譯本來(lái)就不需要完整的內(nèi)核源碼樹只要有l(wèi)inux-headers里帶的build符號(hào)鏈接和Module.symvers就夠了。源碼本身是直接從內(nèi)核drivers/hid/i2c-hid/摳出來(lái)的所以邏輯上是完整的不是閹割版。2.3 編譯鏈路和配置依賴梳理在動(dòng)手編譯之前必須先把依賴環(huán)境弄清楚否則大概率會(huì)碰到一股腦的報(bào)錯(cuò)。我總結(jié)下來(lái)編譯這個(gè)模塊需要滿足以下條件系統(tǒng)內(nèi)核版本與當(dāng)前運(yùn)行的uname -r一致嚴(yán)格一致不然后面 insmod 會(huì)報(bào) version magic 不匹配安裝了對(duì)應(yīng)版本的linux-headers-$(uname -r)并且/lib/modules/$(uname -r)/build符號(hào)鏈接指向正確的內(nèi)核源碼目錄有g(shù)cc、make、build-essential且 gcc 主版本和內(nèi)核編譯時(shí)的版本差異不要過(guò)大內(nèi)核開啟了CONFIG_I2C和CONFIG_HID這兩個(gè)一般發(fā)行版默認(rèn)都有重點(diǎn)是確認(rèn)一下。其中內(nèi)核版本匹配這條我用一個(gè)表格給大家做個(gè)直觀的對(duì)比場(chǎng)景內(nèi)核源碼樹linux-headers 包standalone 模塊能否編譯能否加載Ubuntu/Debian 發(fā)行版不需要已安裝匹配版本可以可以Arch/Manjaro 滾動(dòng)更新不需要已安裝大概率可以偶爾頭文件滯后看運(yùn)氣自己編譯的定制內(nèi)核需要不需要源碼樹即頭文件可以需要看 version magic內(nèi)核頭文件不匹配不需要未安裝/版本不對(duì)編譯報(bào)錯(cuò)一定不行注意上面最后一行很多人就是栽在這個(gè)地方。make報(bào)錯(cuò)信息特別抽象報(bào)的是./include/linux/kconfig.h:5: include/linux/autoconf.h: No such file or directory看著像是源碼缺失實(shí)際上就是你沒(méi)裝linux-headers或者沒(méi)建好build鏈接。這個(gè)坑我后面會(huì)再展開。3. 編譯安裝全流程實(shí)操一步一步把 i2c-hid.ko 跑起來(lái)3.1 編譯環(huán)境準(zhǔn)備檢查內(nèi)核、安裝依賴先說(shuō)最基礎(chǔ)的環(huán)境檢查。打開終端先確認(rèn)內(nèi)核版本和頭文件情況uname -r dpkg -l | grep linux-headers-$(uname -r)如果在 Debian/Ubuntu 系上dpkg沒(méi)有輸出執(zhí)行安裝sudo apt update sudo apt install linux-headers-$(uname -r) build-essentialArch 系則是sudo pacman -S linux-headers。裝完之后務(wù)必驗(yàn)證一下/lib/modules/$(uname -r)/build是否指向正確路徑ls -l /lib/modules/$(uname -r)/build這個(gè)鏈接正常應(yīng)該指向/usr/src/linux-headers-$(uname -r)一類的目錄。如果沒(méi)建好手動(dòng)建一下sudo ln -s /usr/src/linux-headers-$(uname -r) /lib/modules/$(uname -r)/build這里有一個(gè)我后來(lái)才注意到的細(xì)節(jié)如果頭文件版本和運(yùn)行內(nèi)核不一致例如你運(yùn)行的是5.15.0-91-generic但 apt 給你裝的是5.15.0-86-generic那么/lib/modules/5.15.0-91-generic/build根本不會(huì)存在。解決的辦法是去 Ubuntu 內(nèi)核倉(cāng)庫(kù)下載對(duì)應(yīng)的linux-headers-5.15.0-91三個(gè) deb 包linux-headers-5.15.0-91_*、linux-headers-5.15.0-91-generic_*、linux-modules-5.15.0-91-generic_*手動(dòng)安裝。這個(gè)過(guò)程不算太復(fù)雜但確實(shí)折磨了不少人。3.2 解壓與 Makefile 適配版本適配和路徑修改拿到i2c-hid_standalone.zip后先解壓unzip i2c-hid_standalone.zip cd i2c-hid_standalone打開 Makefile 看一眼內(nèi)容里面核心的幾行是obj-m i2c-hid.o i2c-hid-objs : i2c-hid-core.o i2c-hid-dmi-quirks.o i2c-hid.o KERNEL_DIR ? /lib/modules/$(shell uname -r)/build PWD : $(shell pwd) all: $(MAKE) -C $(KERNEL_DIR) M$(PWD) modules關(guān)鍵就是KERNEL_DIR這個(gè)變量。大多數(shù)情況下默認(rèn)值就能用不需要手動(dòng)改。但如果你像我一樣交叉編譯或者頭文件放在自定義路徑下可以這樣指定make KERNEL_DIR/path/to/your/kernel/build接下來(lái)是源碼的版本適配問(wèn)題。我基于 5.10 內(nèi)核提取的這個(gè)版本在 5.15 和 6.1 內(nèi)核上編譯時(shí)需要改動(dòng)一兩個(gè)函數(shù)。核心差異點(diǎn)是i2c_hid_probe函數(shù)的返回值類型。5.10 之前的版本里I2C 探測(cè)回調(diào)返回int從 5.18 開始內(nèi)核把 I2C probe 回調(diào)統(tǒng)一改成了void返回實(shí)際上這個(gè)改動(dòng)在 6.1 才強(qiáng)制落地。所以你編譯時(shí)如果看到類似這樣的報(bào)錯(cuò)error: initialization of ‘int (*)(struct i2c_client *, const struct i2c_device_id *)’ from incompatible pointer type ‘void (*)(struct i2c_client *, const struct i2c_device_id *)’就在i2c-hid.c里把函數(shù)簽名從static int i2c_hid_probe(...)改成static void i2c_hid_probe(...)同時(shí)把函數(shù)末尾的return 0;刪掉并且把i2c_driver結(jié)構(gòu)體里.probe i2c_hid_probe改成.probe_new i2c_hid_probe。這個(gè)改動(dòng)在 6.1 內(nèi)核上是必須的不做就編不過(guò)去。3.3 編譯、加載與開機(jī)自動(dòng)加載從 make 到 insmod 的完整命令環(huán)境調(diào)整好之后直接編譯make -j$(nproc)編譯正常結(jié)束的話目錄下會(huì)生成i2c-hid.ko文件。用modinfo看一眼模塊信息確認(rèn) version magic 和vermagic字段與當(dāng)前內(nèi)核一致modinfo i2c-hid.ko | grep vermagic這個(gè)輸出應(yīng)該和uname -r完全一致。如果發(fā)現(xiàn)不一致不要強(qiáng)行加載回去檢查頭文件版本。確認(rèn)無(wú)誤后先嘗試加載sudo modprobe -r i2c-hid sudo insmod i2c-hid.ko我這里先modprobe -r是防止系統(tǒng)里已經(jīng)有舊模塊在占用設(shè)備導(dǎo)致 insmod 報(bào)Device or resource busy。加載后立即看內(nèi)核日志dmesg | tail -n 30如果一切正常你會(huì)看到類似這樣的輸出i2c_hid i2c-ELAN0679:00: i2c-hid: HID probe success input: ELAN0679:00 as /devices/pci0000:00/.../i2c-ELAN0679:00/input/input5這就說(shuō)明驅(qū)動(dòng)已經(jīng)成功枚舉出觸摸板了。接著打開設(shè)置里的觸摸板頁(yè)面滑動(dòng)一下看光標(biāo)是否跟隨移動(dòng)。如果沒(méi)有反應(yīng)但日志顯示 probe 成功那么問(wèn)題大概率出在libinput的配置或設(shè)備的HID report descriptor上需要進(jìn)一步調(diào)試。為了實(shí)現(xiàn)開機(jī)自動(dòng)加載有兩種方式。第一種是把編譯好的.ko文件復(fù)制到內(nèi)核模塊目錄然后跑depmodsudo cp i2c-hid.ko /lib/modules/$(uname -r)/kernel/drivers/hid/i2c-hid/ sudo depmod -a sudo modprobe i2c-hid第二種是更輕量的方案直接在/etc/modules-load.d/i2c-hid.conf里寫入一行i2c-hid這樣每次開機(jī)時(shí) systemd 就會(huì)自動(dòng)加載這個(gè)模塊。我個(gè)人更推薦第二種因?yàn)椴粍?dòng)系統(tǒng)內(nèi)核模塊目錄卸載也方便改個(gè)文件或刪掉.conf就能恢復(fù)原樣。3.4 修改源碼后的循環(huán)編譯調(diào)試法如果你在做驅(qū)動(dòng)開發(fā)調(diào)試頻繁改源碼的話我建議你養(yǎng)成一個(gè)習(xí)慣每次改完代碼不要急著直接insmod先rmmod卸載舊模塊再make clean make然后把編譯警告都看一遍。一個(gè)常見(jiàn)問(wèn)題是在改函數(shù)簽名或結(jié)構(gòu)體成員后編譯器會(huì)報(bào)一堆類型不匹配的警告這些警告通常不影響生成.ko但運(yùn)行時(shí)可能引發(fā)kernel NULL pointer dereference所以不能完全忽略。我這里分享一個(gè)高效的調(diào)試循環(huán)命令流程sudo rmmod i2c-hid make clean make -j$(nproc) sudo insmod i2c-hid.ko dmesg | tail -n 20配合一個(gè)簡(jiǎn)單的測(cè)試操作比如xinput list查看輸入設(shè)備是否出現(xiàn)就能在幾十秒內(nèi)完成一次完整的驗(yàn)證迭代。比起改整個(gè)內(nèi)核的編譯循環(huán)這個(gè)流程會(huì)快非常多也是 standalone 方案給我省下最多時(shí)間的地方。4. 常見(jiàn)問(wèn)題與排查技巧我踩過(guò)的那些坑4.1 編譯階段的典型報(bào)錯(cuò)與修復(fù)方法編譯期報(bào)錯(cuò)是最多的我把最常見(jiàn)的幾類整理成一張表方便大家按圖索驥報(bào)錯(cuò)癥狀根本原因解決辦法autoconf.h: No such file or directory沒(méi)裝 linux-headers 或 build 鏈接失效安裝對(duì)應(yīng)版本的 linux-headers重建/lib/modules/$(uname -r)/builderror: unknown type name ‘bool’內(nèi)核頭文件未正確包含確認(rèn)編譯命令里有沒(méi)有-D__KERNEL__Makefile 是否走了內(nèi)核的 Kbuild 系統(tǒng)incompatible pointer typeprobe 相關(guān)內(nèi)核版本 probe 回調(diào)簽名變更按上文改成probe_new形式version magic mismatch頭文件版本和運(yùn)行內(nèi)核不一致重新安裝精確匹配的頭文件包implicit declaration of function i2c_new_client_device內(nèi)核版本 API 被移除或改名把i2c_new_client_device換成i2c_new_client或檢查CONFIG_I2C是否開啟注意第一行那個(gè)報(bào)錯(cuò)很多教程里會(huì)勸你下載完整內(nèi)核源碼其實(shí)完全不需要純屬誤導(dǎo)。只要頭文件裝對(duì)了這個(gè)報(bào)錯(cuò)立即消失。有一個(gè)比較隱蔽的問(wèn)題我單獨(dú)提一嘴頭文件裝對(duì)了但make仍然報(bào)錯(cuò)找不到某些頭文件。這種情況多發(fā)生在你用的發(fā)行版把內(nèi)核頭文件分包了比如 Ubuntu 的linux-libc-dev和linux-headers-*是兩個(gè)獨(dú)立包前者提供用戶態(tài)頭文件后者提供內(nèi)核態(tài)編譯用頭文件。如果你僅僅裝了linux-libc-dev那make同樣會(huì)失敗。解決辦法很簡(jiǎn)單老老實(shí)實(shí)裝linux-headers-$(uname -r)這個(gè)包。4.2 加載階段的常見(jiàn)失敗與排查方法insmod失敗通常分為兩類一類是insmod: ERROR: could not insert module i2c-hid.ko: Invalid module format這就是 version magic 不匹配內(nèi)核拒絕加載另一類是Operation not permitted這是 Secure Boot 沒(méi)關(guān)或者模塊簽名校驗(yàn)失敗。后者在 UEFI 啟動(dòng)的機(jī)器上非常常見(jiàn)很多新筆記本默認(rèn)開啟 Secure Boot。Secure Boot 的排查方法是看內(nèi)核日志dmesg | tail -n 10如果看到Lockdown: insmod: unsigned module loading is restricted那就說(shuō)明內(nèi)核被鎖定不允許加載未簽名模塊。解決辦法有幾個(gè)進(jìn)入 BIOS 關(guān)閉 Secure Boot最直接但影響系統(tǒng)安全配置使用mokutil --import導(dǎo)入自定義 MOK 密鑰給模塊簽名直接用發(fā)行版自帶的dkms機(jī)制來(lái)管理DKMS 編譯時(shí)如果用了發(fā)行版官方工具鏈可以自動(dòng)附帶簽名。我個(gè)人的建議是如果這臺(tái)機(jī)器只是個(gè)人開發(fā)機(jī)關(guān)閉 Secure Boot 是最省事的如果是工作電腦或要對(duì)安全策略負(fù)責(zé)的環(huán)境就用 MOK 簽名不要圖省事改全局安全配置。另外還有一個(gè)容易被忽略的問(wèn)題系統(tǒng)里已經(jīng)存在同名的i2c-hid模塊發(fā)行版內(nèi)核自帶。如果你直接insmod i2c-hid.ko不會(huì)報(bào)錯(cuò)但實(shí)際生效的可能是系統(tǒng)自帶的那個(gè)因?yàn)樗?udev 優(yōu)先加載了。這就是為什么我在前面強(qiáng)調(diào)要先modprobe -r i2c-hid卸掉舊模塊。驗(yàn)證當(dāng)前加載的是不是你編譯的版本可以看/sys/module/i2c_hid/initstate和modinfo的輸出路徑。4.3 運(yùn)行階段的調(diào)試工具與方法模塊加載成功不等于設(shè)備一切正常。有時(shí)候你會(huì)發(fā)現(xiàn)dmesg里顯示i2c_hid i2c-ELAN0679:00: i2c-hid: HID probe success但觸摸板就是不工作。這時(shí)候要做的就是確認(rèn) I2C 總線上設(shè)備是否正常枚舉。使用i2cdetect掃描 I2C 總線是個(gè)好辦法sudo apt install i2c-tools sudo i2cdetect -l sudo i2cdetect -y 5其中-l列出系統(tǒng)所有 I2C 總線-y 5掃描第 5 號(hào)總線。如果能看到觸控板的地址Elan 設(shè)備一般是0x15或0x2c說(shuō)明 I2C 通信正常。如果這里就掃不到設(shè)備問(wèn)題在硬件或 ACPI 表的 GPIO/IRQ 配置層面驅(qū)動(dòng)怎么改都白搭。另一個(gè)實(shí)踐里很有效的工具是evtest它直接讀取內(nèi)核 input 子系統(tǒng)和 HID 層的數(shù)據(jù)流。如果evtest /dev/input/eventX能列出設(shè)備且輸出事件說(shuō)明內(nèi)核 HID 層和 input 層已經(jīng)通了問(wèn)題在 libinput 或桌面環(huán)境的配置如果列不出設(shè)備問(wèn)題在上游還要繼續(xù)往 i2c-hid 的協(xié)議層查。4.4 調(diào)試期間值得記錄的心得要點(diǎn)我在這個(gè)項(xiàng)目里最有價(jià)值的經(jīng)驗(yàn)有兩條分享給大家第一不要一開始就改復(fù)雜的東西先驗(yàn)證裸模塊能否加載。環(huán)境準(zhǔn)備工作如果做了 30 分鐘還沒(méi)搞定停下來(lái)重新審一遍第一步。很多人卡在編譯階段其實(shí)是忽略了uname -r和頭文件版本必須完全一致這個(gè)基礎(chǔ)條件。第二注意 DMI quirk 文件的影響。i2c-hid-dmi-quirks.c這個(gè)文件里的 DMI 匹配會(huì)覆蓋某些設(shè)備的默認(rèn)行為。如果你發(fā)現(xiàn)驅(qū)動(dòng)加載后設(shè)備被識(shí)別了但工作異常可以看看是不是被某個(gè) quirk 命中了。調(diào)試時(shí)可以臨時(shí)把 quirk 表內(nèi)容注釋掉重新編譯看行為是否有變化。這個(gè)文件里有很多廠商的特殊處理邏輯這是社區(qū)積累下來(lái)的寶貴經(jīng)驗(yàn)但也意味著如果不確定是否適用你的設(shè)備不要輕易照搬別人的補(bǔ)丁。5. 后續(xù)擴(kuò)展與方案對(duì)比standalone 模塊 vs 完整內(nèi)核編譯最后聊聊這個(gè) standalone 方案的局限性以及和專業(yè)完整內(nèi)核編譯方案的對(duì)比。我用一個(gè)表格來(lái)總結(jié)對(duì)比維度standalone 模塊完整內(nèi)核編譯編譯時(shí)間1-3 分鐘20-60 分鐘依賴復(fù)雜度只需要 linux-headers需要完整源碼樹和大量構(gòu)建依賴系統(tǒng)影響可隨時(shí) rmmod無(wú)殘留需要更新 initramfs重啟生效調(diào)試迭代快適合頻繁修改慢每次都要重啟驅(qū)動(dòng)與內(nèi)核版本兼容性需要手動(dòng)適配 API源碼樹自洽一般無(wú)版本問(wèn)題適用場(chǎng)景快速驗(yàn)證、單個(gè)設(shè)備調(diào)試大規(guī)模定制、需要隨內(nèi)核啟動(dòng)如果你只是想讓一個(gè) I2C 觸摸板跑起來(lái)standalone 就是最快的路但如果你需要同時(shí)修改hid-core、hid-input等多個(gè)內(nèi)核 HID 層驅(qū)動(dòng)的交互邏輯那還是老老實(shí)實(shí)編譯完整內(nèi)核否則你會(huì)在模塊間的符號(hào)依賴上浪費(fèi)大量時(shí)間。另外standalone 模塊加載后符號(hào)是動(dòng)態(tài)鏈接進(jìn)內(nèi)核的和內(nèi)核編譯期符號(hào)表不完全一致這可能導(dǎo)致某些內(nèi)核調(diào)試工具如ftrace、trace-cmd無(wú)法直接追蹤到模塊內(nèi)部的函數(shù)調(diào)試手段會(huì)受限。我個(gè)人的實(shí)踐體會(huì)是先快速驗(yàn)證、再?zèng)Q定是否深入。先用 standalone 模塊把設(shè)備點(diǎn)亮確認(rèn)硬件正常、HID 描述符解析沒(méi)問(wèn)題之后再考慮要不要重新編譯完整內(nèi)核來(lái)集成長(zhǎng)期修改。這樣既降低調(diào)試成本又避免在錯(cuò)誤的方向上浪費(fèi)一整天。希望這篇記錄能幫到你少走點(diǎn)我趟過(guò)的渾水。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
婷婷五月色惰| 色婷婷影视99| 五月婷婷久久激情| 五月天激情小说| www.五月婷| 99热这里有精品2| 玖玖色综合色| 丁香五月Av| 一区二区乱视频码| 狠狠色丁香| 久久久色婷婷五月天| 操一区| 51XX午夜影福利| 色99日韩| 五月天婷婷色小说| 月色色综合婷婷网| 97在线精品| 色天天久婷婷| 爽极品色| 婷婷婷婷婷婷婷婷婷婷丁香| 91超碰在线观看| 夜夜躁狠狠| 97色射| 国产婷婷五月在线视频| 高潮毛片遮挡费高一百度| 激情六月婷婷| 五月天开心婷婷激情网站| 亚洲AV成人无码电影| 91视频精品99| 五月开心激情网| 人妻视频在线| 一本到不卡高清DVD| 天天射影院| 婷婷,五月天,丁香,第一| 岛国午夜视频| 五月色情| 久久精品人妻| 国产白丝在线一区| 超碰9| 99r这里| 久久久久8888| 久啪欧美| 99精品久久久久久久| 九九热AV| 激情六月婷婷| 色五月婷婷777| 色欧美影院| 婷婷五月激情六月丁香| 狠狠狠狠狠狠狠狠草| 色婷婷操逼网| 婷五月天| 丁香婷婷综合色五月激情国产基地| 99色在线视频| 狠狠色综合网| 日本欧美成人片AAAA| 操逼三区| 色播五月| 色99在线观看| 久热 91| 亚洲乱码在线观看| 色色色999| 成功精品影院| 国产麻豆视频| 欧美日比视频| 狠狠色婷婷7| 久久九九精彩| 亚州精品色情在线观看| 久久这里都是精品免费| 亚洲中文字幕网| 一区二区aV电影免费看| 99热国产精品| 色情综合网| 碰超在线九色| 亚洲人人96@| 夜夜涩涩涩| 五月丁香六月婷婷综合网| 婷婷激情综合色五月久久,色婷婷丁香花,丁香婷婷五月情天,久久婷婷五月综合色 | 一级片操逼视频| 337p大胆噜噜噜噜噜91Av| 婷婷内射视频在线| 色婷婷久久| 九九热在线精品| 午夜少妇在线观看视频| 久久久亚洲精品一区二区三区浴池| 九热...av| 色丁香五月婷婷| 婷婷五月香蕉| 色五月 五月婷婷| 性爱久久| av不卡网站| 99性爱视频| 深爱激情丁香五月| 日本视频99| 婷婷五月天激情综合深爱激情| AV 3P| 婷婷五月天天天日日夜夜| 五月丁香色播| 99在线观看精品| 色情综合网| 天天综合网色欲香| 久热这里只有精品99re,久热这里只有精品7| 亚洲激情精品| 国产一级片色色| 色九月国产| 五月婷婷开心深| 丁香六月婷婷综合欧美| 久热这里只有精品99re| 五月天婷婷激情在线色图| 欧美婷婷综合网| 91Chinese在线| 激情网五月婷婷| 99思思| 婷婷金品综合视频| 亚州操操| 久久98热re| 免费无码毛片一区二区A片| 女人高潮内射99精品| cao久久| wwW天天干| 丁香六月情| 色999;丁香五月| 色色色五月| 思思视频这里是精品| 久久爱婷婷| 亚洲黄色精品| 97五月久久丁香婷婷| 婷婷五月丁香高清无码| 色婷婷久久| 99热费观看| 俺也去在线久久精品23欧美综合视频网站,丰满人妻一区二区三区在线视频53,丰满 | 激情五月婷婷欧美极品| 天天综合网网欲色| 久久综合五月天| 国产一区18| 五月丁香六月婷综合成人综合| 亚洲精品色| 亚洲一区国产传媒| 亚洲另类婷婷综合| 五月婷婷AV| 丁香五月成人社区| 男人天堂AV在线一区二区| 深爱激情五月天婷婷网| 色婷婷色99国产综合精品| 国产色香蕉精品五夜婷| 激情五月天小说网| 99视频日韩| 色呦呦美女| 国产精产国品一二三在观看| 精品国产va久久久久| 日本美女上人| VA国产在线综合网站| 婷婷五月激情中文字幕| 婷婷激情另类| 日韩青青| 99热在线观看精品| 五月 激情视频| 激情综合激情综合| 色五月天激情| 99精品在线| 色欲Av五月天| 99热最新国内| 久人操| 中国女人内射6XXXXX| 欧美va亚洲va| 成人AV播放| 精品久久久久久久人妻| 666555。COm毛片| 天天综合干| 亚洲日韩成人三级av| 婷婷五月天激情在线观看 | 啪啪啪五月天| 999九九九久久久99HD| 丁香六月婷婷激情| 成人欧美日韩| WWW.久久.COM| 26UUU精品一区二区| 久久新地此| 婷香五月| 婷婷导航| 五月婷无码| 婷婷亚洲欧美丁香五月| 五月天丁香六月综合| 婷婷涩涩五月天| 九九九九国产| 色约约视频一区二区三区四区五区| 婷婷六月情| 婷婷丁香亚洲五月天| 风流少妇A片一区二区蜜桃| 秋霞A V毛片| 六月婷婷av| 久九色| 99乱视频| 久久五月激情网| 色色综合五月| www.夜夜| 婷婷色丁香五月| 成人免费高清在线播放| 国产精品成人AV在线| 天天日天天舔天天摸| 狼人狠狠操| 亚洲午夜视频| 91九色熟女| 久思思热视频在线观看| 成人视频免费观看高清完整版在线观看| 五月天伊人| 99re这里只有精品99| 极品人妻VIDEOSSS人妻| 成人在线不卡| 日日操夜夜爽| 色久激情在线| 人妻熟妇六区| 99免费成人网| 久久精品4| 野战J办公桌椅H| 夜夜谢天天干| 色婷婷视频综合| 色婷婷成人| 天天肏视奸| 99这里只有精品|v| 丁香久色| 色一区高清| 99ri6在线视频| 人。妻久久| 天天在线天天综合网色| 99这里有精品久久97| 久久思思99| 色色色五月天婷婷| 99热这里只有精品8| 五月天婷婷伊人| 五月丁香六月婷婷综合伊人| 色亚洲中文| 久久色五月| 黄色AAAA韩国guochansanji| 综合色、色综合| 色综合天天| 午夜丁香综合婷婷| 九九性爱网| www.ppypp| 婷婷五月丁香高清无码| 丁香狠狠| 亚洲舔观看| 婷婷国产综合| 婷婷基地成人五月天| 国产av基地| 免费成人中文字幕| www.五月天色色色| 人伦30P| 丁香五月婷婷亚洲天堂| 婷婷综合另类| 天天操夜夜操| 天天爽天天干| 丁香亭亭久久| 天天婷婷天天| 天天日日爽| 亚州日本欧州韩美高青高潮一| 涩综合在线| 国产伊人五月天| 久久永久网址| 色综合五月在线| 综合婷婷六月| 激情五月婷婷综合色播小说| 六月丁香激情网| 天堂草在线看www| 99热777| 五月天激情网址| 丁香五月婷婷动漫| 深爱激情五月婷婷| 五月婷婷六月天| 综合婷婷久久| 偷偷与邻居做爰完整视频| WWW.夜夜| 精品久久这里热66| 久机视频这只有精品| 婷婷五月天视频亚洲| 亚洲精品大片| 婷婷亚洲天堂| 久月久在线视频| 亚洲情欲| 任你弄在线视频免费| 婷婷五月天久草在线| 狠狠色丁香乆乆| 色婷婷亚洲综合av| 任你艹| 亚洲色五月天在线| 色欲一区二区三区精品A片| 青青草六月丁香| 华人在线免费| 99久久6| 日日夜夜狠狠| 国产a视频| av国产精品偷| 亚洲、热| 99久在线精品99re8| 国产精产国品一二三在观看| 97自拍99| 热这里| WWW免费视频碰碰碰碰| 午夜一区| 九九色区| 色五月成人网| 色婷婷狠狠爱| 久久人视频| 深爱五月月天| 99视频在线精品| 九九色热| 九九人人精品| 五月色精品| www.色五月| 二色av| 神马久久五月天| 久碰久操| 99热这里只有精品55| 中文字幕在线日亚洲9| 热久久这里只有三级视频| 日本老女人黄页在线播放| 五月香六月婷| 在线观看国产高清视频免费网站| 九九精品综合| 五月婷婷播| 婷婷六月天激情| 日日爽夜夜爽| 亚洲精品成人| 玖玖午夜视频| 99久久精品国产色欲| 亚洲AV日韩无码| 五月婷婷就去色| 色色免费网站| 123草逼网| 色婷婷香蕉丁丁网| 国产成人精品亚洲线观看| 成人网站av免费网站推荐| 人妻系列久久久久久久久久久| 五月天婷婷网站| 天天综合五月| 超级碰碰碰碰视频| 五月婷视屏在线观看| 国产婷婷色综合AV蜜臀AV| 久re热视频| 视色综合| 热婷婷av| 色五月婷婷小说亚洲中文字幕组| YW无码| 日在线V视频在线播放| 五月丁香六月在线| 天天综合色99| 一起草性爱不卡视频| 成人无码髙潮喷水A片| 996热| 久久婷婷色综合| 五月色激情综合网| 九九视频在线观看| www.久久9| 五月婷婷真爱激情网| 美女婷婷激情亚洲| 丁香婷婷婷五月| 久久99草五月婷婷| 在线1青婷| 色图亚洲91| 九色视频这里只有精品| 五月婷婷性爱网| 开心五月激情五月丁香五月婷婷| 久久五月婷综合| 五月噜噜| 婷婷五月丁香A∨| 97色色色色色| 色色色婷婷五月| 欧美激情综合色综合啪啪五月| 超碰97免费在线| 色婷婷综合影院| 六月丁香婷婷色狠狠久久| 熟女激情五月天 | 五月丁香激情四射| 五月婷婷色| 色婷婷中文字母五月丁香| 天天做夜夜爽| 久久婷婷五月综合色播| 中文字幕久久婷九女同| 五月天久久综合| 色一情一乱一乱一区91| 精品99在线| 99久久婷| 日韩黄在免| 色五月亚洲开心网| 激情婷婷在线中文字幕| 99热在线播放| 婷婷丁香人妻天天爽| 久久久久8888| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | 九九热免费| 久久五月天激情婷婷| 超碰v| av操一操| 人人草成人视频| 丰满少妇乱A片无码| 91成人性爱视频| 久久婷婷五月丁香网| 日本综合久久| XX色综合| 久久精品小视频| www.九月婷婷丁香.com| 91超级碰| 色五月激情网| 日日干夜夜撸夜夜骑| 日本99婷婷| 五月丁香激情综合网| 婷婷五月俺要去| 激情丁香五月| 日产精品一线二线三线芒果| 草综合14| 激情婷婷五月色| 丁香五月激情网| 久青草影院| 一级黄色尤物综合视频手机在线观看| 99re6热在线精品视频播放速度| av网址在线播放| 日日噜噜夜夜狠狠久久丁香五月| 午夜丁香六月婷| 少妇婷婷五月天| 色屌丝中文字幕| 激情五月天激情综合网| 99er这里只有精品| 五月天婷婷社区久久综合| 91五月天| 久久婷婷五月| 色热久| 丁香五月综合网亚洲综合欧美狠狠| 婷婷久久五月| 色偷偷色婷婷| 午夜色丁香| 免费观看的av| 九九亚洲| 国产亚洲在线观看| 成人色色视频| 天干干夜夜操| 亚洲综合视频天天精品| 亚洲av综合网| 国内一级精品| 丁香五婷| 无码动漫AV| 午夜少妇在线观看视频| 久久九九网| 男人天堂99| 激情五月丁香婷婷| 九九视频这里只有精品| 九九色热视频| 999热在线视频| 激情影院免费视频婷婷五月天| 狠狠操综合| 日韩AV在线免费观看| 欧美日本99| 亚洲丁香花五月丁香花| 美女久久婷婷| 日日夜夜九九| 96精品国产综合久久久久久| 亚洲欧洲一二| WWW.久久久久久久久久久久久| 九月婷婷在线视频| 97超碰免费超级在线观看| 欧美激情五月天| 色碰碰视频| 超碰在线观看9| 丁五月激情视频免费| 亚洲第79页| 日韩欧美骚货| 天天成人五月天| 狠狠色综合777| 五月婷免费视频久久久| 婷婷五月色网| 成人精品亚洲性爱| 极品另类| 精品久久艹| 久久人妻久久| 欧美性做爰大片免费看办公室| 五月丁香六月激情综合| 婷婷狠狠综合网入口| 大香蕉久久视频久久视频| 亚洲亚洲人成综合网络| 亚洲国产黄色电影| 成人AV中文字幕| 色综合九九色综合88| 色婷婷导航| 天天日天天舔天天摸| 操人妻90p| 五月天久久成人| 一级A片天天操夜夜操| 日本不卡五月婷婷丁香| 99在线免费观看| 99日本黄站| 丁香五月天激情| 91人久| 日韩AV免费| 天天插天天射天天干| 色色色色综合网| 色色色色色级无码| 日本色狠狠| 日韩无码专区| 欧州婷婷五月天综合| 国产三级在线播放| 91丨九色丨大屁股| 免费国产VA国产免费| 天天色五月| 日韩视频99| 五月色网| 五月丁香色色色| 色婷婷五月色| 婷婷亚洲五月色综合| 国产密乳av一区二区三区四区| 翔田千里 50岁 无码| 热久久这里只有精品| 久久久久久18| 99re这里只有精品免费| 日本天天色| 大香蕉人妻| 九九Y精品热播| 男女99免费视频| 热久久视频99| 思思精品视频| 在线观看996精品| 天天 青草 制服丝袜 在线| 色综合色综合网| 色综合久久久久| 色婷婷激情Av久久久| 狼人狠狠操| 六月天无码网址| 久婷婷婷| 39视频第二区| 就爱射中文字幕资源网| 超碰九色| 玖玖色综合网| 色五月 五月婷婷| 1024国产在线| 成人必爱视| 色欲五月婷婷| 激情五月天色色色| 久久婷婷操| www.婷婷五月| 99热在线精品播放| 国产无套精品一区二区| 激情五月天天| 深爱开心五月天| 丁香六月色婷婷| 国产精品国产| 日韩色色视频| 婷综合六月| 婷婷五月天com| 五月天婷婷社区| 1024婷婷综合久久五月天| 这里只有精品视频一区| 欧美丰满熟妇BBB久久久| 九九综合九九| 性爱网五月天| 99在线视频精品| 91se在线观看| 91久久精品国产91性色TV| 欧美色狠婷久| 亚洲AV成人在线| 婷婷五月激情网| 婷婷丁香九月| 97碰碰在线看视频免费| 香蕉视频91| 91 原创 在线 九色| 99热亚洲精品| 日韩激情网站| WWW.17C亚洲精品| 91AV视频| 日本色天堂| 玖玖婷婷五月| 影音先锋色婷婷| AV在线观看网站| 国产熟女一区二区三区五月婷| 激情中文在线| 国产激情视频在线观看| 高清无码.com| 青草视频在线观看视频 | 日本91在线| 一区二区三区视频| 五月婷丁香花| 国产欧美熟妇另类久久久| 日本婷婷丁香五月| 影音先锋AV资源男人站| 综合色色色| 五月天婷婷AV| 超碰狠狠操| 在线国产精品色| 综合婷婷| 九九热这里只有精品在线观看| 丁香五月综合激情久久潮喷| 9有码中文| 99热老网站| 狠狠色婷婷777| 五月开心婷婷| 亚州综合色| 五月天啪啪| sisi热国产| 激情四射亚洲| 五月婷啪| 九九九九九九九热| 五月天激情啪啪| 婷色五月| 人妻精品久久久久久| 国内久久久精品99| 激情开心五月天| www.狠狠干com| 日韩综合久| 亚洲综合激情五月久久| 午夜丁香五月天综合| 色婷六月| 荫道BBWBBB高潮潮喷| 骚。com| 99在线视频资源| 国产毛片精品一区二区色欲黄A片| 五月色丁香激情| 日韩高清成人| 久草婷婷网| 精品久热69| 丁香六月婷婷缴情欧美| 五月天丁香欧美激情| 亚洲啪啪网| 99色一| 日本熟妇乱妇熟色A片蜜桃| 五月天色五月天| 三级99热| 亚洲精品字幕在线观看| www.天天干| 六月婷伊人| 92国产福利| 婷婷欠久少妇| 五月婷婷啪啪| 丁香五月婷婷六月丁香| er99免费视频在线| 97超碰综合| 九月婷婷人人操人人舔人人爱| 九九五月天| 五月丁香六月婷婷在线播放| 亚洲婷婷在线播放十月| 九九人人看| 野战J办公桌椅H| 超碰在线99| 亚洲色网址| 日日操日日干| 深爱丁香网| 91精品91久久久中77777久久玖玖九九 | 操比激情五月| 被强行糟蹋的女人A片| 欧洲综合视频| 99视频只有精品| 久久在线人妻| 婷婷伊人激情婷婷| 九九热这里只有精品556| 久久日韩婷婷五月| 日韩成人电泉AV| 亚洲妇女熟BBW| 99色视频| A久久| 99久久久久久| 天天操婷婷| 久久99热免费最新版| 日本熟女一区二区| 日日干干天天干| 激情99热| 狠狠香婷婷五月| 三级黄网站| 激情综合区| 超碰男人色| 中文字幕激情综合| 色婷婷AV在线| 亚洲天堂啪啪| 91丨九色丨白浆秘| 噜噜操操| 激情综合无码| 欧美久热| 国产欧美日韩性爱| 狠狠香婷婷五月| 五月激情丁香久久综合网| 五月婷色| 99热国内| 丁香五月天激情综合网| 激情综合亚洲色婷婷五月| 丁香五月丁香伊人| 天天激情站| 色色性爱视频| 欧美在线97| 色九月婷婷| 五月开心久久| 青青草国产亚洲精品久久| 亚洲欧洲中文日韩久久AV乱码| 色婷婷电影网| 91男同视频| 五月天另类小说久久小说网| 丁香五月婷婷亚洲激情四射| 欧美99视频| 激情五月丁香五月| 激情婷婷综合| 久久九九热视频| 婷婷激情九月| 少妇大叫太大太粗太爽了A片| 一点色成人网| 色色热日| 日本精品99| 婷婷五月深深的爱| 丁香六月久| 玖玖在线| 欧美日韩中文国产一区发布| Av中文在线| 国产成人在线不卡AV| 激情综合女人网五月播播| hd五月婷婷在线| 久久ab| 色综合色| 黄色av高清| 狠狠狠狠狠狠色| WWW、日本色丁香co m| 五月网在线| 亚洲免费看片| 激情五月四色| 久久久大香蕉| 热久久视频99| 日韩啪啪网| 射满了还射免费在线观看 -午夜版全集-新视觉影院 | 九九大香蕉黄色影院| 黄色99视频| 婷婷色av| 深爱五月天| 久久五月天精品视频| 99久久9| 色色丁香激情五月| 26UUU欧美| 啪啪操网| 欧美久久五月婷婷| 丁香五月婷婷亚洲综合精品| 538在线精品| 婷婷五月大香蕉| 天天爽天天透天天爱| 99精品久久久久久久婷婷| 黄色网址五月婷婷| 国产1区2区3区在线观| 亚亚州久久高潮| 精品一二三区久久AAA片| 日本黄色在线观看| 天天射夜夜骑| 五月婷婷丁香六月| 婷婷亚洲影院| 亚洲操操操| 色婷婷丁香花五月天| 激情色色| 综合伊人久久| 欧美婷婷综合| 丁香五月婷在线观看| 激情综合五月天| 亚洲免费99| 久狠狠狠| 欧美碰碰碰| 天天日夜夜爽。| 国产毛片欧美毛片久久久| 亚洲av网站| 天天日天天舔| 91丨九色熟女丨首页| 久久开心五月婷婷| 精品少妇人妻AV无码专区偷人 | 伊人无码高清| 色综合爽| 五月丁香六月婷婷网| 午夜爱爱网站| 久9免费视频| 哇嘎成人久久| 五月婷婷成人| 久久中国毛毛片爱久久| 天天视频亚洲| 婷婷六月香| 五月婷婷开心六月激情小说| 激情五月婷婷| a v色婷婷| 丁香婷婷综合激情五月色| 精a品a视a频| 99re热视频这里只精品| 97在线精品视频| www.五月天色色.com| 婷婷狠狠操| 大香蕉啪啪| 色婷婷亚洲| 六月色色| 成人五月天色天堂| 国产亚洲精品久久久久久牛牛| 婷婷,五月天,丁香,第一| 五月丁香六月激情| 欧美激情丁香五月天久久婷婷一区| www久久99| 婷婷五月天成人动漫 | 天天色,天天操,天天射| 日韩黄色中文字幕| 久久99成人性爱高清视频| 果冻传媒A片一二三区| 精品成人无码A片观看香草视频| 三级黄色大片视频| 99国产视频网| 六月婷婷香蕉| 99这里只有精品|v| 插插干干干色| 国产乱轮一区二区三区| 99久久极情精品一区| 婷婷丁香五月天影院 | 五月天婷婷在线视频| 夜夜躁婷婷AV| 色五月婷婷老师| 6080av| 婷婷色五月天色| 99热国产精品| 精品婷婷五月视| 思思干精品| 99综合自拍| 人人草公开操| 日本成人内射| 91人人网| 六月丁香五月亭亭| 九月婷婷激情久久| 色婷婷视频在线| 97色伦另类图片小说视频| 久久日本wwww色| 色99网| 5月丁香六月情| 97热久久五月婷婷| 色婷婷成人| 色五月第四色| 综合激情婷婷| 午夜AV网| 四色99久久| 99热中文字幕久久| 另类专区在线观看| 久久久aaa| 色色色国产| 激情五月www| 欧美熟女99| 香港九九六区八区99| 狠狠操综合| 99免费热视频| 伦乱美欧| 婷婷五月电影| 噢美99| 五月天婷婷无码| 九九这里都是精品| 色色99色色| 亚洲另类av| 校花娇喘呻吟校长陈若雪视频| 激情网五月天| 亚洲精品五月| 韩国情人在线电视剧免费观看高清版全集 | 久久久精品99亚洲综合| 九热视频在线伦| 五月婷婷丁香| 成人五月天丁香| 九九精品视频在线6| 中文网AV| 99热免费精品| 奇米四色五月天| 国产看真人毛片爱做A片| 人人操97| 夜夜操天天干| 天天舔天天摸天天透| 婷婷五月天美女| 亚洲综合视频网| 五月丁香婷婷综合网色欲| 一本色道久久88加勒比| 激情综合五月| 色色色五月婷婷| 亚洲性视频| 色偷偷色婷婷| 激情五月天激情综合网| 99热精这里只有精品| 五月六月婷婷激情网| 成人丁香色| 久久婷中文字幕| 亚洲成人精品三区| 五月婷婷亚洲天堂97色婷婷| 99精品无码| 久久免费精彩视频| 99九九久久| 国产在线黄色| 91干视频| 超碰免费99| 人人人操| 五月婷婷狠狠干| 9热精品| 日本一级特黄大片AAAAA级| 欧美成人色婷婷| 狠狠干综合网| 久久婷婷综合五月趴| 欧美成人精品老美女噜噜噜| 色噜噜在线| av网站中文| 九九色99| 五月丁香六月婷婷亚洲视频| 韩国久久少妇视屏| SS丁香五月婷婷| 五月花丁香婷婷| 这里只有精品网| 夜夜干天天干| 激情五月丁香亭亭| 久狠狠| 超碰人人操| 婷婷五月天堂| 日日操日日撸| 婷婷五月花| 中文字幕有多少字| 五月综合人妻| 绿色小导航AV| 日本三级中国三级99| 日本久久天堂| 日韩五月婷婷| 色婷五月天网站| 丁香六月成人| 激情亚洲婷婷| 激情五月综合亚洲另类| 久久er99热精品一区二区| 99久久精品免费精品国产_国产精品久久久久久_国产在线|日韩_久久国产精品电影 | 丁香五月停停基地| 亚洲天99| www.av视频xx999.com| 爱草视频在线| 综合色激情| 色婷婷AV在线| 中文字幕 中文字幕明步| 深爱激情五月天| 热99玖玖99玖玖99九九| 亚洲视频无| 五月天激情影院| 国产欧美日韩一区二区三区| 色色免费网战视频| 色综合久久88色综合天天99| 女人天堂AV| 碰超亚洲| www.色色五月天.com| 亚洲人成网亚洲欧洲无码久久| 六月婷婷狠狠做| 色五月 五月婷婷| 五月丁香五月综合欧美| co超碰在线观看| 色婷成人狠干| 婷婷五月天伊人在线| 欧美成人精品老美女噜噜噜| 色五月91| 丁香六月婷婷色XXXX| 五月天丁香久久| 五月激情综合激情五月| 婷婷五月六| 大香蕉九九| 97在线干| 中文字幕丁香五月| 精品99在线| 国产欧美熟妇另类久久久 | 丁香五月天啪啪| 色五月 婷婷, 大香蕉| 99久久婷婷五月综合| 五月激情综合激情五月| 久久999久久999久久999久久| 无码色| 婷婷丁香成人五月天| 久久黄色网扯| 九九视屏| 9色婷婷| 色色日韩| 婷色五月天| 激情AV综合| 丁香婷婷六月激情文学 | 无码AV久久久久久久久| 五月天天综合| 色日本网| 丁香五月激情综合| 激情四射婷婷| 99精品视频网站| 少妇2做爰HD韩国电影| 97碰| 成年人最刺激的综合网| 婷婷伊人五月天| 3pAV| 丁香五月婷久久| 色爱99| 五月天激情视频网站| 538在线精品| 五月丁香六月婷综合成人综合| 99视频只有这里精品| 少妇人妻人伦A片| 99操碰| 亚洲综合另类| 97丁香视频| 伊人狠狠操| 在线观看免费人成视频无码| 超碰91在线| 综合激情在线视频| 97碰碰碰| 欧美黄色韩日网| 黄色短视频在线观看| 五月丁香人人婷婷在线观看| 五月丁香影视| 色爱综合网| 日韩欧洲亚洲| 中文字幕综合| 91ncm视频| 激情丁香五月AV| 这里只有免费精品| 夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂夂亚洲亚洲亚洲亚洲亚洲亚洲亚洲亚洲色 | 99九九视频| 六月色播| 色吊丝av中文字幕| 色五月婷婷五月天激情综合| 亚洲成人网址在线观看| 狠狠五月天婷婷激情网。| 婷婷色情 | 国产一区男女| 久久婷婷丁香花综合网| 99久久成人| 婷婷婷狠狠| 五月婷婷丁香av| 精品视频二级九九| 79色色色色| WWW.久久99| 丁香五月婷婷网| 大香蕉人在线65| 国产精品色婷婷99久久精品| 婷婷成人AV| 色色色国产| 久久最新色色色| 一点色成人网| 天天成人综合视频| 99久久久精品| 天天插天天插| 啊V视频在线观看| www.色婷婷.com| 丁香五月日本| 91人人爱| 99∨VTV| 色五月天堂| 五月丁香综合激情| 亚洲成人乱码av网站| 操逼五月天| 97人人搞| 79精品在线视频| 天堂久久丁香| 丁香五月天堂网| 婷婷五月天黄色| 99色在线视频| 五月天狠狠干| 激情久久 婷婷| 97色婷| 五月婷婷co.m| 人人操人人添人人摸97| 九色91国产| 婷婷丁香77777| av网站不卡在线| 丁香六月婷婷| 久久网站免费亚洲| 99热传媒| 色综合中文| 五月婷婷开心色伊人| 久久天堂色| 天天做夜夜爽| 五月婷婷激情四月| 激情六月天婷婷| 538在线精品| 99热色精品| site:jszngf.com| 大香蕉天堂色| www.久热| 五月色综合网| 婷婷五月成年人| 狠狠色丁香婷婷五月| 天天天天天天操| 99在线精品在线视频| 色性综合| 色偷偷人人| 色九区| 五月天成人在线视频网站| 五月天亚洲图片婷婷| 97综合视频在线| 五月香婷婷| 九九色综合视频| 久久99热这里只有| 午夜色丁香| 青青草视频免费观看| 91九色精品| 五月婷婷精品无在线| 国产人妻操逼| 午夜丁香 婷婷| 亚洲精品又粗又大又爽A片| 日本婷婷五月天| 亚洲成人电影aaaa| 色婷婷av在线观看| 男人視頻站| 99国产精品白浆在线观看免费| 日本3级片一区2区| 很很干在线视频| 九九五月天| 天天射色五月天| 99精彩视频网站在线| 人妻人人操| 人人爽天天爽| 婷婷五月丁综合| 天天舔天天摸天天射| 激情丁香婷婷| 视频一二区| 东北熟女高潮99综合99| 狠狠CAO日日穞夜夜穞AV| 色婷婷五月在线| Se.婷婷五月天| 98国产精品综合一区二区三区| 全国最新疫情| 开心久久xxx色| 狠狠爱激情网| 美腿丝袜AV天堂网| 91人妻九色大屁股| 丁香网站| 精品亚洲国产成AV人片传媒| 97久久视频| 丁香五月色网| 丁香五月六月综合激情| 亚洲 五月 婷婷 成人| 日韩抽插操逼| 亚洲色9| 久久久91| 久热69| 婷婷五月,偷窥偷拍网| 色综久久久| 五月婷婷香蕉| 天天色2017| 五月婷婷丁香91| 色五月激情五月| 人妻AV中文系列| 人妻久久久| 青柠影视免费高清电视剧| 99色婷婷| 乱精品一区字幕二区| 九九激情网| 国产真人做爰视频免费| 99精品无码| 亚洲经典三级| 中文字幕日产A片在线看| 国产做爰视频免费播放| 色色国产| 99久久国产宗和精品1上映| 99热在线播放| 图片区 小说区 区 亚洲五月 | 色情婷| 另类视屏| 综激情网| 久久婷婷五月| 婷婷五月天改成什么了| 五月香蕉婷婷| 丁香婷婷伊人| 这里只有精品在线视频在线观看| 色婷婷亚洲五月天| 久久婷婷五月综合啪| 中文字幕AV在线播放| 夜夜操夜夜操| 亚洲精品字幕| 丁香五月激情五月| 婷婷激情啪啪| 久久性刺激| 综合亚洲色色| 九九热99精品| 久久婷婷五月天蜜桃| 99热新网址| 涩涩五月天| 一二线视频 另类| 五他月天啪啪啪| 日韩99视频| 四月婷婷五月色综合| 五月亭亭六月激情| 亚洲欧美999| 天堂中文国产| 夜夜穞天天穞狠狠穞AV美女按摩| 91麻豆国产三级精品福利在线观看| 国产综合丁香五月天| 久久激情五月| 亚洲尤物在线| 色播五月婷婷| 五月天啪啪啪| 婷婷亚洲在线| 久久总和99| 天堂五月婷婷| 日本高清综合网五月丁香| 欧美黄色AA片哗啦啦啦| 9久久狠狠的| 色综合视频| 管管補管管紱| 五月婷婷六月丁香在线| 五月丁香六月激情欧美综合| 色婷青青| 九月影院義母在线播放| 深爱开心五月天| A在线观看| 大色鬼综合| 大香蕉久久草| 免费观看的AV| 亚洲99综合| 96丁香婷婷九月蜜桃综合久久| 99九九热在线观看| 五月天自拍视频| 玖玖综合网| 中国无码av| 91操熟女| 五月丁香六月婷婷亚洲综合| 99热这里有精品| 九热视频免费观看| 国产永久一二一起草| 五月天久久综合婷婷| 国产无遮挡又黄又爽免费网站| 激情四射婷婷色色色| 丁香5月综合啪啪| 99ri精品| 五月丁香六月婷婷激情四射| 欧美日韩成人| 在线超碰91| 九九热这里只有精品12| 久久综合丁香| 五月婷无码| 婷婷美女精品视频| 成人五月丁香社区| 丁香五月天社区婷婷| 色婷婷综合五月| 91狠狠色| 欧美啪啪五月天| 五月综合激情综合久| 丁香六月婷| 99操久久| 色五月婷婷五月天| 伊人狼人干| 蜜桃婷婷丁香五月天狠狠久久综合| 亚洲美女高潮久久久久久69| 久久99精品久久久| 婷婷五月开心中文字幕在线| 九九热精品| 91九色国产| 91视频一起草| 国产超碰人人| 五月婷婷丁香婷婷| 性爱111111| 婷婷丁香基地在线| 少妇高潮A片无套内谢麻豆传| 丁香六月啪啪| 婷婷无码视频| 丁香五月停停基地| 色婷婷亚洲五月天| 丁香五月婷婷久久久| 婷婷开心激情综合五月天| 精品一二三区久久AAA片| 五月丁香婷婷爱激情综合网| 久久婷婷色综合| 九九精品热播| 五月天六月色| 97成人超碰免| 狠狠草狠狠草| 激情五月婷婷她| 久久婷婷综合五月天| 一区=区操屄高清大全av| 永久地址 色| 亚洲六月综合激情久久下卡| 激情www.98com| 三十熟女| 丁香五月人妻熟女| 五月丁香婷婷成人网| 五月丁香色狠狠干大屄| http:色情日本com| 五月丁香六月婷婷中文版| 国产精品美女久久久久AV超清| 六月综和久久| 中文字幕中文有码在线| 五月婷婷无码专区|