亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

嵌入式Linux觸摸屏驅(qū)動(dòng)開(kāi)發(fā):從設(shè)備樹(shù)到Android框架的CST226SE移植實(shí)戰(zhàn)

嵌入式Linux觸摸屏驅(qū)動(dòng)開(kāi)發(fā):從設(shè)備樹(shù)到Android框架的CST226SE移植實(shí)戰(zhàn) 1. 項(xiàng)目概述當(dāng)CST226SE觸摸屏遇上MSM8953平臺(tái)最近在做一個(gè)基于高通MSM8953平臺(tái)的項(xiàng)目需要調(diào)試一款新的觸摸屏芯片——CST226SE。這活兒聽(tīng)起來(lái)就是“驅(qū)動(dòng)移植”的老套路但真上手了才發(fā)現(xiàn)從拿到原理圖到觸摸屏流暢響應(yīng)中間每一步都可能藏著坑。MSM8953作為一款經(jīng)典的中端手機(jī)SoC其內(nèi)核和驅(qū)動(dòng)架構(gòu)在嵌入式領(lǐng)域應(yīng)用廣泛而CST226SE則是一款性能不錯(cuò)的電容觸摸控制器。兩者的結(jié)合考驗(yàn)的不僅僅是配置幾個(gè)GPIO和I2C地址更是對(duì)整個(gè)Android/Linux內(nèi)核輸入子系統(tǒng)、設(shè)備樹(shù)Device Tree以及芯片本身特性的理解。如果你也在為類(lèi)似平臺(tái)的觸摸調(diào)試頭疼或者好奇一個(gè)觸摸功能從無(wú)到有需要經(jīng)歷哪些步驟那么我這次踩坑和填坑的經(jīng)歷或許能給你一份清晰的路線(xiàn)圖。2. 核心需求與方案選型解析2.1 為什么是CST226SE與MSM8953的組合在項(xiàng)目選型初期我們?cè)u(píng)估了幾款觸摸芯片。最終選擇CST226SE主要基于幾個(gè)考量首先是性?xún)r(jià)比它在報(bào)告率、精度和抗干擾能力上達(dá)到了一個(gè)很好的平衡能滿(mǎn)足我們產(chǎn)品一款工業(yè)手持設(shè)備對(duì)可靠觸控的需求其次是供應(yīng)商的支持提供了相對(duì)完整的Linux內(nèi)核驅(qū)動(dòng)代碼和調(diào)試工具這能極大縮短開(kāi)發(fā)周期。而MSM8953平臺(tái)我們團(tuán)隊(duì)對(duì)其內(nèi)核通常是Android 7/8對(duì)應(yīng)的Linux 3.18或4.9內(nèi)核和硬件接口非常熟悉其成熟的I2C、中斷、電源管理框架為外設(shè)驅(qū)動(dòng)開(kāi)發(fā)提供了穩(wěn)定基礎(chǔ)。這個(gè)組合的核心需求很明確在MSM8953的Linux內(nèi)核上使能CST226SE觸摸控制器實(shí)現(xiàn)穩(wěn)定、精準(zhǔn)的多點(diǎn)觸控功能并集成到Android系統(tǒng)的輸入服務(wù)中。這不僅僅是一個(gè)“點(diǎn)亮”屏幕的問(wèn)題更涉及到坐標(biāo)校準(zhǔn)、手勢(shì)識(shí)別、功耗優(yōu)化等一系列工程細(xì)節(jié)。2.2 整體調(diào)試思路與工具鏈準(zhǔn)備面對(duì)這樣一個(gè)驅(qū)動(dòng)調(diào)試任務(wù)我的思路是分層推進(jìn)從硬件到軟件從底層到上層硬件確認(rèn)層確保原理圖連接正確電源、I2C、中斷線(xiàn)INT、復(fù)位線(xiàn)RST等硬件信號(hào)萬(wàn)無(wú)一失。這是所有工作的基石硬件錯(cuò)了軟件調(diào)死也沒(méi)用。內(nèi)核驅(qū)動(dòng)層這是核心戰(zhàn)場(chǎng)。需要獲取CST226SE的驅(qū)動(dòng)源碼將其適配到MSM8953的內(nèi)核中重點(diǎn)修改設(shè)備樹(shù)DTS來(lái)描述硬件連接并確保驅(qū)動(dòng)能正確初始化、注冊(cè)為輸入設(shè)備。系統(tǒng)驗(yàn)證層驅(qū)動(dòng)加載后通過(guò)內(nèi)核日志、輸入子系統(tǒng)調(diào)試接口、以及Android端的getevent工具來(lái)驗(yàn)證原始觸摸數(shù)據(jù)是否正確上報(bào)??蚣芘渲脤釉贏ndroid系統(tǒng)層面配置輸入設(shè)備IDidc文件和觸摸屏參數(shù)tp文件或inputflinger配置確保系統(tǒng)能正確識(shí)別并處理來(lái)自CST226SE的觸摸事件。功能與性能調(diào)優(yōu)層解決可能出現(xiàn)的坐標(biāo)漂移、跳點(diǎn)、邊緣不靈、功耗高等問(wèn)題進(jìn)行參數(shù)微調(diào)。工欲善其事必先利其器。調(diào)試過(guò)程中離不開(kāi)以下工具硬件工具萬(wàn)用表、示波器用于抓取I2C波形和中斷信號(hào)排查硬件通信問(wèn)題、邏輯分析儀更深入的協(xié)議分析。軟件工具串口調(diào)試助手這是與設(shè)備內(nèi)核交互的生命線(xiàn)。通過(guò)串口查看dmesg內(nèi)核日志是診斷驅(qū)動(dòng)問(wèn)題的最直接方式。我習(xí)慣使用minicom或picocom在Linux主機(jī)上操作當(dāng)然Windows下也有SecureCRT、MobaXterm等優(yōu)秀工具。ADBAndroid Debug Bridge當(dāng)系統(tǒng)啟動(dòng)后ADB是連接設(shè)備和上位機(jī)進(jìn)行文件傳輸、命令執(zhí)行、日志抓取的關(guān)鍵。內(nèi)核及文件系統(tǒng)源碼MSM8953的BSP板級(jí)支持包和CST226SE的驅(qū)動(dòng)源碼。文本編輯與對(duì)比工具如VSCode、Vim用于代碼修改和diff比較。3. 硬件連接與設(shè)備樹(shù)DTS配置詳解3.1 原理圖關(guān)鍵信號(hào)核對(duì)拿到硬件原理圖首先要像偵探一樣審視以下幾個(gè)關(guān)鍵點(diǎn)任何一處疏漏都可能導(dǎo)致后續(xù)調(diào)試陷入僵局電源軌CST226SE通常需要1.8V或3.3V的IO電源VDDIO和模擬電源AVDD。必須確認(rèn)MSM8953平臺(tái)上的相應(yīng)電源網(wǎng)絡(luò)能否提供穩(wěn)定、干凈的電壓上電時(shí)序是否符合芯片要求。用萬(wàn)用表實(shí)測(cè)電壓是必不可少的步驟。I2C總線(xiàn)確認(rèn)SCL和SDA線(xiàn)連接到了MSM8953的哪個(gè)I2C控制器如i2c_0i2c_1。特別注意上拉電阻通常需要在總線(xiàn)上拉例如4.7KΩ到VDDIO如果原理圖遺漏需要在PCB上補(bǔ)焊。中斷信號(hào)INT這是觸摸事件通知的關(guān)鍵。確認(rèn)INT引腳連接到了MSM8953的哪個(gè)GPIO。必須配置為中斷輸入模式并且要確認(rèn)中斷觸發(fā)方式上升沿、下降沿或低電平與CST226SE的數(shù)據(jù)手冊(cè)描述一致。通常電容觸摸芯片在有觸摸時(shí)INT會(huì)拉低。復(fù)位信號(hào)RST有的設(shè)計(jì)會(huì)用GPIO控制芯片硬復(fù)位確保開(kāi)機(jī)或異常時(shí)能可靠復(fù)位。需要確認(rèn)連接和極性高電平復(fù)位還是低電平復(fù)位。I2C從機(jī)地址CST226SE的I2C地址通常由某個(gè)引腳如ADDR的電平?jīng)Q定查看原理圖確認(rèn)該引腳是接高、接低還是懸空內(nèi)部有上拉/下拉從而確定7位從機(jī)地址例如0x2E。實(shí)操心得強(qiáng)烈建議在焊接第一塊樣板后先用示波器抓一下I2C總線(xiàn)的波形。在系統(tǒng)上電、內(nèi)核啟動(dòng)過(guò)程中看看主控是否嘗試去訪(fǎng)問(wèn)你預(yù)設(shè)的I2C地址。如果連起始信號(hào)START和地址包都看不到那問(wèn)題很可能出在硬件連接、電源或I2C控制器使能上。3.2 設(shè)備樹(shù)DTS節(jié)點(diǎn)編寫(xiě)設(shè)備樹(shù)是Linux內(nèi)核用來(lái)描述硬件資源配置的數(shù)據(jù)庫(kù)。對(duì)于MSM8953這類(lèi)ARM平臺(tái)驅(qū)動(dòng)匹配硬件主要靠它。我們需要在對(duì)應(yīng)的板級(jí)DTS文件如msm8953-mtp.dtsi或項(xiàng)目自定義的DTS中添加CST226SE的節(jié)點(diǎn)。假設(shè)我們的硬件連接是I2C總線(xiàn)為i2c_3對(duì)應(yīng)i2c_3 INT引腳連接至GPIO 25 RST引腳連接至GPIO 32 I2C地址為0x2E。/* 在 i2c_3 節(jié)點(diǎn)內(nèi)添加 */ i2c_3 { status “okay”; // 確保該I2C控制器已啟用 cst226se_ts: cst226se2e { compatible “chipone,cst226se”; // 驅(qū)動(dòng)匹配的關(guān)鍵字 reg 0x2e; // I2C從機(jī)地址 interrupt-parent tlmm; // 中斷控制器MSM平臺(tái)通常是tlmm interrupts 25 0x2008; // GPIO 25 觸發(fā)方式0x2008通常代表邊沿觸發(fā)、高電平有效具體需查平臺(tái)定義 reset-gpios tlmm 32 GPIO_ACTIVE_LOW; // 復(fù)位GPIO低電平有效 vdd-supply pm8953_l10; // 模擬電源引用PMIC上的LDO vddio-supply pm8953_l5; // IO電源引用PMIC上的LDO /* 芯片特定參數(shù) */ chipone,x-res 720; // 觸摸屏X方向分辨率 chipone,y-res 1280; chipone,irq-gpio tlmm 25 0x2008; // 再次明確中斷GPIO有些驅(qū)動(dòng)需要這樣寫(xiě) chipone,reset-gpio tlmm 32 0; // 可能還有其他參數(shù)如最大觸摸點(diǎn)數(shù)、報(bào)告率等需參考驅(qū)動(dòng)源碼 }; };關(guān)鍵點(diǎn)解析compatible屬性這是靈魂。字符串必須與CST226SE驅(qū)動(dòng)源碼中of_device_id表里的條目完全一致。通常驅(qū)動(dòng)商會(huì)提供這個(gè)字符串。interrupts屬性格式為GPIO號(hào) 中斷標(biāo)志。0x2008是一個(gè)常見(jiàn)值表示IRQ_TYPE_EDGE_RISING上升沿觸發(fā)但務(wù)必根據(jù)芯片數(shù)據(jù)手冊(cè)和平臺(tái)頭文件如dt-bindings/interrupt-controller/irq.h確認(rèn)。錯(cuò)誤的中斷觸發(fā)方式會(huì)導(dǎo)致無(wú)法收到中斷或持續(xù)收到中斷。GPIO引用MSM平臺(tái)使用tlmm作為GPIO控制器。GPIO_ACTIVE_LOW表示低電平有效這對(duì)于復(fù)位引腳很常見(jiàn)。電源管理使用vdd-supply和vddio-supply引用PMIC電源管理芯片的調(diào)節(jié)器可以讓內(nèi)核在系統(tǒng)掛起/恢復(fù)時(shí)自動(dòng)控制觸摸屏的供電實(shí)現(xiàn)低功耗。注意事項(xiàng)修改DTS后需要重新編譯內(nèi)核或DTB設(shè)備樹(shù)二進(jìn)制文件并燒錄到設(shè)備。確保編譯系統(tǒng)正確包含了你的修改。一個(gè)快速驗(yàn)證DTB是否正確的方法是在系統(tǒng)啟動(dòng)后通過(guò)adb shell進(jìn)入執(zhí)行cat /proc/device-tree/或使用dtc工具反編譯當(dāng)前運(yùn)行的DTB查看你的節(jié)點(diǎn)是否存在且屬性正確。4. 內(nèi)核驅(qū)動(dòng)移植與編譯4.1 驅(qū)動(dòng)源碼結(jié)構(gòu)與適配通常芯片原廠(chǎng)或模組廠(chǎng)會(huì)提供一個(gè)Linux內(nèi)核驅(qū)動(dòng)包。其核心文件一般包括chipone_ts.c主驅(qū)動(dòng)文件包含初始化、探測(cè)probe、移除remove、中斷處理、上報(bào)輸入事件等核心函數(shù)。chipone_ts.h頭文件定義寄存器地址、數(shù)據(jù)結(jié)構(gòu)、配置參數(shù)。Makefile和Kconfig用于將驅(qū)動(dòng)集成到內(nèi)核編譯體系。適配工作的核心確認(rèn)兼容性檢查驅(qū)動(dòng)代碼所依賴(lài)的內(nèi)核API。MSM8953的內(nèi)核版本可能較老如3.18而供應(yīng)商提供的驅(qū)動(dòng)可能是針對(duì)更新內(nèi)核如4.19編寫(xiě)的。需要關(guān)注input_devAPI、GPIO API、中斷API、電源管理API等是否有變化。常見(jiàn)的適配點(diǎn)是devm_gpio_request_one、request_threaded_irq等函數(shù)的參數(shù)或頭文件路徑。集成到內(nèi)核樹(shù)將驅(qū)動(dòng)源碼文件夾例如chipone-touch/放置在內(nèi)核源碼的drivers/input/touchscreen/目錄下。修改Makefile/Kconfig在drivers/input/touchscreen/Makefile中添加一行obj-$(CONFIG_TOUCHSCREEN_CST226SE) chipone-touch/在drivers/input/touchscreen/Kconfig中添加一個(gè)配置選項(xiàng)config TOUCHSCREEN_CST226SE tristate “ChipOne CST226SE touchscreen” depends on I2C help Say Y here if you have a ChipOne CST226SE touchscreen connected to your system. If unsure, say N.驅(qū)動(dòng)中的硬件抽象層HAL適配仔細(xì)查看驅(qū)動(dòng)中的probe函數(shù)。它需要通過(guò)of_系列函數(shù)如of_get_gpio、of_property_read_u32從我們剛寫(xiě)的DTS節(jié)點(diǎn)中讀取GPIO編號(hào)、分辨率等參數(shù)。確保驅(qū)動(dòng)代碼能正確解析你在DTS中設(shè)置的屬性名如chipone,irq-gpio。4.2 內(nèi)核配置與編譯完成代碼放置和配置后需要在內(nèi)核編譯菜單中啟用該驅(qū)動(dòng)。# 在內(nèi)核源碼根目錄 make ARCHarm64 menuconfig # 對(duì)于64位的MSM8953 # 或者 make ARCHarm menuconfig # 對(duì)于32位內(nèi)核導(dǎo)航至Device Drivers --- Input device support --- [*] Touchscreens --- * ChipOne CST226SE touchscreen選擇*表示編譯進(jìn)內(nèi)核鏡像M表示編譯為內(nèi)核模塊。對(duì)于觸摸屏這種基礎(chǔ)設(shè)備建議直接編譯進(jìn)內(nèi)核*。保存退出后開(kāi)始編譯內(nèi)核和DTBmake ARCHarm64 CROSS_COMPILEaarch64-linux-gnu- -j8編譯完成后在輸出目錄如arch/arm64/boot/找到Image.gz-dtb或單獨(dú)的Image.gz和*.dtb文件將其燒錄到設(shè)備。踩坑記錄有一次編譯順利但驅(qū)動(dòng)死活不工作。dmesg里甚至看不到驅(qū)動(dòng)的探測(cè)probe信息。排查了半天發(fā)現(xiàn)是內(nèi)核的CONFIG_I2C配置中我使用的那個(gè)具體I2C控制器編號(hào)如CONFIG_I2C_QUP沒(méi)有被啟用。所以不僅要開(kāi)啟觸摸驅(qū)動(dòng)本身還要確保其依賴(lài)的底層總線(xiàn)驅(qū)動(dòng)I2C/SPI以及對(duì)應(yīng)的控制器驅(qū)動(dòng)也已啟用。5. 系統(tǒng)啟動(dòng)與初步調(diào)試5.1 內(nèi)核日志分析與驅(qū)動(dòng)狀態(tài)確認(rèn)燒錄新內(nèi)核后通過(guò)串口觀(guān)察啟動(dòng)日志。你需要關(guān)注以下幾個(gè)關(guān)鍵信息I2C控制器初始化搜索i2c_3或你使用的總線(xiàn)編號(hào)看是否成功注冊(cè)。設(shè)備樹(shù)節(jié)點(diǎn)解析內(nèi)核會(huì)打印解析到的設(shè)備節(jié)點(diǎn)。驅(qū)動(dòng)探測(cè)Probe這是最關(guān)鍵的日志。如果一切順利你應(yīng)該能看到類(lèi)似這樣的信息[ 2.345678] i2c i2c-3: new_device: Found device chipone,cst226se at address 0x2e [ 2.345690] cst226se 3-002e: Probing ChipOne CST226SE touchscreen [ 2.356789] cst226se 3-002e: Touchscreen size: 720x1280 [ 2.356801] cst226se 3-002e: Successfully initialized [ 2.356812] input: chipone,cst226se as /devices/platform/soc/78b7000.i2c/i2c-3/3-002e/input/input5最后一行特別重要它表明驅(qū)動(dòng)已經(jīng)向輸入子系統(tǒng)Input Subsystem成功注冊(cè)了一個(gè)名為chipone,cst226se的輸入設(shè)備路徑是/dev/input/eventX這里的event5。如果看不到Probing信息可能的原因有DTS節(jié)點(diǎn)compatible字符串與驅(qū)動(dòng)不匹配。I2C通信失敗地址錯(cuò)誤、總線(xiàn)未使能、硬件問(wèn)題。驅(qū)動(dòng)編譯未生效或未包含進(jìn)內(nèi)核。如果探測(cè)失敗驅(qū)動(dòng)可能會(huì)打印錯(cuò)誤碼如-ENODEV-EIO等這是最重要的調(diào)試線(xiàn)索。5.2 使用輸入子系統(tǒng)工具驗(yàn)證數(shù)據(jù)上報(bào)驅(qū)動(dòng)成功注冊(cè)后就可以在用戶(hù)空間驗(yàn)證觸摸數(shù)據(jù)了。查看輸入設(shè)備列表adb shell cat /proc/bus/input/devices在輸出列表中尋找你的觸摸屏設(shè)備確認(rèn)其Handlers中包含eventX。使用getevent工具監(jiān)聽(tīng)原始事件adb shell getevent -l /dev/input/event5這個(gè)命令會(huì)實(shí)時(shí)打印出該輸入設(shè)備上報(bào)的所有原始事件。用手指觸摸屏幕你應(yīng)該能看到連續(xù)的EV_ABS絕對(duì)坐標(biāo)事件數(shù)據(jù)流包括ABS_MT_TRACKING_ID觸摸點(diǎn)ID、ABS_MT_POSITION_X、ABS_MT_POSITION_Y等。這是驅(qū)動(dòng)與上層通信的“原始語(yǔ)言”。如果能看到坐標(biāo)變化恭喜底層驅(qū)動(dòng)基本通了如果沒(méi)有任何輸出可能是中斷未觸發(fā)或者驅(qū)動(dòng)內(nèi)部的數(shù)據(jù)解析、上報(bào)邏輯有問(wèn)題。需要結(jié)合內(nèi)核日志dmesg -w動(dòng)態(tài)查看驅(qū)動(dòng)在中斷處理函數(shù)中是否有打印信息。使用evtest工具進(jìn)行更詳細(xì)的測(cè)試adb shell evtest /dev/input/event5evtest會(huì)提供更友好的交互界面顯示所有支持的事件類(lèi)型和具體的坐標(biāo)值非常適合驗(yàn)證多點(diǎn)觸控多個(gè)TRACKING_ID是否正常工作。實(shí)操心得在驅(qū)動(dòng)調(diào)試初期可以在中斷處理函數(shù)、坐標(biāo)上報(bào)函數(shù)里添加一些printk內(nèi)核打印語(yǔ)句輸出原始寄存器值或計(jì)算后的坐標(biāo)。雖然這會(huì)降低性能但對(duì)于定位問(wèn)題比如坐標(biāo)計(jì)算錯(cuò)誤、上報(bào)頻率異常非常有效。調(diào)試完成后記得移除或禁用這些調(diào)試打印。6. Android框架層配置與校準(zhǔn)6.1 配置輸入設(shè)備標(biāo)識(shí).idc文件Android系統(tǒng)通過(guò)Input Device Configuration文件來(lái)定義輸入設(shè)備的特性如是否為觸摸屏、虛擬鍵映射等。對(duì)于觸摸屏通常需要?jiǎng)?chuàng)建一個(gè).idc文件。在設(shè)備的/system/usr/idc/目錄下如果是只讀系統(tǒng)需要在編譯時(shí)集成到vendor分區(qū)創(chuàng)建一個(gè)文件命名規(guī)則通常為Vendor_XXXX_Product_XXXX.idc。你可以從getevent的輸出中找到input設(shè)備的name或者用更簡(jiǎn)單的方法創(chuàng)建一個(gè)以設(shè)備eventX節(jié)點(diǎn)名命名的文件例如chipone,cst226se.idc。文件內(nèi)容示例# 基本設(shè)備類(lèi)型 touch.deviceType touchScreen # 觸摸屏方向0代表自然方向 touch.orientationAware 1 # 校準(zhǔn)矩陣初始為單位矩陣后續(xù)校準(zhǔn)會(huì)覆蓋 touch.size.calibration normalized touch.pressure.calibration physical這個(gè)文件告訴Android“這是一個(gè)觸摸屏設(shè)備需要處理方向旋轉(zhuǎn)并使用標(biāo)準(zhǔn)化的尺寸和壓力校準(zhǔn)”。6.2 觸摸屏校準(zhǔn)與參數(shù)微調(diào)即使原始坐標(biāo)能上報(bào)直接使用也可能不準(zhǔn)可能出現(xiàn)點(diǎn)擊位置偏移、劃線(xiàn)不直、邊緣無(wú)效等問(wèn)題。這時(shí)就需要校準(zhǔn)。使用ts_calibrate基于Tslib對(duì)于嵌入式Linux經(jīng)典的校準(zhǔn)工具是tslib中的ts_calibrate。你需要先為Android系統(tǒng)交叉編譯tslib并將其push到設(shè)備上。運(yùn)行ts_calibrate后會(huì)在屏幕上依次顯示五個(gè)點(diǎn)點(diǎn)擊后生成一個(gè)校準(zhǔn)文件如/etc/pointercal。驅(qū)動(dòng)或中間層需要讀取這個(gè)文件來(lái)應(yīng)用校準(zhǔn)矩陣。注意這種方法更適用于老式的電阻屏或需要非線(xiàn)性校正的電容屏。對(duì)于現(xiàn)代投射式電容屏如CST226SE其線(xiàn)性度通常很好校準(zhǔn)更多是解決安裝位置偏移如TP與LCD貼合有偏差和坐標(biāo)映射問(wèn)題。在驅(qū)動(dòng)或HAL層進(jìn)行坐標(biāo)變換更常見(jiàn)的做法是在驅(qū)動(dòng)或Android的InputReader階段進(jìn)行軟件校準(zhǔn)。這通常涉及幾個(gè)參數(shù)X/Y軸反轉(zhuǎn)invert_x,invert_y。坐標(biāo)交換swap_xy。坐標(biāo)偏移和縮放offset_x,offset_y,scale_x,scale_y。 這些參數(shù)可以通過(guò)DTS屬性傳入驅(qū)動(dòng)或者在驅(qū)動(dòng)的platform_data中設(shè)置。例如如果觸摸屏的坐標(biāo)系原點(diǎn)在右下角而LCD原點(diǎn)在左上角就需要設(shè)置invert_x和invert_y。利用Android的inputflinger調(diào)試Android提供了強(qiáng)大的調(diào)試命令。通過(guò)adb shell dumpsys input可以查看所有輸入設(shè)備的詳細(xì)狀態(tài)、配置和最近事件。你可以在這里檢查你的觸摸屏設(shè)備是否被正確識(shí)別以及當(dāng)前的InputMapper應(yīng)用了哪些轉(zhuǎn)換參數(shù)。校準(zhǔn)流程建議編寫(xiě)一個(gè)簡(jiǎn)單的測(cè)試APK在屏幕上顯示一個(gè)十字準(zhǔn)星和觸摸點(diǎn)的實(shí)時(shí)坐標(biāo)。用手指點(diǎn)擊屏幕四個(gè)角和中心對(duì)比觸摸點(diǎn)坐標(biāo)和實(shí)際顯示位置。根據(jù)偏差計(jì)算并調(diào)整上述的offset和scale參數(shù)有時(shí)還需要微調(diào)resolution屬性。將最終確定的參數(shù)固化到DTS或驅(qū)動(dòng)的初始化代碼中。7. 高級(jí)調(diào)試與性能優(yōu)化7.1 常見(jiàn)問(wèn)題排查速查表問(wèn)題現(xiàn)象可能原因排查步驟驅(qū)動(dòng)完全無(wú)打印getevent無(wú)設(shè)備1. DTS節(jié)點(diǎn)錯(cuò)誤或未編譯進(jìn)DTB2. I2C通信失敗3. 驅(qū)動(dòng)未編譯/加載1. 檢查dmesg啟動(dòng)日志搜索I2C和compatible字符串。2. 用示波器測(cè)量I2C波形確認(rèn)地址和數(shù)據(jù)。3. 檢查/sys/bus/i2c/devices/下是否有對(duì)應(yīng)地址的設(shè)備節(jié)點(diǎn)。驅(qū)動(dòng)probe成功但getevent無(wú)數(shù)據(jù)1. 中斷未正確觸發(fā)或未注冊(cè)2. 芯片未初始化成功固件、配置3. 電源不穩(wěn)定1. 測(cè)量INT引腳電壓觸摸時(shí)是否跳變。2. 在驅(qū)動(dòng)中斷處理函數(shù)加打印。3. 檢查驅(qū)動(dòng)初始化流程確認(rèn)是否成功向芯片寫(xiě)了配置寄存器。觸摸有數(shù)據(jù)但坐標(biāo)全為0或固定值1. 坐標(biāo)數(shù)據(jù)解析錯(cuò)誤寄存器地址、字節(jié)序2. 芯片報(bào)告的數(shù)據(jù)格式與驅(qū)動(dòng)預(yù)期不符1. 在驅(qū)動(dòng)中打印原始寄存器數(shù)據(jù)。2. 對(duì)照數(shù)據(jù)手冊(cè)檢查驅(qū)動(dòng)解析X/Y坐標(biāo)的代碼。坐標(biāo)跳動(dòng)跳點(diǎn)1. 電源噪聲干擾2. 屏體或FPC受到干擾3. 驅(qū)動(dòng)濾波算法太弱或參數(shù)不當(dāng)1. 用示波器檢查觸摸屏供電的紋波。2. 檢查FPC連接器是否接觸良好屏蔽是否到位。3. 調(diào)整驅(qū)動(dòng)中的濾波參數(shù)如平均濾波窗口大小。邊緣觸摸不靈或坐標(biāo)錯(cuò)誤1. 屏體與蓋板貼合問(wèn)題邊緣氣泡、壓力不均2. 驅(qū)動(dòng)中定義的max_x/max_y與實(shí)際有效感應(yīng)區(qū)不匹配1. 檢查硬件裝配。2. 校準(zhǔn)工具測(cè)試邊緣點(diǎn)調(diào)整驅(qū)動(dòng)中的分辨率或映射范圍。多點(diǎn)觸控失效1. 驅(qū)動(dòng)僅支持單點(diǎn)上報(bào)2. 芯片固件或配置未開(kāi)啟多點(diǎn)3. Androididc文件配置錯(cuò)誤1. 確認(rèn)驅(qū)動(dòng)使用input_mt_report_slot_state等MT協(xié)議函數(shù)。2. 檢查芯片初始化序列。3. 確認(rèn).idc文件中touch.deviceType touchScreen。系統(tǒng)休眠后觸摸失靈1. 電源管理PM未正確配置休眠后未給TP供電2. 驅(qū)動(dòng)未實(shí)現(xiàn)resume函數(shù)或?qū)崿F(xiàn)有誤1. 檢查DTS中vdd-supply的PMIC LDO在休眠時(shí)是否被關(guān)閉。2. 在驅(qū)動(dòng)中實(shí)現(xiàn)pm_ops確保resume時(shí)重新初始化芯片。7.2 性能與功耗優(yōu)化要點(diǎn)中斷優(yōu)化默認(rèn)情況下每次觸摸事件都會(huì)觸發(fā)一次中斷。對(duì)于高報(bào)告率的TP這可能導(dǎo)致系統(tǒng)中斷負(fù)載過(guò)高??梢钥紤]使用中斷合并有些觸摸芯片支持設(shè)置報(bào)告率或驅(qū)動(dòng)中可以在短時(shí)間內(nèi)合并多次坐標(biāo)上報(bào)只上報(bào)最后一次。檢查中斷觸發(fā)方式確保是邊沿觸發(fā)而非電平觸發(fā)避免持續(xù)中斷。電源管理充分利用Runtime PM在驅(qū)動(dòng)中實(shí)現(xiàn)runtime_suspend和runtime_resume回調(diào)。當(dāng)屏幕關(guān)閉或一段時(shí)間無(wú)觸摸時(shí)讓芯片進(jìn)入低功耗模式。精細(xì)控制供電通過(guò)DTS中的vdd-supply和vddio-supply讓內(nèi)核在系統(tǒng)休眠suspend時(shí)自動(dòng)斷開(kāi)TP電源喚醒時(shí)再上電。驅(qū)動(dòng)代碼效率中斷處理函數(shù)irq_handler要盡可能短小只做必要的數(shù)據(jù)讀取和上報(bào)復(fù)雜的處理可以推到工作隊(duì)列workqueue或線(xiàn)程化中斷的下半部。避免在中斷上下文中使用printk等可能引起睡眠的函數(shù)。調(diào)試CST226SE觸摸屏驅(qū)動(dòng)是一個(gè)典型的嵌入式Linux外設(shè)驅(qū)動(dòng)開(kāi)發(fā)過(guò)程。它串聯(lián)了硬件原理、設(shè)備樹(shù)、內(nèi)核驅(qū)動(dòng)、輸入子系統(tǒng)、Android框架等多個(gè)層面的知識(shí)。最花時(shí)間的往往不是寫(xiě)代碼而是定位問(wèn)題。耐心分析內(nèi)核日志、善用硬件調(diào)試工具、對(duì)芯片數(shù)據(jù)手冊(cè)和內(nèi)核框架有清晰的理解是解決問(wèn)題的關(guān)鍵。當(dāng)屏幕終于精準(zhǔn)地響應(yīng)手指的每一次滑動(dòng)時(shí)那種成就感就是對(duì)所有調(diào)試工作的最好回報(bào)。希望這份詳細(xì)的記錄能幫你繞過(guò)我踩過(guò)的那些坑。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
欧美精品庄| 玖玖色综合| 熟妇女人妻呻吟久久AV| 亚洲高清色综合| 婷婷AV一区二区三区| 日韩伦理视频| 亚洲啪AⅤ永久无码| 日韩人妻精品久久久久| 欧美碰碰综合色| 在线播放中文字幕| 国内一级精品| 最新欧洲欧美日本激情网站| 丝袜美腿av女优在线| 人妻AV在线| 欧美日韩狠狠爱| 天天做天天爽| 97天天操| 熟女欧美日韩综合婷婷| 国产精品久久久久无码A√| 国产白领连续中出在线播放| 中文字幕一区二区韩| 成人在线视频一区| 性色av网站| 99热精品在线观看| 男人的天堂不卡一区二区 | 色综合久| 玖玖久久久| 大奶啊啊好爽| 天天弄天天操| 天天综合~91| 可乐操亚洲蜜911| 欧美极品少妇交| 啊啊啊爽爽| 素人播放一区| 日日噜噜夜夜狠狠视频无| 久久久久78| 成人免费在线网站| 久久久久久人妻一区精品色欧美| 精品久操| 中文字幕加勒比海高清无码免费视频| 亚洲国产ⅴ高清在线观看| 天天躁狠狠躁av| 国产 三级自拍| 97久久精品| 日日干男人的天堂| 999狠狠综合| 国产精品嫩草影院午夜两性| 啊啊啊慢点| 老熟妇综合| 日本一级二级三级网站| 999久久久免费精品国产牛牛| 97AV在线免费观看| 1024亚洲中文字幕久在线看片你懂的 | 99黄页网站| 成人AV在线电影| 日本操逼视频免费| 日韩电影免费网站麻豆视频| 亚洲人妻熟妇三十三区| 男人的天堂在线有码| 久久性爱视频免费看| 精品中文日韩字幕视频| 狠狠欧美| 欧美黄片欧美黄片xxx| 欧美熟妇精品黑人巨大91| 91色综合激情| 超碰av在线| 岛国1区2区3区在线观看| 撸无码不卡免费视频| 亚洲最大的黄色电影网站。| 欧美激情综合| 亚洲成?V人片在线观看福利| 大香蕉视频一二三区| 久久中文字幕人妻熟av女蜜柚| 欧美爆操91| 亚洲少妇色| 91 亚洲 欧美 日韩 国产 综合| 一区二区三| 9999久久久久| 天天操美美| 夜夜操91744565| 涩五月婷婷| 成年人性爱日韩| 欧美资源| 熟人人妻少妇精品久久| 久久久草草精品| 欧美白嫩女HD| 国产精品天干天干综合网麻豆| 91久久精品蜜臀| 国产精品毛片?v一区二区三区 | 久久草视频污视频| 久久夜嗨| 诱惑人妻欧美一区在线播放| 99RE在线视频精品,这里只有精品| 欧美熟爽综合| 亚洲综合113页| 色月天AV导航| 日韩精品三区四区| 九九热这里只有在线精品视 伊人草 成人菠萝蜜视频在线观看 | 日日干日日操五月天伦理视频| 五月丁香影视| 狠狠综合| 欧美男女午夜啪啪| 日本在线不卡123| 男人的天堂.com| 亚洲男人的天堂V| 久操视频免费在线观看| 天美国产精品| 九九十八精品| 欧洲亚洲天堂精品| 久久久久久99999国产精品| 国产一区二区在线播放,久久亚洲精品中文字幕第一区,亚洲精品在线中文字幕视频 | 天天躁日日躁AAAXX| 免费伦费视频在线观看| 天天干天天操天天干天天操| av天堂5| 丁香五月影院| 国产精品2020| 久久久久久久久久久久欧美日| 91超碰碰在线| 乱操9999| 日韩熟女精一区二区三区不卡| 97亚洲色图| 久热最新在线杭州| 久久男人精品| 99热这里只有精| 天美AV片| 婷婷久久久精品| 日日躁夜夜躁狠狠躁超爽| 国产美女自拍视频| 日本一级真人黄色性爱视频| 欧美日韩电影成人在线| 中国女人内射6XXXXX| 熟女六十路| 狠狠操狠狠| 亚洲天堂另类美腿| 久日综合网| 精品无人区麻豆乱码1区2区图片| 无遮挡男女激烈动态图| 人人爱人人操人人性| 午夜男女爽爽爽在线视频 | 97人人操人人摸人人爱| 欧洲色色| 中文字幕一区二区三区四五区| 日躁天天爽爽| 国产AV激情无码久久无码| 久久激情视频| 91日产欧美| 天天干人人乐| 久热婷婷| 无码操逼天堂| 欧美岛国精品在线观看| 欧美自拍偷拍免费观看| 日韩啪啪啪啪啪| 日夜久久久九九九久| 少妇久久久免费| 三级日韩一区二区三区| 伊人久久艹| 四虎国产成人精品免费一女五男| 乱人乱色一区二区三区免费| 久久精品国产72国产精品福利| av天堂影视中文在字幕在线中文| 99热日| 久久78| 激情五月天社区| 综合干干干av久久久综合网 | 五月婷婷六月色| 韩国久久97| 一二视频神马久久传媒| 午夜乱轮操逼视频免费看| 婷婷综合久久| 久久一二三四五六七八九区| 亚洲人妻中文高清| 亚洲天堂情色| 先锋激情∨在线视频播放| 欧美亚洲日韩人妻在线观看| 91亚洲欧美综合高清在线| 亚洲av噜噜噜噜噜噜| 大香蕉人妻| 另类视频在线| 强奸乱伦亚洲第一页| 台欧久久精品视频| 欧美精品激情| 日韩精品99999| 98福利在线视频| 久久性生大片免费观看性| 婷婷丁香成人| 99re视频这里只有精品| 亚洲天堂久久| 色妺妺AⅤ| 九九性爱网| 91黑丝操| 长长久久免费视频| 97天天摸天天爽| 99色婷婷| 亚洲日韩在线a不卡99精品 | 婷婷午夜| 成人小电影网站tex| 亚洲国产欧美中日韩成人综合视频| 日韩av电影网站| 一级A片女人高潮叫床| 嗯嗯啊啊好大好爽| 日韩啪啪啪啪啪| 久久久涩| 熟女性视频| 久久精品—区二区三区内射| 久无码| 看日韩黄片| 91亚洲不卡一区| 黄片www视频免费| 日日日啊啊啊| 成人八戒网站| 亚洲清纯综合| 深夜啪啪啪视频免费| 综合色好色| 久热伊人99re| 国产大陆天天艹| 在线中文AV| 国产吞精a级片激情电影| 欧美自拍网| 国产一区96在线| 一级乱伦网站| 欧美第二页午夜| 日韩人妻一区二区精品| 综合久久2017| 亚洲精品一卡二卡三卡福利视频网站| 另类小色呦| 欧美色图20P| 成人a级高清视频在线观看| 91丝袜视频在线观看| 日本高清电影欧美色图| 中文字幕日韩专区精品系列 | 青娱乐亚洲自拍| 激情文学小说一区二区| 人妻熟女字幕一区二区| 欧美日产国产在线成人第一区| 操淫穴亚洲五月丁香| 91GD.COM| 久久久精品91八戒| 97美日韩视频| 日日干夜夜欢| 色一射色一射| 五月天玖玖资源站| 三级日本一区二区三区| 超碰在线综合97| 亚洲最大黄网| 国产 日韩 另类 视频一区爱| 久久精品国产亚洲av水密被窝| 青娱乐 成人娱乐在线| 一级毛片久久久久久久女人18| 97久久久久久久久久| 玖色AV| 亚洲欧洲日韩国产自在线| 亚洲丝袜综合| 0755午夜福利视频| 欧美 亚洲 另类 综合| 五月天激情四射| www.91人妻.com| BBBBB97COM| AV中文字幕剧情1区2区3| 久碰视频| 日日爽夜夜爽| 国产无马av| 五月天婷婷在线看| 天天躁日日躁狠狠躁| 91青青在线视频| 欧美色图亚洲色图成人在在线| 综合欧美日本三级| 97人人操人人摸人人爱| 日韩在线一区高清在线| 国产在线视频二区| 久久透逼视频| 人人操 欧美| 理论久久婷婷网8| 东京热熟女亚洲视频网站| 东北女人av| 五月丁香啪啪网| 日日碰狠狠添天天爽超| 国产69精品久久久久99尤物| 日韩无码精品综合久久| 久久亚洲中文字幕视频| 狠狠操狠狠操操| 精品久久97观看在线视频| 亚洲AV人人澡人人爱| 天天内射| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | 性高潮久久久| 97操碰| 精品一区二区久久| 久久久国产护士丝袜美腿一| 精品无码一区二区人妻久久蜜桃| 99国产精品久久久在线播放| 久久久久国产| 夜夜国自区| 熟妇一区,二区,三区。| 嗯嗯不要视频| 日韩操p| 女欧美一区二三区| 综合国产影视三级| 亚川综合视频| 免费视频a级毛片免费视频| 精品国产精品一区二区| 五月丁香综合| 色av中文字| 有码免费观看| 伊人操操| 亚洲骚逼少妇| 极品销魂美女一区二区| 久久久久久99AV无码免费网站| 激情五月综合开心五月| 无码最新| 伊人婷婷五月天| julia高潮后不停追击中出| 五月丁香影视| 亚洲另类色图片| 婷婷15月天青娱乐| 4tube欧美女厕所| 成人小电影网站tex| 亚洲成人贴图| 国产91啪| 国产精品色色| 久久久久亚洲精品| 9美女超碰在线免费观看| 9丨久久九九九| 三级日本一区二区三区| 18禁网站在线播放| 天天弄天天操| 青青草大香蕉在线视频| 麻豆天美AV传媒第一页| 亚洲男人久久综合天堂| AV 少妇 人妻 偷拍| 第45页一区二区| 超碰9 7女人| 人妻久久一区二区三区| ji熟女.com| 久久婷色| 97精品97| 一级做受视频免费是看美女| 五月色丁香| 9精品在线| 婷婷久久久精品| 亚洲欧洲成人在线电影| 欧美亚洲日本激情在线| 久久色激情一区二区三区| 天天综合网~91综合网| 五十路熟女人妻一区二区在线观看| 国产成人自拍视频视频| 韩日精品四区| 无码精品啪啪啪一区二区三区三州| 搡老女人老91妇女老熟女| 日韩 欧美 另类 人妻| 高清无码网址| 黄站在线免费观看| 亚洲免费在线探花| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 友优传媒精品在线一区二区| 日韩在线性爱免费视频| 95精品在线| 激情情色五月天| 强奸乱伦免费网站| 欧美在线官网| 操东北女人| 九九香蕉网| 亚洲的天堂网| 乳欲人妻办公室奶水| 久久这里精品国产99丫e6| 亚洲熟女乱综合一区二区在线-...亚洲国产日韩欧美一区二区三区,久久久久久精 | 欧美后入视频| 国产主播福利| 亚洲熟妇无码一区二区三区| 欧美日韩中文视频播放| 日韩av乱伦| 国产视频大全| 中文字幕,人妻,日韩| 天美麻豆精品视频99| 揉揉揉夜夜| ?亚洲伊人伊成久久人综合网| 日韩不卡网操逼中文字幕日韩| 日本乱人伦片中文三区| 亚洲免费精品一区| 亚洲网站一区二区在线| 国模限制级电影| 97超碰9| 九九激情网| 中文字幕av一区二区三区人妻少妇| 人人操人人插人www| 91欧美成人色站| 国产一区二区三区高清视频| 久久本道| 无码人妻一区二区三区色欲aⅴ | 啊啊好多水| 亚洲日韩人妻中文字幕一区| 日本啊啊啊啊啊视频| 不卡中文字幕aⅴ在线| 精品射1999| 亚洲色欧美| 国产有码一区| 妇女性内射冈站HDWWWCOM| 福利风月五月天影院| 3PAV乱伦视频| WWW.加勒比人妻一区不卡.com| 午夜乱轮操逼视频免费看| 粉嫩少妇自慰在线| 免费簧片在线观看| 97操97干| 人人综合| 国产亲戚伦亲在线| 伊香蕉综合久久久久久久噜噜噜| ′ !γ}丶。。久久精品欧美一区二区三区| 91黄站| 欧洲射精91| 久操网视频| 九9精品| 920日本午夜免费| 精品无码秘 人妻一区二区| 97香蕉人人乳| 亚洲AV无码成人精品久久| 91精品久久久久| 亚洲综合春色| 色色香蕉| 超碰97亚洲| 天天看特黄的免费网站| 激情五月综合网| 试看日韩黄片| 日本免费一区二区不卡| 色五月婷婷麻豆在| 激情网色| 啊啊啊无码| 欧美综合制服在线| 大香交伊人网| 91在线视频观看国产| 中文字幕一区二区三区人妻不卡| av亚洲天堂资源网站| 成人免费在线网站| 乱伦一二三区| 91人妻在线视频| 中文字幕乱偷人妻久久艾草网| 丁香五月天堂网| 99视频这有这里有精品| 久久久久99精品成人片蜜臀| 国产丰满熟夫69mpp| 久久艹逼视频| 国产精品熟女九色九色蜜臀| 欧美色图电影| 久久是精品| 欧美内射少妇| 国产丝袜视频| 久久久五月天| 凹凸久久人人| 青娱乐二区免费| 天天射天天色成人| 东方亚洲在线操逼天堂| xxx亚洲午夜天堂| 五月丁香综合网| 八人操人人摸人人看| 在线免费观看高清无码视频| 无套后入双马尾| 曰韩少妇无码| 午夜精品久久久久| AV一二区| 久草久热| 女优免费一区二区永久| 日本女人操逼| www网站黄| 成在线人在线观看视频| 午夜国产成人精品视频| 爱爱啊啊啊| 97资源站日韩| 96超碰网| 综合五月天| 少妇九九九九| 九九九不卡| 日韩干B| 亚洲AV在线资源| 91AV天堂| 伊人aaa| 九九九九九九视频| 96久久久精品| 中文字幕一品色图| 曰本道人妻久久久在线不卡色视频| 日韩电影天堂视频二区三区| 99国产精品久久久在线播放| 久9久9精品| 日韩精品操少妇| 麻豆一区在线| 日日日大屁股骚女人精品| 青青伊人久久| 日本性一区| 亚欧美色图| 91欧| 中文字幕乱亚洲美女精品一区| 天天综合中文字幕 91| 亚洲精品91| 2020中文字幕在线观看| 色综合加勒比| 俄罗斯一区二区视频在线观看| 伊人黄色片| 在线中文字幕极品av| 91强奸乱轮| 性一交一乱一交A片久久四色| 色婷婷综合视频| 大香樵伊人网| 日日干日日操五月天伦理视频| 综合网欧| 国产少妇内射| 97 色综合| 手机午夜电影神马久久| 手机在线中文字幕国产| 96久久精品一二三区色欲| 天美麻花大全视频| 99999精品视频| SUV一区二区在线看| 久久一二三四五六七八九区| 97干在线视频| 国产日韩色综合| 最近2019中文字幕国语免费版| 高清无码国产亚洲| 成人老鸭窝人人在线视频| 九九九精品一区二区无码| 九九人妻| 日韩欧美福利视频看看| 少妇干B| 日韩乱码Av| 欧美91网站| 国产精品久久久亚洲第一牛牛_在线观看 | 性欧美体内射精| 91美女国产在线| 五十路熟女人妻一区二区在线观看 | 亚洲污污网站| 久久一区二区三区四区五区| 黄色激情电影在线观看| 99精品在线| 天天射夜夜| 色欧洲| 欧美亚洲尤物久久| 亚射在线| 97这里有精品| 97国产高清视频在线观看| 啊啊啊用力在线观看| 国产久久久久影院老熟女| 日韩小电影| 欧美一区二区观看在线| 口爆欧美91| 亚洲资源一区| 成人免费在线网站| 欧美日韩一干二干| 亚洲欧美电影| 九九黄色网| 色网1| 国产精品嫩草影院午夜两性| 深爱五月天| 中文字幕精品亚洲熟女| 国内精品a| 嗯嗯嗯嗯啊啊啊好紧好大| 午夜视频久久久| 国产精品 久久久精品一牛| 亚洲欧洲偷拍一区| 日本一线产区和二线产区伦理片| 综合影视国产无码| 伊人伊人LD| 国产精品高潮呻吟av久久4虎| 久久99操天天日| 人妻丰满熟妇av无码区蜜桃| 欧美另类综合久久| 999 久久久| 亚洲天天做日日做天天谢日日| 欧美人妻精品| 亚洲情色欧美| 中文字幕国产精品1区| 78操B| 激情四射五月天| 99这里只有精品| 日韩成人性爱电影在线播放| 亚洲精品97中文字幕| 91精品国产日韩欧美综合| 亚洲限制级在线| 一区二区乱码福利| 不卡超碰护士AV在线免费播放| 美女久久久久久久久久久| www.99热| 欧美日韩精品久久久久久久久东北老熟妇| 99综合视频| 91国产丝袜白虎| www久久99| 婷婷人妻激情| 五月丁香影院| 亚洲天堂精品日韩电影| 久久久9品一区二区三区| 欧美亚洲高清| 欧美人妻色| 色网在线视频观看免费| 国产吹潮女在线观看| 999国产精品999| 久久这里只精品| 九九这里只有精品| 成人羞羞视频国产| 午夜福利在线视频1000| 99久久e免费热视| 超碰 欧美| 啊啊啊啊嗯嗯嗯用力好爽 | 男女无套 免费网站| 少妇毛片久久| 欧美,日韩综合久久| 久草老司机| 伊人久久婷婷| 国产1024在线播放| 亚洲性综合| www.狠狠| 欧美五十路熟| 日本免费二区三区| 一区二区久久天天干狠狠| 国产探花日韩援交| 四季av一区二区凹凸精品小说| 狠狠狠狠狠干| 中字幕人妻一区二区三区| 亚洲一二三四区在线免费看视频| 天天日日夜夜| 老子午夜伦不卡影院| 久久久96精品| 人人澡人人爽人人精品| 久久av成人无码免费| 久久久久久久91| 狠狠色一区二区中文字幕| 久久男女激情视频网站| 大象AV在线| 亚洲怡春院| 久久9亚洲| 精品黑人一区二区| 98人妻精品一区二区色欲| 男人的天堂三级| 色狠狠综合噜一二三区| 亚洲欧美精品福利在线| 欧美传媒| 麻豆成人影音在线| 日韩大香蕉精品在线视频| 国产女人高潮视频| 亚洲蜜桃V妇女| 91人精品妻入口| 亚欧美综合网| 91老熟女91老女人| 97爱爱影院| 盗摄 精品 另类 一区| 大香网站| 亚洲精品性爱片| 欧美色涩| 人人操人人操人妻人| 日韩视频小说在线观看| 成人影 天天操 亚洲| 亚洲色久| 国产激情av女片自拍| 午夜视频黄| 亚洲综合首页| 亚洲综合在线91| 大屁股熟女一区二区三区| 91日日| 精品视频日日夜夜| 人妻熟女字幕一区二区| 99九九精品| 操逼片中文| 天天操天天干一区二区| 午夜a成v人电影| 亚洲美女av无码| 国产剧情在线| 性色aV一区二区三区噜噜| 国产97综合| 久久久久久久9最新免费视频观看| 91色图片| 欧美久久婷婷| 人妻在线大香蕉| 97视频在| 天天插夜夜爽| 97频视在线| 9久精品视频在线观看| 久久亚洲人妻| 98精品国产乱码久久久久久| 亚洲少妇激情视频| 日韩资源网| 1024午夜激情男人的天堂| 九九九九九精品十六| 天天澡天天爽日日av| 欧美夜夜骑视频| 91路www| 四虎免费视频| 9久9久| 青青五月天| 久久国产乱子伦精品免费女,网站| 精品国产乱码久久久A| 老鸭窝成人免费毛片视频| 亚洲色宗合| 性综合网| 樱花蜜乳av| h无码动漫在线观看| 亚洲欧美日韩精品久| 亚洲熟女av日韩熟女| 国产超碰| 激情自拍 校园春色| 国产欧美美女免费观看视频| 国产性感在线观看| 精品人妻一区春色| 五月天AV资源| 2019天天干| 国产三级资源在线观看| 亚乱色| 99精品热| 日韩三级网址| 欧美精品久久| 91制服丝袜| 欧美片第一页| 亚洲中文日韩欧美大香蕉视频| 日本 欧美 国产一区| 天天流夜夜操| 1二区9| 青草伊人网| 一二三区操逼国产91| 精品少妇人妻av久久免费| 久久久成人国产精品无码| 久久久久成人蜜桃精品| 久久精品国产99国产精品亚洲| 国产自产22区| 91综合网| 亚洲成人福利电影免费| 亚洲精品男人的天堂| 殴洲老熟女| 国产欧美另类久久久精品课程| 小说区 图片区色 综合区| 能在线播放的国产三级| 啊啊啊啊嗯嗯嗯用力好爽 | 亚洲高清综合网| 51久久夜色精品国产麻豆| 亚洲国产无码精品首页久久久| 天天透伊人| 欧美激情精品久久久| 97视频免费在线观看| 久久九九国产精品| 日韩在线人妻网站| 超碰 国产熟女精品一区| 超碰97欧美日韩| 亚洲欧美另类图片| 国产92麻豆天美精品色欲5| 久九九九九九九热| 亚洲欧洲日韩中文字幕一区| 久久久久亚洲AV无码专区少妇| 丁香五月av| 精品综合久久久久久97| 91精品人妻偷情| 99精品热| 久久r精品| 岛国色情视频在线观看| 国产原创精品| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 久久久无码国精品无码三区三区| 国产视频大全| 9久久久久久| 人人看黄色视频| 欧美激情中文字幕另类小说| 欧美精品双插| 操逼A∨| 人人天天欧洲| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 黄片免费久久久久久久| 中文97国产| 黄片www视频免费| 蜜桃臀av在线观看| 午夜亚洲| 色牛牛AV| 最新9久久久9免费视频| 免费福利视频中文字幕| 久久国产精品,久久国产| 亚洲色图亚洲| 日韩亚洲美女一区久久| 麻豆成人AV| 午夜免费视频1000| 日本大香蕉综合网红本杳社区| 人人妻人人狠人人| 中文字幕精品亚洲熟女| 欧美日本一区二区a人| 中亚黄色三级大片 | 亚洲婷婷丁香在线| 亚洲精品久| 亚洲情色欧美| 久久人妻四季| 翔田千里爆乳巨臀无码| 性色高清在线| 国产精品96| 国产精品大香蕉| 久久成人东京热人妻| 日本网色| 大香久久| 97网址www| 综合网天天| 婷婷久久久| 青青草影视蜜久久| 99九九久久| 蜜臀视频网站| 欧美三级免费伊人| 人人操人人操人人人操| 天堂伊人久久| blacked精品一区国产| 97久久久久久久久久| 激情AV| 久久久96| 91黑丝美女| 亚洲熟女中文字幕在线| 欧美天堂在线| 久久国产视频专区一二三| 国产日韩在线播放av| 后入式999| 欧苏综合色综合| a片偷拍视频| 久久视频,这里只有精品| 婷婷91| 日韩无码一级黄色av片| 好屌色综合| 黄片在线免费在线观看| 屁股久久久久久| 狠狠夜色午夜久久综合在线| 国产剧情AV不卡在线观看| 日本二三四区| 91丝袜激情在线| 四虎影院成年人片| 欧美Ⅴ性爱| 九一性生活免费视频| 欧美成人都市人妻| 亚洲国产成人福利在线观看| BBBBB97COM| 日日夜夜草草草| 久操婷婷| 日韩性爱1级片视频| 亚洲美女高潮喷水视频| 欧美人妻二区三区| 久久肏大逼| A级国产欧美激情在线| 国偷自 一区二区| 91久青| 人人色人人操在线| 亚洲乱色熟女一区| 丝袜综合网| 青青草久久| 久久综合久久综合人久久夜精品| 人人摸人人干人人拍97| 12一15性XXXX粉嫩国产| 欧美黑人168页欧美黑人167| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 亚洲图片另类| 中文字幕第95页| 国产亚洲欧洲在线观看| 综合五月婷婷| 国产精品呦一区二区三区| 国产精品乱码久久| 成人开心网在线视频| 九九九久久久久| 丝袜美腿欧美| 亚洲日本韩国在线| 亚洲高清无码在线桃色| 国产无马在线| 蜜臀久久99精品久久久久| 亚洲中亚日激情视频| 国产精品91ai| 中文字幕日产av人| 久久一二三四五六七八九区区区| 黄色小视频日本txt| 国产精品免费1区2区视频| 91啦人妻| 最新亚洲黄色免费电影| 亚洲高清91| 精品十八在线观看| 密臀国产在线| 校园春色家庭伦理欧美激情| 综合天天网| 亚洲综合影片| 日日天天久久啊啊aaa| 男人的天堂2019AV| 人妻久久久| 99视频内射三四| 青娱乐日韩无码| 手机看片1025| 免费看一级a性色生活片久久无| 国产91精品福利在线| 人人妻人人爽 97人人看碰人免费公开视频| 亚洲91在线| 亚洲欧美不卡线| 亚洲国产97| 精品一区二区三区麻豆| 天天伊人| 97国产精品| 天美精品原创av片国产| 久久伊人最新网址视频| 粉嫩av在线| 欧洲在线性爱视频| 88xx成人精品视频| 国产福利电影| 精品中文字幕一区二区| 性影在线视频| 性爱精品一区| 大香蕉啪啪网| 日本大片日本一区二区免费高清 | 人人看欧美性爱| 午夜福利免费福利视频| 性做久久久久久免费观看软件| 国产91久久九九免费精品无码| 国产一区二区三区影片| 色综合99| 色呦呦、国产精品| 欧美熟妇操操视频| 日韩无码久久熟女一级片| 欧美一区二区三区成人性生活| 97超碰色中文字幕| 美女t无毒不卡不卡| 美女黄站| 欧美大波激情xxxx| 欧美日韩精品一区二区三区高清| 国产激情av女片自拍| 色色婷| 亚洲综合码| 中文字幕人乱码中文字的预防方法 | 五月激情啪啪| 成人AV素股で擦久久| 99国产精品免费| 欧美激情精品久久久| 亚洲三级。日韩三级| 2024黄色视频| 91社操逼| 五月天婷婷欧美三区| 国产超碰在线一区| 91精品操美女| 亚洲影院成人| 国精精品无码一二三区水多多| 99九九久久| 国产精品色哟哟| 男人的天堂三级| 欧美影院一区二区三区| 你想操日本小逼吗| 亚洲 图片 综合91| 91久久久老司机| 人妻天堂网| 精品一区二区在线针对华人免费观看这里只有精品免费观看 | 伊人在线大香蕉视频久久| 亚洲欧美另类图片| 精品国产丝袜一区二区三区乱码 | 在线视频免费播放一区| 亚洲综合97中文网| 天天操天天7| 亚洲无线观看久久| 新版天堂中文资源8在线| 97青青操视频| 熟妇无码视频三区| 中文字幕人成乱码熟女香港| 在线不卡视频| 久久久99999久网站| 亚洲久久久久| 亚洲精品三| 成人久久精品| 神马九九| 操一区| 人妻免费观看| 日韩欧美亚欧在线视频| 九九色精品| 精彩久久中文| 久久成人国产精品| 日本有码影片下载| 婷婷人妻激情| av无码av无码专区| 国产超碰在线一区| 天天做天天爱| 五月婷婷大香蕉| 东京热大香焦| 97在线观看播放视频| 亚洲天堂性爱| 91制服丝袜中文字幕| 中文字幕亚洲在线一区| 老女人老91妇女老热女| 女性喷水高潮在线观看| 日本91白丝| 国语精品av| 自慰白浆在线观看| 久久成人午夜狠狠| 91精品女厕偷拍视频| 97人人爱人人做人人乐| 久久91| 久久黄黄| 高清无码人妻久久久一区二区三区aⅴ| 在线观看色视频| 日本男人插女人的逼黄色| 91性高朝久久久久久久久| 少妇免费视频| 欧美人体性爱互联网第一页婷婷日本| 久久色情| 黄色交缠性感爆操91国产精品免费一区二区三区 | 欧美日韩人妻精品系列一区二区三区| 亚洲av无线观看| 夜夜青青无码影院| 日人妻视频91| 国产蜜臀在线| 欧亚免费视频| 国产农村妇女毛片精品久久| 91精品国产麻豆国产自产在| 91欧美少妇| 国产激情视频在线观看| 亚洲深夜福利| 嗯啊不要啊在线 | 色噜噜人妻av中文字幕| 丁香九月激情啪| 春色91| 97色五月天完| 蜜乳中文字幕a在线| 久久一区,青青青青草视频在线播放| 欧美日韩国产成人高清| 国产精品 午夜福利| 亚洲天堂一区二区久久| 98超碰日本| 精品-91人妻子系列| 欧美性暴力猛交| 免费看美国人人爽,人人操| 欧美激情一区| 操逼内射干逼白丝91| 午夜一区二区三区国产| 日本道日本道中文字幕日本道最新日本道在线观看 | 亚洲狠狠入| 国产精品交换一区二区| 青娱乐淫乱1314| 日本蜜桃| 欧美性爱在线无码| 老熟女综合| 91中文精品日韩欧美在线 | 色婷视频| 日韩无码一级黄色av片| 国产地址二三| 久久九九网| 国产精品不卡av免费在线观看| 另类图片亚洲加勒比另类图片亚洲加勒比另类图片亚洲加勒比 | www久久国产精品| 亚洲成人色情五月天丁香花| 国产 v乱码一区二| 少妇久久久久久| 亚洲男人综合网| 天天做天天爱天天高潮| 秋霞一集毛片观看| 91激情国产| 九九玖玖精品| 91强奸乱轮| 91综合网| 97草草| 天天干天天日天天射黄色| 蜜乳AV一区| 欧美性夜| 亚洲淫色网中文| 能看的AV| 色婷婷激一区二区三区| 91色香| 久久色AV线| 2025亚洲男人天堂| 操美女高潮抽搐白浆| 伊人网免费视频| chaopen97久久| 97久久精品亚洲中六字幕| 欧美黄色大香蕉一区二区| 三级日本一区二区三区| 小电影欧美91| 天美传媒Av在线| 欧美成人9797| 8050午夜少妇无码| 成人精品久久久午夜福利| 亚春色色| 精品中文日韩字幕视频| 日本久操视频| 色色色色电影网| 国产欧美精选激情视频| 欧美色999| 嗯~啊~轻一点 视频| 午夜福利在线视频1000| renqi久久久久久久久久久久| 欧美亚洲另类在线蜜桃| 富女玩鸭子一级毛片| 78m啪啪啪| 一区二区三区在线日韩影院观看| 欧美少妇一区二区三区| 日日爽夜夜爽| 日韩av不卡在线观看| 欧美日韩国产另类综合| 啪啪视频免费在线观看| 综合亚洲欧美| 91插B网站| 激情文学 亚洲图片| 精品一久久久| 99999久久久久9国产精品| 天天做天天爱天天爽| 簧片免费看视频| 激情国产乱伦Av| 国产乱伦性爱区| 国产强奸乱伦欧美| 91丨人妻丨国产丨丝袜| 欧美性爱一区二区三区| 亚洲日韩资源| 日韩精彩视频| 2019亚洲男人天堂| 日韩 欧美 国产 麻豆| 欧美亚洲se91| 天美传媒AV国产在线| 久草新免费| 夜夜騷av、一區二區| 真实高潮91| 嗯嗯啊啊操死我| 大香蕉伊利av| 艳美熟妇先锋一二三区| 亚洲天堂中文字幕无码男同| 99综合免费视频| 97色在线| 天天日天天舔天天喷天天射| 任你草| 色欧美天天| 天美av在线观看| 亚洲丝袜在线观看| 好吊色一区| 91伊人大香蕉| 一区二区三区四区久久视1| 台湾大香蕉99热| 蜜臀久久99精品| 国产熟女精品区| 9精品久久| 伊人96在线| 天天综合~91| 天堂性色| 操逼操逼操| 色欲久久久久综合网| 色色色日本| 岛国黄| 91强奸乱轮| 狠狠综合| 偷拍欧美激情| 亚州久久9| julia ann久久| 色色97爱| 国产精品久久久吖| 国产av强奸美女| 久久精品亚洲成a人天堂| 一级免费啪啪片| 久久欧美按摩999| 久久久婷| 另类欧美| 一本久道久久综合狠狠爱一密臀精| 啊啊啊啊啊在线| 欧美伊人久久综合网| 人妻日日干| 人妻少妇精品一区二区三区| 桃色六月天| 941超碰| 精品在线蜜臀| 天天操人人操狠狠插| 偷看洗澡一二三区美女| 日本久操视频| 久久久专区| 欧美丝袜中文字幕07在线| 一级性爱视频免费观看 | 九九亚洲| 熟女五十路一区二区三| 色五月首页| 青青草色情网站视频| 日本ZZ高免费A级视频| 五月丁香黄色网| 人人干人人搞人人摸| 91女网站|