色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合av,久久激情五月丁香伊人

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
返回資訊列表
性欧美体内射精| www.97在线| 秋霞福利网| 久久久久久久97| 99热这里是精品| 性色aV一区二区三区噜噜| 欧美在线干| 欧美色图色综合| 亚洲熟妇图片| 天天干夜夜一操| 日本高清一本二本免费不卡| 日韩无码精品综合久久| 国产精品大香蕉| 亚洲丝袜少妇在线| 天天日天天屌天天操| 中文字幕aⅴ在线视频| 天天影视综合色| 大香蕉乱伦视频网| 人人看人人爰人人操| 欧美肥臀在线| 少妇内射视频| 久久大陆| 韩国三级理论在线| 精品人妻一区春色| 九九九九热| 麻豆区久久久久亚| 九九九综合精品| 加勒比在线观看一区二区| 久久精品男人的天堂| 99久久无色码| 欧亚在线视频| www.久久久久| 久久九九网| 日韩乱中文 | 精品九九国产无码| av爱爱爱| 亚洲欧洲综合成人av一区| rion磁力链接| 人人妻人人爽人人精品| 久操免费电影| 亚洲人综合19| 亚洲一区日韩精品中文字幕| 伊人91| 98久久超碰| 欧美性高潮| 久久9久久| a啊啊啊啊啊啊啊啊一区二区| 国产精品色哟哟| 色欲人妻一区二区在线| 精品网站99999| 天天色怡春院| 亚洲第一视频 欧美风情 日韩| 久久9精品网站| 亚洲综合网91| 亚洲激情天堂网| 日本一二区不卡| 情侣操 逼视频99| 青操影院| 亚洲国产精品久久久久婷婷青年| 男男H黄动漫啪啪无遮挡网站| 黄片com.| 久久超碰免费的| 人妻天堂网| 欧美内射少妇| 午夜传煤十二区精品| 久久精品一区二区三区四区五区| 日韩免费三级黄片电影| 婷婷丁香六月| 人妻激情在线视频| 日韩AV无码网站| 97 亚洲 日韩 欧美 在线| 蜜奶av| 日本国产二线女色| 女人 A一级| 玖玖综合.com| BBBBB97COM| 国产精品成人福利在线| 中文字幕乱码人妻一区二区三区,99精品| 无码欧美有限公司| 无码粉嫩白虎一线天b区| 久久久精品网站| a男人的天堂久久一级A毛片| 亚洲综合五月天| 精品人妻一区二区三区蜜桃视频| 天天色天天干天天爱| 久久久噜噜噜久久久| 女人的天堂大香蕉网| 开心五月婷婷| 久久久性少妇| 黄色视频特级毛片| 五月天激情网站| 久久精品99| 蜜桃AV天堂| a v网站在线播放| 锕锕好爽 死我在线观看| 国产精品色色| 久久精品性| 国产亚洲精品激情| 色色色欧美| 伊人伊人LD| 黄色av一区二区在线| 骚货 中文字幕 av| 成人老鸭窝人人在线视频| 日韩中文字幕国产| 欧亚日本情色| 久久香蕉超碰97国产精品 | 色五月综合网| www亚洲免费| 蜜汁欧美| 日本孕妇孕交| 亚洲中文字幕乱码无码一区二区 | 久久久精品网站| 大乔未久88一区| 丁香五月激情综合| 在线强奷到舒服的无码视频| 韩国免费播放一级毛片| 超碰欧美97资源| 三级三久久线久久99久目本WW| 99国产精品| 亚洲激情欧美色图| 色香综合天天影视综合 | 欧美日韩系列| 98超碰日本| 伊人国产视频| 欧美亚男人的天堂| 久久亚洲熟妇在线视频| 五月天婷婷小说| 亚州免费啪啪视频| 亚洲av综合色区无码一| 精品久久久久久中文字幕三区 | 欧美v亚洲v日韩v最新在线二区| 98人妻精品一区二区色欲| 蜜桃臀av一区二区| 精品传媒在线一区| 91操熟女| 日韩在线欧美精品一区二区| 国产精品露脸在线观看| 亚洲精品乱码线路中文字幕| 欧美的性爱网站免费| 国内毛片热久久思思热| 久久透逼视频| 囯产乱伦一区二区三女 | 国产强奸乱伦无码视频| 97无码视频在线播放| 亚洲无线观看久久| 91成人高清在线观看| 免费的黄片有限公司| 成人一道本免费视频| 无遮挡一级毛片视频免费的| 亚洲无码免费看| 自拍鲍鱼一区在线高清观看免费| 3571色综合一区二区二区| 日本三级久| 日本九九久久99播| 久伊人网78| 91性感在线| 国产精品一区二区a| 大香蕉一区二区在线观看.| 秋霞成人一级在线观看| 亚洲中文字幕网| 成人影 天天操 亚洲| 伊人aaa| 夜夜黄| 婷婷av在线中文字幕| 国产精品免费日韩| 日韩成人色图| 亚洲欧美国产精品久久久久久久| 亚洲人妻中文在线视频| 中文一区二区三区影院| 亚洲精品尤物yw在线影院| 久伊人网78| 岛国不卡超碰护士AV在线播放| 精品91摸| 青草精品视频日本久久久久网站在线| 精品射1999| 人人妻人人狠人人| 91久久免费视频互動交流| 淫穴高潮色图| 亚欧美综合| 黑丝少妇| ,成人免费啪啪视频| 精品久久99| 色婷婷久久| 久草精品视频| 九九九九九九视频免费| 久久婷婷成人综合色怡春院| 亚州色图欧美| 99青草| 96精品久久| 91在线美女| 日韩黄色片子| 国产高清在线自在拍69| 精品久久久久久亚洲| 亚洲欧洲综合视频在线| 免费岛国一级片| 74成人在线| 综合久久久久久久久91| 国产精品一区av在线| 久久国产视频专区一二三| 国产一级高清免费观看| 欧美18禁91| 亚洲精品一区二区精品| 97精品97久久| 麻豆久久视频在线地址| 国产人妖的免费的视频| 好爽要喷了| 色五月首页| 中文字幕丝袜| 天天综合网1| 人人 操人人 操人人| 精品一区二区三区四区外站| 99日精品欧美国产| 乱伦熟女论坛| 性高潮久久久久久久久久久| 久久秀这里有精品| 美国日韩黄色片| 夜夜夜爽www精品视频| 人妻在线中出视频| 久久久久久AV无码免费网站| 夜夜精品视频| 香港久久久| 久久超碰、| 天天综合精品| 精品一区二区人妖| 不卡av在线中文字幕| 亚洲 欧美 日韩另类 麻豆| 97综合在线观看| 六月色色| 久久婷婷影院| 92人人操人人| 国产熟女乱论| 999久久久精品国产| 人妻少妇精品久久久久久久| 深夜激情| 亚洲 欧美 日本 国内 首页| 亚洲天堂区| 91一起操| AV九九| 日韩丝袜二区| 国产精品老师| 色丁香久久| 日本韩欧美在线播放a| 亚洲欧洲精品视频发布| 丝袜熟女一区二区三区| 国产一区二区在线电影| 日操粉逼逼| 免费无码国产精品v片在线观看| 人人妻人人澡人人爽久久av| 无人区高清电影免费观看一区二区三 www.qmcai2.com | 亚洲情色视频| 色波多| 国产午夜精品理论片一二三区区| 26uuu最新| 亚洲成人激情小说视频| 国内毛片热久久思思热| 色欲av一区二区三区蜜芽| 亚洲欧美国产va在线播放频| 国产久久免费精品视频| 久久黄色性爱视频| 超碰在线99| 国产在线76页| 久热色情精品| 欧美日韩国内不卡| 多乙久久久久久| 国产日本顶级一区二区三区| 久久性爱网站| www.色婷婷色综合| 熟妇色99| 欧美午夜色妇色鬼| 欧美丰满少妇xx高潮| 精品人妻无码一区二区三区不卡-精品人妻无码一区二区...|精品少妇一区二区三 | 久久精品老司| 黄片qw| 天天色怡春院| 久久性爱城| 国产精品视频内谢女人| 91丝袜激情在线| 欧美精品1区2区3区| 亚洲图片第一页| 极品内射| 伊人AAA| 国产品精品自在在线午夜免费| 女色视频社区| 日本操逼视频不卡直接放| 试看福利| 91neishe| 亚欧韩av| 日韩无码黄色片| 天天插网| avav青青草久久夜| 久久中文色图| 天天日天天射天天干| 久艹日日日| 国产精品久久成人免费| 伊人五月天| 韩国女主播青草在线| 亚洲日韩电影| 91精品女厕偷拍视频| 欧美成人性爱视频免费观看 | 奇米狠999| · —级AA伦aa坐爱午夜极速ⅴA一区天天噪天天噪天天噪 | 黄色大片一区二区密桃丝袜| 欧美夜夜狠| 天美精品原创av片国产| 96久久精品一二三区色欲| 欧美日本成人一区二区| 粉嫩久久久极品| 丰满人妻一区二区三区四| K8久久久久| 久久啊啊啊视频| 乱精品一区字幕二区| 情趣丝袜无码操逼视频| 污色区网站| 国产精品午夜精品| 色网综合网| 麻豆精品久久久久久久| 激情久久久| 国产男女边吃边摸视频网站| dy888午夜老子影视达达兔| 欧美九一精品久久久熟妇| 91伊人大香蕉| 天天综合香 ld视频| 97色伦欧美| 免费一级视频特黄色大片| 色操逼网| 国产精品呦一区二区三区| 翔田千里A片一区二区| 96国产精品| 国产亚洲精品一区二区三区| 香蕉久久AⅤ...| 污啪啪啪视频| 久久精品无码一区二区三区| 长久操视频| 96国产精品| suv精产一二三区| 午夜爽爽爽在线观看永久入口姬片| 91高清欧美| 97欧美视频| 欧美日韩国产另类综合| 噜噜噜噜天天狠狠| 蜜乳av一区二区三区| 亚洲男人的天堂AV| 东北女人的毛片| 性爱Av免费| 中文字幕aⅴ在线视频| 日本一级婬片试看三分钟| 成·人免费午夜在线观看| 91综合网在线| 色悠久| 热99这里有精品综合久久 | 亚洲,欧美,综合网| 久久精品免费| 人人人人插| 91精品国产一区三一| .精品人妻一区二区三| 欧美综合骚| 亚洲欧美97√| 狠狠久久亚洲欧美专区| 天美传媒精品久久视频| 精品久久久久久中文字幕三区 | 国产高清1234区| 日韩成人精品| 色拍偷亚洲| 日韩色香| 日本操逼无码| …亚洲黄色厕厕女女在线播…| AV和黑人在线播放| 国产做?爰片久久毛片?片美国| 蜜乳AV色欲AVAV无码| 99re这里只有精品9| 午夜福利一区二区三区四区五区色婷婷| 极品五月天噜噜| 国产尹人在线视频免费| 久久久久亚洲av综合波多野制衣| 九九九不卡| 天天肏夜夜肏| 欧美强奸一区二区诱惑| 黄色区免费观看中文字幕| 97综合久久| 91色综合色| 男人天堂久久日韩| 人夜夜精品网站香蕉嫩草| 91九色在线| 美女国产一区二区久久| 日韩一级片在线看| 日韩性爱免费视频在线网站| 国产精品久久久久中文字幕| 少妇无码av专区线| 91在线超高颜值国产| 香伊人在线| 婷婷五月天激情网| 最新国产亚洲精品精品国产亚洲综合| 久久久久人妻二区精品叶可怜| 激情 欧美 亚洲 小说| 91福利网在线观看| 亚洲精品毛片在线观看| 嫩草影院在线观看精品| 综合久久六月久久婷婷| 亚洲黄网在哪免费看| 亚洲精品无码成人久久久99| 极品极品色影院| 色色国产| 日本青青草在线| 熟女欧美日韩综合婷婷| 亚洲自拍欧美国产首页网曝| 97超色| 亚洲精品人伦一区二区| 91爱| 精品久久久久久无码| 国产午夜福利电影免费在线观看| 波多野结衣一级视频| 国产Aα| 在线看免费无码AV天堂的| 怡红院一区二区熟女人妻| 97久久超碰| 青青草原人妻| 国产欧美日韩女同性恋ww喷水精品| 夫妻AV网站| 美女午夜福利免费视频| 久久永久无码人妻视频| 精品无人区麻豆乱码久久久| 国产情侣自拍在线播放| 日韩欧美操逼xxx| 久久高清欧美国产| 激情第四色| m欧洲一级午老| 久久精品操| 草草草视频在线免费看| 亚洲欧美在线综合| 免费国产视频| 国产精品宅男免费| 亚洲欧美伦综合| 青青草在线视频播放器| 亚洲天堂男人的天堂| 久久精品一区| 亚洲一区二区三区欧美日韩| 人妻人人澡人人爽人人| AV一二区| 激情小说在线视频| 亚洲另类久操网| 欧美18 在线观看| 国产网红精品| 无码操逼视频一下| 成人性爱AV在线免费观看| 99re99在线视频| 久久久久久久久久久久久久久性生活视频 | 97欧美性爱| 97色色视频| 国产日韩中文字幕欧美| 色天欧美| 欧美亚州手机在线| 超碰99热中文字幕| 国产超碰在线一区| 黄页网站成人免费| 久久性爱网站| 91殴美大片| 日韩黄片视频试看| 美女的肌被草喷水视频| 欧美日韩精品青青| 亚洲成人福利电影免费| 夜夜高潮夜夜爽| 白丝AV| 六月天婷婷| 91劲爆| 淫荡熟女乱伦网| 色老汉色| 天天插天天操| 亚州色阁| 国产免a费看黄片在线| 亚洲综合99999| 五月丁香激情四射| 美女露胸露尿口| 国产捆绑一区| 奸色色 男人天堂 天天射| 国产成人五月天丁香花| 久久欲| 素人美腿视频网站| 久久超碰网| 天天干天天拍| 91在线免费精品视频| 97色色网| 成人一道本免费视频| 殴美日韩m| 日本熟女不卡视频| 青青欧洲黑| 又粗又长又爽在线观看| 五毛骚逼极品美女怕怕| 色综合婷婷| 久99在线免费观看视频| 天天色悠悠激情| …亚洲黄色厕厕女女在线播…| 亚洲,欧美,春色,另类| 国产精品美女视频诱惑| 大香蕉综合| 国产黄片精品在线| 91丨精品丨国产丨丝袜| 日韩黄色一区二区三区| 一起草视频在线| 性欧美另类高清| 丰满人妻一区二区三区性色| 国产成人精品午夜福利| 久热免费视频| 伦激情人妻另类人妻| 少妇三P| 欧美做爰无码A片视频| 青青草综合在线| 欧美一区二区传媒| 蜜桃av综合网发布| 操东北女人| 成人久久久精品| 99久久9| 日本高清免费一本视频在线观看| 屁股久久久久久久久| 亚洲欧洲日韩国产自在线| 精品少妇99| 少妇同性| 日本天天操| 岛国网址国产 | 黄色高清久久无码依人| 日韩人妻免费精品| 色波多| 自拍啪啪视频| 国产性刺激| 强奸xx国产| 九九九精品| 精品9999| 欧美伦乱爱| 激情五月婷婷综合| 屁屁影院一区二区三区国产| 亚洲 欧美 日韩 国产一区二区 | 操逼天美3区| 啊啊啊啊无码| 久久精品视频一区三区小泽玛利亚| 97九色人妻| 无码WWW免费视频网站| 九九九久久久| 国产欧美日产一区二区三区 - 国产欧美日 | 2025亚洲男人天堂| 国产精品亚洲免费| 家庭乱伦性爱av| 中文字幕三四区| 97国产|免费| 人人爽夜夜玩视频| 日日黄色三级网站| 亚洲综合有玛| 伊人97色天使| 先锋精品av色鲁| 一区二区三区视频在线观看免费| 精品国产91内射久久| 校园春色亚洲| 亚洲黑人在线| 少妇淫妇久久久久久久| 综合五月天| 97激情97激情| 啊啊啊啊啊啊啊好爽不要| 久久的网站啊啊啊啊啊| 日韩三级一区 | 欧插网站| 日本三级A片网站com| 97色亚洲| 日本成熟少妇A∨网站| 青草精品视频日本久久久久网站在线| 欧美激情区| 日韩人妻无码不卡网站| 97在线视频免费看| 丝袜美腿av女优在线| 久久大香蕉97| 日操粉逼逼| 乱伦AVxx| 国产AV久久野战精品| 日本色色色色色视频| 秋霞无码av鲁丝片一区| 人摸人人操人| 日本三级大片| 天天精品| 91久久久久免| 青青草伊人久久| 欧美五区| 97草草| 一区二区视频在看| 啊啊啊啊好多水| 欧美成人精品一区| 亚洲色图欧美一区二区不卡| 中文字幕第2页| 日1区2区3区2020| 久久久久久人体| 欧综合网| 国产成人精品必看| 爱我干综合| 欧美一级三级| 夜草欧美| 99少妇内射| 国产操逼网站亚洲一级黄色| 成人乱人伦一区二区| 国产女性无套 免费观看| 91站街按摩店老熟女熟女| 黄色大片一区二区密桃丝袜| 熟女天天干| 99久久久| 国产隔壁老王影院在线| 国产成人无码高清| 人人摸人人干| 青青久草| 日韩在线地址一| 日本福利二区视频| 91久久堂| 四虎精品一区二区| 国产真实野战在线视频| 久久,精品一二三| 国产情色第一第二页在线观看| 中国韩国明星一极片一区乱码毛片人妻熟女一区二区三区 | 本道在线| 亚洲男人天堂网| 亚洲色图亚洲无码强奸乱伦| 欧美久久婷| 久久久久久九九九九九九| 人人爱人人乐人人操| 丝袜剧情| 屌妞视频久久久久久久| 欧美日韩色| 内射小黄片| 久久人妻办公室视频| 国产高清在线自在拍69| 97精品国产| 国模少妇一区二区三区| 欧美色图下一页| 91岛国动作片| 99久久精品国产高潮| 日本午夜福利视频| 国产传媒av天美传媒在线| 欧美日韩中文亚洲v在线综合| 天堂资源欧美| 91综合在线| 成人看片网站| 成年人免费观看网站| 亚洲精品尤物yw在线影院| 欧美九九爱| 久热99| 风骚少妇视频中文字幕| 熟女熟妇一区二区三区视频| 亚洲精品成人| 久久久久少妇| 天天澡天天爽日日av| 天天躁日日躁xxxxx| 精人妻无码一区二区三区伊人直播 | 国产精品久久久久久高清无码免费看 | 免费操逼视频下载| www国产无码| 啊啊啊好舒服好爽啊啊啊视频| 日韩免费中文字幕视频| 亚洲有薄码区久久在线一区| 99青草| 日本激情免费大片| 天天谢天天干| 久9久精品视频| 国产大学生高潮在线播放| 国内一区二区免费| 91精片| 少妇的嫩逼图片| 9久热| 热思思免费视频| 精品女同一区| 伊人在线大香蕉视频久久| 日本不卡码黄色| 狠狠欧美| 久久综合18p| 秋霞一级视频在线观看免费| a片在线播放| 啪啪自拍九九综合| 78m啪啪啪| 超碰人妻97| 久久精品无码熟妇一区二区三区视频导航| 江都AV在线| 青青草操逼逼视频| 禁止观看美女黄| 性色一线| 国产怡红院| 一道本东京热加勒比一区二区三区| 成人 日韩欧美一区| 欧美一级特黄淫片在线观看| 亚洲第一黄色av网站| 欧亚性爱啪啪| 丁香九月激情啪| 激情九月婷婷| 久热超碰| 精吧天堂| 日韩无限资源| 不卡中文字幕aⅴ在线| 免费?级毛片无码?∨蜜芽试看| 久久久96| 强奸乱伦动态污图免费 | 久热久| 欧美92| 久久久99免费| 婷婷五月花| 婷婷三区| 亚洲男人天堂视频| 亚洲中文字幕在现观看| 不卡av在线中文字幕| 在线v中文字幕一区二区三区| 凹凸视频特色日本特黄| 人妻黑丝袜电影| 亚洲欧洲无码bt精品合集| 成人精品久久久午夜福利| 少妇3P性爱自拍| 青青草日本无码| 亚洲人综合| 人人操人人爽人人操人人| 91啪啪视频| 夜夜人妻爽| 中文字幕丰满人妻日本| 国产av高清版| 国产精品久久蜜乳av| 狠狠中文字幕| 大香蕉一人在线| 97干在线| 东京成人一区| 三级色综合| 动漫区日韩区欧美区| 久久久新亚洲AV| 亚洲欧美精品一区天堂久久| 美女久久久久久久久久久| 殴美在线AⅤ| 白丝1区2区3区| 2018天天日天天日| 一区二区三区日韩欧美 | 精品黑人一区二区| 97丝袜亚洲在线播放| 国产男女无套视频免费观看| 亚洲性少妇| 久久‘黄片视频| 亚洲视频二区| 在线观看精品国产免费| 男人的午夜天堂| 日本天天人人狠狠在线日美女 | 国产精品麻豆免费视频| 强上我不卡卡| 乱伦图一区| 日日骚网站| 爱射综合| 亚洲色狠| 天天摸,夜夜摸| 在线视频 亚洲精品| 日本中文字幕高跟| 无码直播久久久| 蜜臀久久99精品久久久久电影| 91碰碰| 一起草三级AV电影在线观看 | 91殴美大片| 女人双腿搬开让男人桶| 欧美亚洲中文字幕| 97人亚洲综合字幕| 亚洲欧洲视频小说在线观看| 日韩精品在线观看网站| 国产成人亚洲精品无码最新在线| 一级黄碟在线看| 日本三级日本三级99| 制度丝袜99| 亚洲A曰本VA欧美VA视频| 夜色综合| 天天躁日日躁狠狠狠躁| 欲香欲色天天天综合和网| 99re6久热只有精品6在线直播| 中文字幕亚韩| 午夜福利精品| 国产日产精品久久快鸭的功能介绍| 久久粉色| 午夜.DJ高清在线观看免费7| 亚洲日韩狠狠撸视频| 久久久久久久综合,国产| 中文字幕日韩精品一区二区三区| 欧美熟妇视频| 久悠悠av| 97超碰美国| 色女99一级片在线观看| 美日韩一卡二卡三卡免费人妻精品| 99在线精品观看99| 26uuu欧美| 色爱三区| 欧美激情综合色综合啪啪五月| 激情综合色| 女人天堂AV五区在线| 国产欧美伊人| 久久人人爽爽爽人久久久| 东北女人操比视频| 精品一区99999| 日韩97超碰中文字幕| 亚洲AV无码天美传媒一区| 97超久碰| 97亚洲中文| A级国产欧美激情在线| 久久久久久电影| 蜜桃av综合网发布| 91老熟女逼| 97国产精选| 久久线上视频免费看| 亚洲欧洲日本精品中文a∨| 成年女人黄网站| 99久久这里只有精品| 九一综合网| 天堂综合网| 亚洲黄网在哪免费看| 国产精品 午夜福利| 欧美第五页| 亚洲**2021在线观看| 91超级碰碰| 日韩无码服务区| 思思视频免费看网站| 91欧美高清| 99精品九九九九九九| 尤物一级在线免费观看| 久久发布国产伦子伦精品| 久九9精品| 亚洲97久久精品亚洲| 日韩图区| 福利视频一区二区微拍| 欧美日韩理论一区| 日韩欧洲操屄视频| 蜜臀AV成人精品蜜臀| 成全动漫视频观看免费下载| 天堂av2019| 日日噜噜夜夜久久亚洲一区二区 | 920日本午夜免费| 精品国产乱码久久久久久蜜臀| 日本一本道A级黄色毛片试看60分钟| 国模不卡一本二本三电影| 免费视频在线一区二区不卡| 女人妻一区| 五十路熟女,国产欧美精品区一区二区三区| 翔田千里无码一区| 男人天堂日日夜夜| 色哟哟511老熟女| 吊色| 后X久久| 久久黄色视频一区二区三区| 啊啊啊操死我了| 成片免费观看视频大全| 台湾一区国产高清在线| 精品乱码在线观看| 97精品国产97久久久久久| 久久人| 东北女人被操| 久久婷婷亚洲| 久久夜夜| 东北操逼| 99国产精品久久久久久久成人热| 天天做日日做天天欢。| 亚洲色图欧美激情| 粉嫩小泬久久久一区二区| 大香蕉宗合网在线| 人摸人人操人| 综合伊人激情| 亚州综合色| 视频二区熟女人妻| 男人的天堂2010| 在线中文字幕极品av| 人妻丰满熟妇一区二区三| 97久久久网站| 午夜久久久| 东北女人的毛片| 亚洲免费精品一区| 97色婷婷| 裸体美女免费看网站青草| 国产精品视频一区二区三区八戒| 黄片免费视频2019| 2017天天插| 淫穴高潮色图| 日日妻色网| 亚洲激情天堂网| 亚洲天堂第一页| 樱花草社区www中国| xxx亚洲午夜天堂| 女优视频第10页| 国产精品老熟女一区二区| 日日干日日| 国产欧美日韩在线观看麻豆传媒公司| 六十路日本| 亚洲无套久久嗯嗯| 一区二区三区四区五区高清无码永久视频| 色嘟嘟人妻天堂网| 丝袜内射| 久9爱经典视频| 亚洲风情综合网| 亚洲在线a| 欧美一级美片在线观看免费| 自拍大香蕉乱插| 一级A啪啪啪啪| 久jiu久神马影院| 亚洲天堂人人妻| 啊啊啊啊嗯嗯在线久久久| 久操电影网| 高清无码在线播放网站| 大色综合网| 台湾佬激情综合| 伊人991| 欧美AAAA黄片| 无码国产精品久久久久| 天天操夜夜操| 九九九九免费高| 日产精品久久久一区二区| 欧美性爱一区二区| 国语av狠狠色丁香婷婷综合激情| 东北丰满熟女国产一区| 天天爱天天操| 加勒比久久av| 久久无码成人| 欧美色图亚洲色图成人在在线| 日本蜜桃| 精品人体无圣光凹凸| 激情自拍 校园春色| 一卡二卡三卡| 亚洲二区精品在线观看| 黑人与人妻| 欧美天天综合网| 狠狠中文字幕| 校园春色美腿丝袜| 色色五月婷| 日韩丨制服丨中文|在线| 免费看黄片现成| 成人精品电影| 日欧操屄| 鸥美插入视频| 在线观看岛国有码| 97欧美色| 色五月激情网| 俞拍久久国应视频| juliaann精品熟女一区| 日本一二区不卡| 美日韩一卡二卡三卡免费人妻精品| 国产精品视频在线观看| 激情一区二区三区在线观看| 亚洲中文sv| 日本淫色网| 男女激烈网站最新| 日本 情色 1区2区3区| 婷婷五月天成人网| 色五月AV| 亚洲高潮少妇| 十八禁的黄污污免费网站| 日韩情色视频| 高清国产成人无码| 亚洲精品国产熟女久久久| 无码抄逼网| 免费观看一区| 久久久久9999精品九九九| 色色99| 国产偷人伦激情在线观看| 欧美亚洲厕所精品偷拍91| 人妻精品视频一区二区| 亚洲伊人久久综合97| 我想要啊 啊 啊| 欧美三级一级| 偷看洗澡一二三区美女| 99久久精品无码一区二区毛片免费| 夜色97| 美女毛片999| 精品国产少妇高潮视频| 操逼逼福利视频| 中文AV制服乱伦| 国产精品一区二区a| 超碰在线第一页| 亚洲aw毛茸茸在线| 日本99视频| 青娱乐久久艹| 亚洲欧美中文日韩视频中国语 | 欧美国产日韩清纯唯美| 天天躁日日躁XXXXYY| 国产一级黄色片在线观看| JIZZJIZZ亚洲女人被躁| 超碰地址久久| 97亚洲综合影院| 亚洲精品国产精品成人| 人人人干干人人干| 丰满人妻aA一区二区三区| 亚洲丝袜诱惑| 久久免费99精品久久久久久| 天美传媒精品一区二区| 日本乱人伦片中文三区| 成人自拍三级在线观看| 91人妻人人澡人人爽人人精品| 中文AV制服乱伦| 亚洲国产成人精品999| 午夜激情成人在线观看| 国产真实野战在线视频| 久久女婷| 亚洲欧美天堂在线| 超碰在线1234区| 亚洲天堂电影网99999| 久久性爱视频免费看| 自怕偷自怕亚洲精品| 韩国黄片aaaa| 97香焦色区| 日韩欧美丝袜诱惑| 黄页| 亚洲好看强奸乱伦| 色性综合| 99热这里都是精品| 摸奶性爱视频网站在线免费播放| 日韩欧美亚洲一区二区三区影院| 97人人草| 2020天天色综合| 欧洲久久一二线| 无码聚合| 97视频900| 青娱乐福利99| 人妻天堂综合网| 亚洲资源网| 久久久久亚洲三级电影| 中字乱伦AV| 亚州精品人妻一二三区| 国产成人精品无码久久| 天天摸夜夜摸| 在线人成亚洲视频免费观看| 九九热在线视频| 98久久| 成人看片网站| 久久精品人妻一区二区三区| 国产综合在线视频网站| 成人老鸭窝人人在线视频| 欧美91精品国产自产| 亚洲第一成人影院色播| 青青草久草AV| 中文字幕三四五区| 久久色人体| 男人女人18禁片免费看网站| 婷婷五月天基地| 中文字幕欧美丝袜07资源| 99色热| 欧美v日韩v亚洲v最新在线| 白嫩国模丰满一二三区| 伊人久大| 97 亚洲 日韩 欧美 在线| 激情五月天中文字幕色| 97看操| 爽 好舒服 无码刺激久久| 91bbbbbb| 四季AV一区二区凹凸精品小说| 国产精品久久久久久久久久梁医生| 狠狠亚洲| 夜夜爽33333| 亚洲欧洲精品视频发布| 97日韩超碰超碰中文字幕| oumeisetu综合| 去干网最新版| 婷婷五月天社区| 美国精品国产精品| 97操97干| 欧美一级美片在线观看免费| 午夜呻吟欧美| 大屁股人妻女教师撅着屁股| 一起草日韩| 美女让帅哥通她小鸡鸡| 99热99色| 九九视频黄色片| 亚洲精品国产拍免费91在线| 一区麻豆 高清中文字幕| 亚洲国产成人福利在线观看| 伊人九九九| 精品乱码久久久久| 久热免费视频| 91午夜无码| 欧美男人天堂| 亚洲日本大香蕉1| 日韩 欧美 校园一区| 欧美一区二区三区四区综合| 99超碰碰| 91欧美丝袜| 欧美 综合| 综合影院亚洲| 日本性爱网址| AV一区观看| 另类图片天天影视| 乱操9999| AV老汉| 欧美一级三级| 欧亚免费视频| 欧美日韩亚洲一区二区在线观看| 男人的天堂2018| 嗯嗯啊啊日韩精品| 日韩激情视频| 国产超碰国产97| 九九人人操| 思思热久久成人| 日韩欧美性吧婷婷乱伦大香蕉| 综合亚州欧美| 嫩草 我啊~嗯~在线| 久久天天躁日日躁狠狠躁 | 久久久久久中文| 天堂亚洲精品久久老牛| 天天天肏屄欧美| 91色综| 天天日天天干天天整| 欧美性爱免费短视频| 大香蕉欧美| 97超碰欧美中文字幕| 性色av一区二区| 99操| 日本一片一区| 吉田爱美AV在线| 天天日日日射| 屌逼传媒| 欧美国产日韩清纯唯美| 69精品人人人人| 91九色首页| 色99视频| 99热在线观看| 欧美成人一区二区三区在线播放| 午夜福利精品| av无码精品久久久久| 91春色| 日本视频在线中文字幕| 日本视频在线中文字幕| 啪啪啪综合网| 免费A片三p视频| 91色综合| 人人干人人操人人爱| 久久永久无码人妻视频| 亚洲欧洲成人在线电影| 69XX一中文字幕人妻91| 亚洲精品久久久久毛片A片拉屎| 日韩三级伊人| 日韩黄片影院| 丁香六月激情| 亚洲图片欧洲图片aⅴ| 日韩性爱1级片视频| 国内毛片热久久思思热| 久久产精品一区二区三区电影| 一级乱伦网站| ,成人免费啪啪视频| 思思热在线cao| 青青操轻轻| 免费人成?大片在线播放| www色色色com| 天无日色综合| 一区 欧美 日韩 麻豆| ai欧美亚洲小说| 制服丝袜第二页| 漂亮人妻被强中文字幕hd| 亚洲天天操| 熟女乱伦A| 无遮挡h肉动漫在线观看| 在线国产一区二区av| 欧美成人性爱视频大全| hd成人一区二区在线| 熟妇的味道HD中文字幕| av在线一区二区三区| www网站黄| 日产狠狠干| 天天摸夜夜摸| 欧美国产有色电影| 97在线观看免费| 成人五月天色网| 国产偷仑| 国产九区| 超碰在线日韩一区| 亚洲丝袜综合| 国产女人和拘做爰视频 | 婷婷丁香五月天综合东京热| 免费福利视频中文字幕| 秋霞免费AV|