久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

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

嵌入式Linux設(shè)備樹DTS語法詳解與實戰(zhàn)配置指南

嵌入式Linux設(shè)備樹DTS語法詳解與實戰(zhàn)配置指南 1. 項目概述從“硬編碼”到“軟描述”的進(jìn)化如果你是從單片機(jī)或者裸機(jī)開發(fā)轉(zhuǎn)向嵌入式Linux的那么第一次接觸“設(shè)備樹”這個概念時大概率會感到困惑。在傳統(tǒng)的單片機(jī)開發(fā)中我們習(xí)慣于在代碼里直接寫死硬件信息比如UART1的基地址是0x40013800使用USART1_IRQn這個中斷號連接的GPIO是PA9和PA10。這種方式簡單直接但問題也很明顯——代碼和具體的硬件板卡高度耦合。換一塊不同外設(shè)布局的核心板你就得去代碼里到處找這些“魔數(shù)”Magic Number并修改稍有不慎就會出錯維護(hù)起來簡直是噩夢。設(shè)備樹Device Tree的出現(xiàn)就是為了解決這個“硬編碼”的頑疾。它的核心思想是“描述”而非“編碼”。我們可以把設(shè)備樹理解為一個硬件資源的“配置文件”或“描述文件”它用一種結(jié)構(gòu)化的文本語言DTS將CPU、內(nèi)存、總線、外設(shè)控制器、GPIO、中斷等硬件拓?fù)浜蛯傩郧逦?、?dú)立地描述出來。然后在系統(tǒng)啟動的早期由Bootloader將這個文本文件編譯成的二進(jìn)制文件DTB傳遞給Linux內(nèi)核。內(nèi)核解析這個DTB動態(tài)地根據(jù)其中的描述去探測和初始化硬件從而驅(qū)動整個系統(tǒng)。所以當(dāng)我們談?wù)摗霸O(shè)備樹文件 DTS”時我們實際上是在討論整個設(shè)備樹技術(shù)體系中最核心的“源代碼”部分。它是人類可讀、可編輯的硬件描述藍(lán)圖。掌握DTS文件的語法和編寫方法是深入理解嵌入式Linux驅(qū)動開發(fā)和系統(tǒng)移植的必經(jīng)之路。無論你是驅(qū)動工程師、系統(tǒng)移植工程師還是對底層感興趣的應(yīng)用開發(fā)者讀懂并會修改DTS都能讓你對系統(tǒng)的掌控力提升一個檔次。接下來我們就拋開那些抽象的概念直接深入到DTS文件的語法細(xì)節(jié)和實戰(zhàn)技巧中去。2. DTS文件語法核心精講DTS文件看起來像一種自定義的配置文件但它其實有自己嚴(yán)謹(jǐn)?shù)恼Z法結(jié)構(gòu)。理解這些語法是編寫和調(diào)試設(shè)備樹的基礎(chǔ)。2.1 節(jié)點(diǎn)Node與屬性Property萬物皆節(jié)點(diǎn)設(shè)備樹是一種樹形結(jié)構(gòu)這棵樹由節(jié)點(diǎn)Node和屬性Property構(gòu)成。你可以把它想象成一個公司的組織架構(gòu)圖公司是根節(jié)點(diǎn)下面有研發(fā)部、市場部等子節(jié)點(diǎn)每個部門又有自己的屬性如人數(shù)、預(yù)算等。節(jié)點(diǎn)是設(shè)備樹的基本組成單元用花括號{}定義。每個節(jié)點(diǎn)都有一個名字node-name和一個可選的單元地址unit-address。// 定義一個名為 uart1 的節(jié)點(diǎn)單元地址為 fe001000 uart1: serialfe001000 { // 節(jié)點(diǎn)內(nèi)容屬性和子節(jié)點(diǎn)放在這里 };上面的uart1:是一個標(biāo)簽label它相當(dāng)于給這個節(jié)點(diǎn)起了一個別名方便在其他地方通過uart1來引用它這是避免硬編碼地址的關(guān)鍵機(jī)制。屬性是附著在節(jié)點(diǎn)上的“鍵值對”key-value pairs用于描述該節(jié)點(diǎn)的特性。值可以是多種類型字符串String:compatible “fsl,imx6ull-uart”, “fsl,imx6q-uart”;32位無符號整數(shù)u32:reg 0xfe001000 0x1000;字符串列表String List: 如上例的compatible多個字符串用逗號隔開。二進(jìn)制數(shù)據(jù)Byte String:local-mac-address [00 11 22 33 44 55];布爾值Empty: 一個沒有值的屬性本身代表“真”例如dma-coherent;表示該設(shè)備支持一致性DMA。節(jié)點(diǎn)引用Phandle: 通過label引用其他節(jié)點(diǎn)例如interrupt-parent gic;。2.2 常用標(biāo)準(zhǔn)屬性詳解設(shè)備樹有大量預(yù)定義的屬性這里介紹幾個最核心、必會的compatible兼容性:這是設(shè)備樹中最重要的屬性沒有之一。它定義了設(shè)備與哪個驅(qū)動程序綁定。內(nèi)核啟動時會遍歷所有設(shè)備節(jié)點(diǎn)為每個節(jié)點(diǎn)的compatible屬性值在已注冊的驅(qū)動程序中尋找最匹配的那一個。值通常由“制造商,型號”組成越具體越優(yōu)先。compatible “ti,omap2-i2c”; // 首選匹配 // 如果找不到 omap2-i2c 的驅(qū)動會嘗試匹配更通用的 i2c 驅(qū)動 compatible “ti,omap2-i2c”, “i2c-bus”;reg寄存器區(qū)域: 描述設(shè)備占用的內(nèi)存地址空間。它的值通常是一個或多個(地址, 長度)對。地址和長度的具體含義需要參考其父節(jié)點(diǎn)的#address-cells和#size-cells屬性來決定。// 假設(shè)父節(jié)點(diǎn)定義了 #address-cells 1; #size-cells 1; reg 0xfe001000 0x1000; // 表示從地址 0xfe001000 開始長度為 0x1000 字節(jié)的區(qū)域。#address-cells和#size-cells: 這兩個屬性不是描述設(shè)備本身而是描述父節(jié)點(diǎn)如何解釋其子節(jié)點(diǎn)的reg屬性。它們定義了子節(jié)點(diǎn)reg屬性中“地址”和“長度”字段分別占用多少個32位數(shù)字cell。soc { #address-cells 1; // 子節(jié)點(diǎn) reg 的地址字段占1個cell #size-cells 1; // 子節(jié)點(diǎn) reg 的長度字段占1個cell serialfe001000 { reg 0xfe001000 0x1000; // 因此這個reg被解釋為地址0xfe001000 長度0x1000 }; };對于內(nèi)存節(jié)點(diǎn)#address-cells通常為264位系統(tǒng)#size-cells通常為2。interrupts和interrupt-parent: 描述設(shè)備的中斷信息。interrupt-parent指向該設(shè)備所屬的中斷控制器節(jié)點(diǎn)通常用標(biāo)簽引用如gic。interrupts屬性則描述中斷號、觸發(fā)類型等具體格式由其中斷控制器決定。interrupt-parent gic; // 父中斷控制器是 gic interrupts 0 88 IRQ_TYPE_LEVEL_HIGH; // 含義需查GIC控制器文檔通常為 中斷類型 SPI/PPI, 中斷號, 觸發(fā)方式status: 描述設(shè)備狀態(tài)。常用值有“okay”或“ok”: 設(shè)備可操作?!癲isabled”: 設(shè)備存在但當(dāng)前被禁用。“fail”,“failed”: 設(shè)備檢測到嚴(yán)重錯誤。“reserved”: 設(shè)備被保留給其他用途如安全世界。model和compatible(在根節(jié)點(diǎn)): 根節(jié)點(diǎn)的model描述板卡型號compatible描述板卡兼容的機(jī)器類型用于匹配內(nèi)核的Machine Description。/ { model “Freescale i.MX6 UltraLite 14x14 EVK Board”; compatible “fsl,imx6ull-14x14-evk”, “fsl,imx6ull”; };2.3 特殊節(jié)點(diǎn)與路徑根節(jié)點(diǎn)/: 設(shè)備樹的起點(diǎn)用單個斜杠表示。所有其他節(jié)點(diǎn)都是它的后代。/aliases節(jié)點(diǎn): 定義全局別名方便通過短名訪問長路徑節(jié)點(diǎn)。aliases { serial0 uart1; // 現(xiàn)在可以通過 /aliases/serial0 或別名 serial0 找到 uart1 ethernet0 fec1; };/chosen節(jié)點(diǎn): 不描述真實硬件而是由Bootloader向內(nèi)核傳遞運(yùn)行時參數(shù)如內(nèi)核啟動參數(shù)(bootargs)、標(biāo)準(zhǔn)輸入輸出設(shè)備(stdout-path)。chosen { bootargs “consolettymxc0,115200 earlyconec_imx6q,0x30860000,115200”; stdout-path uart1; };/memory節(jié)點(diǎn): 描述系統(tǒng)的物理內(nèi)存布局這是必須的節(jié)點(diǎn)。memory80000000 { device_type “memory”; reg 0x80000000 0x20000000; // 內(nèi)存從 0x80000000 開始大小為 512MB };節(jié)點(diǎn)路徑: 類似于文件系統(tǒng)路徑可以唯一標(biāo)識一個節(jié)點(diǎn)。例如/soc/aips-bus02000000/uart02020000。注意屬性名中使用的破折號-是標(biāo)準(zhǔn)寫法而不是下劃線_。例如device_type、interrupt-parent。雖然內(nèi)核有時也能解析下劃線但遵循標(biāo)準(zhǔn)可以避免不必要的麻煩。3. DTS文件的組織、編譯與調(diào)試實戰(zhàn)一個復(fù)雜的系統(tǒng)其設(shè)備樹描述可能會非常龐大。直接寫在一個文件里會難以維護(hù)。因此設(shè)備樹提供了強(qiáng)大的模塊化機(jī)制。3.1 DTSI頭文件與模塊化設(shè)計.dtsi(Device Tree Source Include) 文件類似于C語言的頭文件.h。它用于存放可重用的部分通常是SoC系統(tǒng)級芯片級別的通用定義。一個具體的板卡.dts文件通過#include來包含一個或多個.dtsi文件然后在此基礎(chǔ)上進(jìn)行覆蓋、修改和添加以描述這塊特定板卡的差異。典型結(jié)構(gòu)arch/arm64/boot/dts/vendor/soc-model.dtsi: 描述SoC內(nèi)部所有核心資源CPU集群、內(nèi)存控制器、各種總線、通用外設(shè)控制器如I2C0, SPI0, UART0等。這是由芯片廠商提供的。arch/arm64/boot/dts/vendor/board-model.dts: 描述具體板卡。它首先包含SoC的dtsi然后通過label引用并覆蓋dtsi中的節(jié)點(diǎn)使能或禁用某些外設(shè)status “okay”/“disabled”。修改外設(shè)的引腳復(fù)用pinctrl配置。添加SoC上沒有的、板級特有的設(shè)備如LED、按鍵、以太網(wǎng)PHY芯片、音頻編解碼器等。設(shè)置正確的時鐘頻率、電壓等板級參數(shù)。示例使能一個在dtsi中默認(rèn)關(guān)閉的I2C控制器并添加一個板載EEPROM設(shè)備// 板卡 .dts 文件 #include “soc-model.dtsi” // 包含SoC定義 i2c1 { // 引用SoC dtsi中定義的 i2c1 節(jié)點(diǎn) status “okay”; // 覆蓋狀態(tài)使能該控制器 clock-frequency 100000; // 設(shè)置I2C總線速度為100kHz eeprom50 { // 在使能的i2c1總線下添加一個子設(shè)備節(jié)點(diǎn) compatible “atmel,24c02”; reg 0x50; // I2C設(shè)備地址 pagesize 8; }; };3.2 DTC從DTS到DTB的編譯工具鏈DTS/DTSI是人類可讀的文本文件需要編譯成二進(jìn)制格式的DTB (Device Tree Blob) 文件才能被Bootloader和內(nèi)核使用。這個編譯器就是DTC (Device Tree Compiler)。編譯命令# 將 .dts 編譯為 .dtb dtc -I dts -O dtb -o my-board.dtb my-board.dts # 將 .dtb 反編譯為 .dts (用于分析和調(diào)試) dtc -I dtb -O dts -o my-board-decompiled.dts my-board.dtb在內(nèi)核源碼樹中通常不需要直接調(diào)用dtc使用make dtbs命令即可編譯所有配置的dts文件。常見編譯錯誤Syntax error: 語法錯誤檢查括號、分號、節(jié)點(diǎn)格式。Undefined label: 使用了未定義的節(jié)點(diǎn)標(biāo)簽xxx檢查標(biāo)簽名是否正確或?qū)?yīng)的節(jié)點(diǎn)是否被禁用status “disabled”的節(jié)點(diǎn)標(biāo)簽可能無法被引用。Duplicate node name: 重復(fù)的節(jié)點(diǎn)名確保同一父節(jié)點(diǎn)下子節(jié)點(diǎn)名含地址唯一。scripts/dtc/dtc: No such file or directory: 這通常是在內(nèi)核源碼外單獨(dú)使用dtc命令時dtc工具未安裝。需要安裝device-tree-compiler包Ubuntu/Debian或從內(nèi)核scripts/dtc/目錄下編譯生成。3.3 調(diào)試技巧如何查看與驗證設(shè)備樹設(shè)備樹出了問題驅(qū)動無法加載如何排查以下是一些必備的調(diào)試手段內(nèi)核啟動日志內(nèi)核在解析DTB時會打印大量信息。使用dmesg | grep -i device或dmesg | grep -i dts查看。重點(diǎn)關(guān)注錯誤和警告信息。查看/proc/device-tree這是一個神奇的目錄。系統(tǒng)啟動后內(nèi)核會將解析后的設(shè)備樹以目錄和文件的形式映射到這里。你可以用ls和cat命令直接查看節(jié)點(diǎn)的屬性和結(jié)構(gòu)。ls /proc/device-tree/ cat /proc/device-tree/model cat /proc/device-tree/soc/i2cfe001000/status注意這里顯示的是二進(jìn)制屬性對于reg、interrupts等非文本屬性cat出來是亂碼需要用hexdump查看。使用fdtdump工具這個工具可以直觀地以十六進(jìn)制和部分解析的形式查看DTB文件內(nèi)容比直接反編譯的dts更緊湊。fdtdump my-board.dtb | less驅(qū)動中的OFOpen FirmwareAPI在驅(qū)動代碼中可以使用內(nèi)核提供的OF API來讀取設(shè)備樹中的屬性這是驅(qū)動獲取硬件配置信息的標(biāo)準(zhǔn)方式。在驅(qū)動probe函數(shù)中添加打印可以確認(rèn)是否成功讀取到預(yù)期值。// 示例在驅(qū)動中讀取 compatible 和 reg 屬性 pr_info(“Device compatible: %s\n”, of_device_get_match_data(pdev-dev)-compatible); struct resource *res platform_get_resource(pdev, IORESOURCE_MEM, 0); pr_info(“Registers at %pa, size %pa\n”, res-start, res-end);實操心得調(diào)試設(shè)備樹相關(guān)問題時一個非常有效的思路是“對比法”。找一份能正常工作的、相近板卡的DTS文件與你正在編寫的文件進(jìn)行逐行對比尤其是compatible字符串、reg地址、中斷號、pinctrl配置等關(guān)鍵屬性。90%的問題都出在這些細(xì)節(jié)的差異上。4. 典型外設(shè)節(jié)點(diǎn)配置實例解析理論說再多不如看幾個實實在在的例子。我們以最常見的幾種外設(shè)為例拆解其DTS節(jié)點(diǎn)的標(biāo)準(zhǔn)寫法。4.1 UART串口控制器串口是調(diào)試和輸出的生命線其配置相對標(biāo)準(zhǔn)。uart1 { // 引用SoC dtsi中定義的uart1 status “okay”; pinctrl-names “default”; pinctrl-0 pinctrl_uart1; // 引用pinctrl節(jié)點(diǎn)配置TX、RX等引腳功能 // 通常不需要指定波特率波特率由用戶態(tài)程序設(shè)置 };關(guān)鍵點(diǎn)pinctrl-0引用的pinctrl_uart1必須在pinctrl子系統(tǒng)中正確定義它描述了引腳復(fù)用和電氣特性。這是設(shè)備樹中最容易出錯的地方之一必須與硬件原理圖嚴(yán)格對應(yīng)。dma相關(guān)屬性如dmas,dma-names在需要DMA傳輸時才配置。4.2 I2C控制器及從設(shè)備I2C總線可以掛載多個設(shè)備設(shè)備樹需要描述總線和從設(shè)備。i2c1 { status “okay”; clock-frequency 400000; // 設(shè)置I2C總線頻率400kHz pinctrl-names “default”; pinctrl-0 pinctrl_i2c1; // 板載EEPROM eeprom50 { compatible “microchip,24lc02”, “atmel,24c02”; reg 0x50; // 7位I2C地址 pagesize 16; }; // 觸摸屏控制器 touchscreen38 { compatible “edt,edt-ft5x06”; reg 0x38; interrupt-parent gpio1; // 觸摸中斷引腳連接到的GPIO控制器 interrupts 9 IRQ_TYPE_EDGE_FALLING; // GPIO1_9下降沿觸發(fā) reset-gpios gpio1 8 GPIO_ACTIVE_LOW; // 復(fù)位引腳 }; };關(guān)鍵點(diǎn)I2C從設(shè)備節(jié)點(diǎn)必須位于I2C控制器節(jié)點(diǎn)之下。reg屬性是設(shè)備的7位I2C地址通常左移一位后的值即硬件地址本身。對于需要中斷或GPIO控制的從設(shè)備如觸摸屏需要在節(jié)點(diǎn)內(nèi)配置interrupts和xxx-gpios屬性。4.3 以太網(wǎng)控制器與PHY以太網(wǎng)配置涉及MAC控制器和外部PHY芯片兩者都需要描述。fec1 { // 以太網(wǎng)MAC控制器 status “okay”; pinctrl-names “default”; pinctrl-0 pinctrl_enet1; phy-mode “rmii”; // 指定PHY接口模式如 rmii, rgmii phy-handle ephy0; // 指向PHY設(shè)備節(jié)點(diǎn) phy-reset-gpios gpio5 9 GPIO_ACTIVE_LOW; // PHY復(fù)位引腳 phy-reset-duration 100; // 復(fù)位時間單位ms mdio { // MDIO總線用于控制PHY #address-cells 1; #size-cells 0; ethphy0: ethernet-phy0 { // PHY設(shè)備 reg 0; // PHY在MDIO總線上的地址 max-speed 100; // 最大速率 // 可能還有PHY特定的屬性如LED配置等 }; }; };關(guān)鍵點(diǎn)phy-mode必須與硬件連接方式一致否則無法通信。phy-handle建立了MAC控制器和PHY設(shè)備的關(guān)聯(lián)。PHY的reg地址由硬件設(shè)計決定通過MDC/MDIO引腳的上拉下拉電阻配置。4.4 使用GPIO控制LED與按鍵對于簡單的板載設(shè)備可以直接在DTS中描述。/ { leds { // 可以創(chuàng)建一個自定義的父節(jié)點(diǎn)來組織LED compatible “gpio-leds”; led-0 { label “heartbeat”; gpios gpio1 0 GPIO_ACTIVE_HIGH; // 連接到GPIO1_0高電平點(diǎn)亮 linux,default-trigger “heartbeat”; // 內(nèi)核內(nèi)置的觸發(fā)器模式 }; led-1 { label “mmc0”; gpios gpio1 1 GPIO_ACTIVE_HIGH; linux,default-trigger “mmc0”; default-state “off”; }; }; gpio-keys { compatible “gpio-keys”; button-0 { label “Boot Button”; gpios gpio1 18 GPIO_ACTIVE_LOW; // 按鍵按下時GPIO為低電平 linux,code KEY_POWER; // 模擬的按鍵鍵值對應(yīng) /dev/input/eventX }; }; };關(guān)鍵點(diǎn)使用compatible “gpio-leds”和compatible “gpio-keys”可以讓內(nèi)核的對應(yīng)子系統(tǒng)自動創(chuàng)建設(shè)備無需編寫專用驅(qū)動。linux,code指定了按鍵映射到輸入子系統(tǒng)的哪個鍵值可以在linux/input-event-codes.h中找到定義。5. 進(jìn)階技巧與常見“坑點(diǎn)”避雷指南當(dāng)你掌握了基礎(chǔ)語法后下面這些進(jìn)階知識和“坑點(diǎn)”能讓你在實戰(zhàn)中更加游刃有余。5.1 屬性覆蓋與合并規(guī)則設(shè)備樹的一個強(qiáng)大特性是“覆蓋”。當(dāng).dts文件通過label引用.dtsi中的節(jié)點(diǎn)并添加新屬性時其規(guī)則是標(biāo)量屬性字符串、整數(shù)等直接覆蓋。后定義的替換先定義的。列表屬性如interrupts,reg的多組值通常也是整體覆蓋。你不能只修改列表中的某一項。子節(jié)點(diǎn)如果標(biāo)簽引用的是一個節(jié)點(diǎn)而非屬性那么在該引用塊內(nèi)定義的任何新子節(jié)點(diǎn)都會被添加到原節(jié)點(diǎn)下。如果子節(jié)點(diǎn)名含地址相同則會發(fā)生覆蓋。一個常見的“坑”試圖在板級DTS中只修改一個復(fù)合屬性的一部分。例如原DTSI中pinctrl-0 pad1 pad2 pad3;你在板級DTS中想只改成pad1 pad4你必須完整地重新定義整個列表而不能只“追加”或“修改”某一項。5.2 條件包含與預(yù)處理.dts/.dtsi文件在編譯前會被C預(yù)處理器cpp處理。這意味著你可以使用#ifdef,#if,#define等宏來進(jìn)行條件編譯。這在區(qū)分硬件版本、配置可選功能時非常有用。// 在 dtsi 文件中 #ifdef CONFIG_HAVE_ETH1 fec2 { status “okay”; // ... 其他配置 }; #endif // 在板級 dts 文件中可以通過 /include/ 來包含一個定義了宏的文件 /include/ “my-board-config.dtsi” // 這個文件里可能定義了 #define CONFIG_HAVE_ETH1注意這里的CONFIG_HAVE_ETH1是DTS編譯環(huán)境的宏與內(nèi)核的Kconfig宏是兩套獨(dú)立系統(tǒng)雖然名字可以相同。通常通過Makefile或dtc的-D參數(shù)傳遞。5.3 調(diào)試與排查實戰(zhàn)記錄問題一驅(qū)動 probe 函數(shù)不執(zhí)行排查步驟查compatible首先確認(rèn)DTS中的compatible字符串與驅(qū)動中of_device_id表里的字符串完全一致包括大小寫和逗號。查status確認(rèn)節(jié)點(diǎn)狀態(tài)是“okay”而不是“disabled”或被注釋掉。查父節(jié)點(diǎn)狀態(tài)如果該設(shè)備掛載在某個總線如I2C、SPI下確??偩€控制器的status也是“okay”。查內(nèi)核日志dmesg | grep -E “of|device|probe”看是否有相關(guān)錯誤或跳過信息。查/proc/device-tree確認(rèn)節(jié)點(diǎn)是否存在屬性是否正確。問題二外設(shè)寄存器訪問失敗返回 -EBUSY 或 -ENXIO排查步驟查reg屬性確認(rèn)地址和長度是否正確。與芯片數(shù)據(jù)手冊的存儲器映射表核對。查pinctrl配置這是最最最常見的坑引腳復(fù)用配置錯誤會導(dǎo)致引腳功能不是你所期望的外設(shè)功能從而無法訪問。仔細(xì)核對原理圖和pinctrl配置。查時鐘和復(fù)位有些外設(shè)需要額外的時鐘和復(fù)位控制。檢查DTS中是否有clocks和resets屬性并確認(rèn)引用的時鐘和復(fù)位控制器節(jié)點(diǎn)已使能。問題三中斷無法觸發(fā)排查步驟查interrupt-parent指向的中斷控制器節(jié)點(diǎn)是否正確。查interrupts屬性中斷號和觸發(fā)類型是否正確。需要查閱SoC數(shù)據(jù)手冊中關(guān)于中斷控制器的章節(jié)明確每個外設(shè)的中斷映射關(guān)系。查共享中斷如果中斷是共享的驅(qū)動中需要正確實現(xiàn)IRQF_SHARED標(biāo)志。用cat /proc/interrupts命令查看你的設(shè)備中斷號是否被注冊以及中斷計數(shù)是否在增加。問題四設(shè)備樹編譯錯誤Undefined label原因你引用了一個標(biāo)簽如uart1但DTC編譯器在上下文中找不到這個標(biāo)簽的定義。解決檢查標(biāo)簽名是否拼寫錯誤。檢查該標(biāo)簽對應(yīng)的節(jié)點(diǎn)是否被條件編譯#ifdef排除在外。重要檢查該節(jié)點(diǎn)是否被設(shè)置為status “disabled”。在某些舊版本或特定處理中被禁用的節(jié)點(diǎn)的標(biāo)簽可能無法被引用。一個變通方法是不要禁用整個父節(jié)點(diǎn)而是只禁用你需要的那部分。5.4 從零開始為一塊新板卡編寫DTS假設(shè)你要為一塊基于NXP i.MX6ULL芯片的自制板卡編寫DTS。尋找參考在內(nèi)核源碼的arch/arm/boot/dts/32位或arch/arm64/boot/dts/64位目錄下找到你的SoC型號對應(yīng)的.dtsi文件如imx6ull.dtsi和官方評估板.dts文件如imx6ull-14x14-evk.dts。以官方EVK的DTS為模板是最快的方式。建立骨架創(chuàng)建你的板卡DTS文件如my-custom-board.dts首先包含SoC的dtsi文件。// SPDX-License-Identifier: GPL-2.0 #include “imx6ull.dtsi” / { model “My Custom i.MX6ULL Board”; compatible “my,custom-board”, “fsl,imx6ull”; // 內(nèi)存配置 memory80000000 { device_type “memory”; reg 0x80000000 0x20000000; // 512MB RAM }; // 其他根節(jié)點(diǎn)屬性如 chosen, aliases };配置系統(tǒng)時鐘檢查并確認(rèn)clocks節(jié)點(diǎn)下的振蕩器頻率是否正確根據(jù)你的板載晶振修改。使能外設(shè)根據(jù)你的板卡原理圖通過label引用SoC dtsi中的外設(shè)節(jié)點(diǎn)如uart1,i2c1,usdhc1將其status改為“okay”并配置正確的pinctrl。配置引腳復(fù)用這是最繁瑣但最關(guān)鍵的一步。你需要為每個使能的外設(shè)創(chuàng)建一個pinctrl_xxx節(jié)點(diǎn)通常在iomuxc節(jié)點(diǎn)下根據(jù)數(shù)據(jù)手冊的IOMUXC章節(jié)為每個用到的引腳設(shè)置正確的復(fù)用模式MX6UL_PAD_XXX_XXX__XXX、上下拉、驅(qū)動強(qiáng)度等。務(wù)必與原理圖一一對應(yīng)。添加板載設(shè)備在對應(yīng)的總線節(jié)點(diǎn)下如i2c1添加你的外部設(shè)備節(jié)點(diǎn)如EEPROM、傳感器等。編譯測試使用make dtbs編譯將生成的.dtb用Bootloader加載啟動。通過查看/proc/device-tree和內(nèi)核日志逐步調(diào)試直到所有硬件被正確識別。設(shè)備樹的學(xué)習(xí)是一個“先模仿后理解再創(chuàng)造”的過程。開始時多參考成熟平臺的代碼遇到問題時善用調(diào)試手段逐步積累經(jīng)驗。當(dāng)你能夠獨(dú)立為一塊新板卡配通所有基礎(chǔ)外設(shè)時你對Linux底層系統(tǒng)的理解就已經(jīng)遠(yuǎn)超大多數(shù)應(yīng)用開發(fā)者了。這份能力將成為你深入嵌入式世界的堅實基石。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
影音先锋中文字幕日本好一区二区| 天天操天天日天天干| 熟女精品一区二区在线观看| 五月天色图| 三级特黄60分钟播放| 欧美在线官网| 超碰97人妻自拍| 黄色AAAAA欧美| 久久欧洲| 韩国免费播放一级毛片| 熟女人妻av在线资源,黄色的资源| 精品成人动漫一区二区| 国产精品麻豆免费视频| 亚洲欧美日韩精品久久久一区二区| 午夜高清成人在线视频| 免费一级视频特黄色大片| A 天堂| 绑缚麻绳人妻寝取完整版| 91jk色拍| 偷拍超碰| 日韩视频小说在线观看| 中文字幕在线免费观看| 极品极品色影院| 欧美 亚洲 综合 制服 另类| 精品一区二区在线针对华人免费观看这里只有精品免费观看 | 日韩国产品视频中文字| 天天做天天爱| 色噜噜综合在线| 色悠久| 免费精品AB| 男女日B国产| 国产欧美伊人| 亚91网| 日骚逼视频| 亚洲精品国产熟女久久久| 天天干人人看综合| 久久精品72| 不卡六六在线91| 久久尹人大香焦视| 五月天精品| 清纯唯美综合亚洲| 色色色网站| 天天综合欧美| 欧美一区二区日韩传媒搭讪精品| 91被操| 熟女中出视频| 亚洲熟女av日韩熟女| 激情五月天校园春色网| 综合久久中文字幕综合日韩精品| 麻豆久久视频在线地址| 五月激情在线| 久久永久无码人妻视频| 精品妇操一区二区三区| 色婷婷五月综合激情中文字幕| 国产人妻久久精品一区二区三区| 久久精品人体| 亚洲国产精品有声| www.人人摸在线视频| 97人人草| 天天综合97| 日韩不卡码| 在线v中文字幕一区二区三区| 啊啊啊慢点| 99丝袜福利在线播放| 亚洲制服aⅴ中文字幕| 亚洲 中文 欧美 日韩 在线| 操人妻丝袜高跟| 天天操夜夜嗨| 欧美92| 丝袜喷水在线| 91美女中出| 成人免费毛片| 久久黄人人爽视频| 天天舔天天日天天射| 高清无码国产亚洲| 久久久久久久九九九九九九| 免看60秒涩涩视频| 乱老熟女一区二区三区| 婷婷成人五月天| 国产亚洲精品一区二区三区| 欧美亚洲清纯| 日本精品国产视频| 五月婷婷五月天| gogogo免费高清看中国国语| 黄色工厂这里只有精品| 国产欧美成人精品| 黄资源| 男人天堂2019亚洲| 日本国产欧美高清在线| 日本人妻伦在线中文字幕| 97在线国产精品| 少妇高潮对白在线观看| 男女做爰猛烈动高潮A片免费应用 少妇厨房愉情理伦片bd在线观看 不卡中文字幕aⅴ在线 | 午夜αv| 97在线青| 综精品久久久aaaa| 精品久久在线区一区| 亚洲欧洲精品视频发布| 无码137片内射在线影院| 亚洲黄色网址| 亚州精品丝袜-不卡成人免费| 久久老子无码午夜伦不卡| 92一区二区| 91精品少妇搡搡搡| 福利天堂| 精品午夜福利| 欧美一级美片在线观看免费| www黄片免费看com| 韩国嫰模上门援交视频| 性色av网站| 色墦五月丁香| 丰满丝袜少妇AV| 无码最新| 一级黄碟在线观看| 强被迫伦姧在线观看无码网站| 久久大精品乱码视频人妻熟女| 99天天超碰| 日本熟女不卡视频| 五十路熟女在线不卡观看一区二区| 激情小说五月天| 手机在线中文字幕国产| 东京日日夜夜| 中文久久一区| 超碰日本97美女人妻人人玩人人爱| 欧美日韩99| 天天操天天干一区二区| 福利操逼| 日韩黄片视频试看| AV一区观看| 亚洲av综合伊人久久| 色噜噜狠狠色综无码久久合欧美| 少妇三p| 中文字幕欧美精品亚洲日韩蜜臀| 高清无码91| 夜夜嗨TV| 亚洲欧洲日韩中文字幕一区| 久9久9久9久9久9久9| 91欧美偷拍| 国产在线精品偷| 国产成人亚洲精品自产在线 | 婷婷香网站| 欧美日韩大陆黑人少妇99| WWW4虎| 久久精品国产精品亚洲艾通辽熟妇| 久99热| 97婷婷色| 欧美狠狠操| 亚洲精品天天影视综合网| 精品无码一二三四区| 国产传媒一区日韩| 欧美亚洲激情一二三| 内射卯月麻衣| 亚洲一区二区av| 亚洲妇色| 97国产精品在线观看| 午夜福利一区二区影院| 国产精品久久成人免费| 尤物国产一区在线观看| 久草免费在线一区二区| 91校园春色长篇| 欧亚免费视频| 丝袜内射| 亚洲日韩久久精品一区| 亚洲天天自拍| 欧美日韩丝袜| 好湿好紧好爽 视频| 久久久999日本大片| 18岁禁 茉莉成人久久| 色男人色天堂东京热| 51一区二区三区| 蜜臀va69| 日韩猛交| 日本人人操人人操| 色综合美国| 粉嫩AV一区夜夜嗨| 国产激情在线| 亚洲欧洲精品视频发布| 久久精品人体| 风间由美日韩欧美久久| 91在线精品一区二区三区| 国产一级不卡在线观看| 久操九九九九| 中文字幕午夜精品久久久| 神马麻豆福利院| 伊人网免费视频| 大色综合网| 九九亚洲| 啊啊啊 在线| 成人羞羞视频国产| 凸凹视频在线观看| 观看视频图片一区二区三区| 久肏视频字幕| 日本黄色精品专区网站| 九九热最新| 欧美78| 九九九九九精品| 亚洲图片激情综合另类| 色五月婷婷麻豆在| 97人人色| 强奸乱伦亚洲第一页| 熟女丰满人妻一区| 久久久国产护士丝袜美腿一| 国产一区二区三区久久久精品| 婷婷丁香五月综合| 国产熟女自拍| 国产高清精品一区二区三区毛片| 伊人五月天青青草婷婷| 色与欲影视天天看综合网| 日本性感人妻91| 91丨九色丨大屁股| 久久久久96| 欧 美 自 拍 偷 拍| 人人操AV| 91A欧美电影网站| 国产最新小视频在线播放下载| 亚洲欧洲美腿丝袜| 极品色综合| 99久久久无码国产精品性男| 欧美大色交| 中文字幕第9页萱萱影音先锋| 久久五月丁香| 中文字幕av一区二区三区人妻少妇| 99久久精品无码一区二区毛片免费| 婷婷五月天福利| 啊啊啊慢点| 97摸视频| 国产91丝袜 在线播放| aaa一级黄片| 精品国产久久乱码| 国产人妖视频一区在线观看| 国产AV人人 夜夜人人澡| 欧美中文字幕精品人妻| 九九成人视频| 亚州性色| 亚洲男人天堂Av| 精品人妻一区二区三区鲁大师| 欧亚性爱视频免费看| 精品一区二区三区四区外站| 美国人人操人人操| 亚洲免费在线探花| **一级毛片国产| 午夜精品久久久久久久第一页按摩| 热无码中文亚洲H一道本一区二区| 亚洲欧美爆| 亚州情色j区| 美国三级日本三级久久99| 9l视频自拍9l九色成人| 九月丁香| 动漫av中文| 强奸乱伦免费网站| 91亚洲人| 亚洲天天艹| 久久大香蕉手机高清| 精品福利| 欧美性爱一区| 九九英色视频| 亚洲砖码砖专无区2023| 日韩在线电影| 国产五码丝袜屁眼| 中文字幕在在线观看网站| 天天综合网在线| www.伪伪| AV男人天堂网| 亚洲偷拍自拍在线视频| 78m成人视线| 99精品在线观看| 三久久久四久久久久| 91男女啊啊啊| 青娱乐亚洲自拍| 97精品在线| 亚洲欧洲另类| 欧美性爱第一页久久| 亚洲色图91欧美日韩| 亚洲色图美腿丝袜| 伊人网青青| 亚洲操人| 亚洲男人天堂视频| 国产辣妈在线视频福利| 国产在线视视频有精品| 欧美性爱伊人| 中文字幕在线观看第二页| av天堂手机版追回| 久久久久久综合久久伊人蜜月| 翘臀vidoes| 欧美成人性爱视频在线播放 | 免费观看啪视频| 人妻欧美| 亚洲凸凹超碰成人| 欧美精品不卡一二三四在线91| 天天综合网91| 亚洲 一区二区 自拍| 亚洲人精品久久久喷水| 人妻熟女一区二区三区在线| 中文字幕女同在线| 精品视频一区二区| 亚洲最大黄网| 国产激情视频在线观看| 另类小说欧美激情校园春色| 97bbn| 日本网色| 国产精品无码av嫩草| 亚州欧美在线| 欧美综合在线91| 婷婷五月av| 亚洲图片激情综合另类| 久久日韩肥臀| 啊啊啊啊啊好舒服视频| 天天看综合网| 成人国产精品三级A片| 日韩视频中文字幕| 国产精品农村妇女| 大香蕉伊然在亚洲91| 久久久不能久久久久| 大色综合网| 可以免费看黄片的视频| 亚洲男人天堂手机版| 亚洲无限观看| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 亚洲乱码精品一区二区| 凹凸 69堂 在线播放| 欧美久久毛片基地| 欧美久久草熟女| 欧美黄片视频在线观看免费| 激情五月天丁香社区| 久综合国内精品自在自线| 91啪啪| 久久久久久人| 黑人与人妻| 日韩一级二级在线| 久久一区无码| 少妇 综合| 中文字幕在线日亚州9| 美中日韩无码| 操逼片中文| 欧美一级特黄淫片在线观看| 天天干天天舔| 日韩精品资源专区二区| 欧美资源| 欧洲在线性爱视频| 99亚洲国产精品色一区二区三区| 亚洲色图综合| 亚洲成人ab| 中国和日本人色哪个不下载能放| 福利天天都操| 精品国产乱子伦一区二区三区,精品一 | 亚洲综合小视频小说在线观看| 熟女丰满人妻一区| 91美腿丝袜在线观看| 国产亚洲一黄| 青青11操操操操操操操操| 99性爱视频| 成人情色一区二区| 台湾佬激情综合| 午夜男人天堂| 999久久久九| 女同性恋一区二区三区精品视频| 少妇诱惑视频| 嗯嗯啊好大| 久久久久久波多野吉衣高潮| 亚州高清av| 91n免费处女| 色香综合天天影视综合 | 国产精品呦一区二区三区| 欧美一级特黄淫片在线观看| 黑人操一区二区| 无码视频黄色网战| 丁香六月啪| 色婷婷激情| 欧美色五月| 日本不卡高清免v欧美日韩在线观看| 婷婷香蕉欧美在线一区二区三区 | 精品免费1| 欧美在线大香蕉| 国产中文福利| 一卡二卡三卡| 91成人18| 免费的很黄很污的全部视频| 日本www操操操| 久热无码| 色女网日韩| 久久久久久久久久精| 超碰久在线天天做| 午夜精品久久久久久久第一页按摩| 人妻丝袜一区二区三区在线| 18禁看网站一区| 欧美天天干| 亚洲一区日韩| 欧美日韩222| 欧美91网站| 粉嫩AV一区夜夜嗨| 激情视频图片| 国产精选视频| 91亚洲色人| 日韩黄色一区二区三区| 99亚洲精品| 好爽,再快点啊哈嗯嗯嗯嗯| 男女激情中文字幕| 91国产丝袜白虎| 屁股久久久久久久| www..com操老师| 9九九九九视频在线观看| 丰满搜索结果 -第18页- 久久高清无码 | 一本一道人妻久久一区二区三区| 男人 天堂 日 亚洲| 五月天人妻综合| 久草午夜| 97在线精品| 五月天久久婷婷亚洲| 综合亚洲网| 自拍偷拍 日韩欧美| 人人射人人操人人摸| 天天91~综合入口| 青操影院| 国产福利电影| 成人夜夜爽| 综合久久99亚洲人妻中文在线| 欧美 亚洲 在线| 中文字幕乱在线伦视频中文字幕乱码在线| 95精品在线| 91色综合色| 人人做,人人操,人人摸| 狠狠操狠狠| 欧美成人国产精品| yaouchengrenav| 丁香五月天激情| 亚洲精品美女操逼| 日韩欧美大片免费高清啪啪| 成人在线日韩| 亚洲素人综合| 性在久久久久久| 开心六月色| 久伊人网78| 亚洲国产精品成人无码久久久| 韩国一级做A片免费的| 91挑色欧美| 色色九区| 久操婷婷| 丰满人妻-区二区三区免费看| 97精品熟女少妇一区| 麻豆乱码久久精| 久久精品熟妇丰满人妻99| 90后性网国产欧美| 国产热av| 网页导航五月天免费一二三区| 宗合情欲网| 国产精品人妻无码久久久老鸭窝 | 爱干爱射网啊啊啊| 五十路熟女人妻一区二区在线观看 | 欧美日韩成人| 97超级久久| 欧美综合区| 综合网亚洲1| 五月天我淫我色av| 日韩av熟女一区二区三区成人| 日韩精品-原创伙伴| 日本色婷婷| 国产精品69久久久久孕妇欧美| 日本性爱不卡视频| 欧美熟女逼久久久久久| 日韩一级片在线看| 亚洲色天堂九9| 第一高清av中文字幕| 91国产丝袜美女| 另类 日韩 熟女| 91男同| 天天躁日日躁AAA片李宗瑞| 天天操天天日天天干| 综合欧美日韩在线观看| 精品制服美女中文一区二区三区| 探花精品视频| 天天流夜夜操| 免费观看欧美日韩操逼视频| 国产精品99精品视频网站| 国产精品9999| 亚洲自拍小说| 一区二区三区四区免费视频| 亚洲日本激情| 久久久久久中文版| 成人七区| 国产精品久久久久久9999| 日韩乱伦视频| 久草这里只有精品 | 美女毛片999| 国产女人操逼视频| 婷婷人妻激情| 色妹子A V| 日韩欧洲操屄视频| 欧洲亚洲人人爽爽视频| 免费啪啪啪网站18岁| 久久9精品| 日韩99999色| 日韩操逼HD| 99re在线视频国产| 欧美男人一区| 天天躁日日躁AAAAXXXX国产| 好一吊区二区| 久久久久久性爱片| 免费人成?大片在线播放| 亚洲97超碰| 91伊人影视综合| 欧美一区二区观看在线| 99久久99久久免费精品蜜臀| 新视频sss国产| 秋霞视频一区二区| 黄片qw| 中精品一区二区三区| 屌逼麻豆| 国产毛片在线| 超碰在线91| 91av天美性媒精品视频| 国产福利第一视频| 久久久久久亚洲Av无码精| 国产精品3| 久久久一级| 亚洲无码免费看| 色香天天| 欧美综合777| 东北黄色电影| 探花激情视频| 国产亚洲精品久久久久小| 综合五月天| 少妇蜜汁| 91久久久久久久久18| 欧美性爱第一页久久| 黑人精品欧美一区二区蜜桃| 欧美人妻色| 婷婷中文字幕| 久久久久久国产精品免费网站| 夜夜精品视频| 尤物视频新赏网鲜网色诱网| 亚洲黄日韩无码专区| 激情五月天综合网| 性爱乱伦网址| 一本精品日本在线视频精品| 久久东京热久久| 亚洲男人天堂视频| julia中文字幕在线观看| 又黄又爽在线观看视频| 男人的天堂一区三区| 成人一道本免费视频| 91色狼| 小电影欧美91| 果冻传媒A片一二三区| 亚洲国产综合久久久性感熟妇| 97自拍视频在线| 国内亚洲精彩视频在线| 操逼逼一区视频| 欧美宗合网| 天欧美在线| 97超视频在线观看| 久久亚洲熟妇在线视频| 国产性刺激| 欧洲天天在线| 人人乐大香蕉| 五月丁香啪| AAA久久| 全球成人中文在线| 激情干在线| 亚洲精品亚洲人成在线麻豆| 欧美激情另类一区二区| 在线观看无码三级少妇| 亚洲欧洲av影音| 超碰78| 综合网欧美| 99re超碰| 久久久久久久久999| 精品对白久久不卡| 国产精品噜噜噜日日日| 黄页网站成人免费| 色图四区| 色妺妺AⅤ| 亚洲开心网| 69一区二区三区| 屁股久久久久久| 免费国产视频| 国产精品久久aV| 免费看黄片现成| 亚洲精品成人动漫在线| 乱伦一区二区三区‘| 1人人看人人摸人人操| 国产亚洲精品久久久久小| 欧美日韩啪啪电影| 中文字幕交换人妻| 玖玖爱免费观看视频| 欧美亚洲日本激情在线| 色色五月婷婷| 老鸭窝亚洲毛片| 国产青一二三| 目产99999久久999| 人澡逼| 天天碰久久入| 懂色Av| 99在线免费公开视频| 欧美91视频| 人妻日日干| 五月激情啪啪| 日韩熟女精品无码专区一区二区| 久久久18禁| 91N综合网在线| 亚洲素人综合| 美女久久久久久久久久久| 国产高清午夜成人在线观看| 国产精品久久久久久照片| 无码乱人伦中文视频| 成人电影一区| 91av天美性媒精品视频| 日韩中文9| 人人妻人人玩人人澡人人爽| 中字幕人妻一区二区三区| 999亚洲国产视频| 色婷婷小说| 极品粉嫩一区二区| 激情文学小说一区二区| 久久97超碰| 久久91精品国产9丨久久分亭| 伊人网综合在线视频| 六月丁香啪啪啪| 国产精品网站免费| 极品人妻少妇综合| ji熟女.com| 亚洲精品久久久久久久蜜桃臀| 日本免费不卡二区| 做爱福利视频一区二区| 黄页| 人妻日日干| 欧洲天天在线| 超碰社区97| 青娱乐二区免费| 99热最新| 日韩av色图| 九久9精品| 另类 日韩 熟女| 欧美色偷拍| 色九九九九九九| 人妻性爱一区二区| 色色色网站| 97天天在线| 成人精品在线免费视频| 狠狠色综合网| 日韩精品怡红院| 一级毛片电影免费看| 欧美一级A片在线看视频性色| 亚洲色图加勒比| 国产精品久久泡妞网站| 国产精品无套内谢| 丝袜综合| se..亚洲欧美| 丁香五月天堂网| 欧洲性人爱视频| 大屁股人妻女教师撅着屁股| 色欧美天天| 日韩色图 一区二区| 中字幕人妻一区二区三区| 久操大香蕉手机视频在线看| 久久九九热| 91高清无码下载| 好吊色一区| 91操操操操| 九九伊人网| 日日骚av| 国产精品自在自拍视频| 九九国产热| 日本操逼视频不卡直接放| 丰满人妻-区二区三区免费| 亚洲狠狠入| 中文操嬖片。| 学生妹天天看| 欧美极品性爱天天射| 男人干美女| 国产在线综合福利网站| 亚洲AV无码天美传媒一区| 综合色区偷拍| a在线观看| 色悠悠伊人网五月天| 亚欧国产无码精品在线| 插入粉嫩少妇视频| 人人射人人操人人摸| 亚州日韩97| 国产精品久久久久久无码红治院| 欧美91网站| 再深点灬舒服灬太大了添视频| 妇女视频网站| 精品无码久久久久久久久果冻糖心| 蜜桃色色网站视频三区| 九九九九9999| 台湾佬激情综合| 国产真实子伦对白| 福利偷拍视频-中文字幕2019国语完整视频大全-S91AV | 青青草国产欧美非洲黑人| 色五月综合网| 亚洲欧美黄| 青青草日逼视频| 国产精品福利资源在线尤物| 91色图片| 国产精品久久久久无码A√| 香蕉免费一区二区三区不读 | 激情五月天婷婷| 另类图片天天影视| 蜜臀av中字字幕网站| 国产久久免费精品视频| 男人的天堂在线| 少妇干B| 天躁夜夜躁2021| 69人妻精品一区二区绯色| 少妇久久| 欧美伦乱爱| 国产 热久久久久国产精品| 安微少妇操BBB| 色色操| 中文字幕精品免费一区二区| 91激情综合| 亚欧国产无码精品在线| 欧美亚洲天天| 亚洲色图 欧美热图 清纯唯美 另类自拍 | 97 亚洲 日韩 欧美 在线| 高清国产精品福利网站| 91欧美另类| 亚洲av乱伦色图网站| 日韩9区| 西西美女视频网| 91三级理论片播放器| 啪啪啪综合| 99www.bibizy香蕉资源国产一区二区三区高清| 香蕉热人人精品| 国产激情在线| 日韩精品人妻中文字幕有码午| 久草网站免费在线观看| 97色综合中文网| 国产男女无套97| 日韩国产中文字幕| 热99这里有精品综合久久 | 大香蕉日亚洲日本亚大| 人人考人人摸人人干| 亚洲啪啪综合?v一区综合精品区| 综合欧美日韩在线| 噜噜噜狠狠色综合| 99国产在线 精品 视频| 9丨久久九九九| 日本精品性生活久久久| 亚洲另类综合欧美| yellow网站免费观看日韩高清无码| 91n处女在线观看| 秋霞午夜视频一区二区| 免费一级视频特黄色大片| 91P0RNY大屁股人妻| 亚洲天天精品| 国精品一区二区三| 九色PORNY9l原创自拍| 三级精品三级在线观看| 97中文热色| 啊啊啊好湿久久| 亚洲色五月| 亚洲系列第一页| 久久久久久久97| 激情文学亚洲| 日韩丝袜高跟制服在线观看| 欧美综合站| 91干熟女| 91人妻精华帖| av亚欧| henhen91| 国产视频小说| 91嫩草欧美| 亚洲少妇色| 免费看欧美美女黄色大片| 日本操逼aaaaa| 色综合久久88色综合久久天天| 自拍偷拍国产欧美日韩韩| 亚洲欧美国产成人综合不卡| 婷婷六月天| 久久性爱视频免费看| 日韩天天本| 2025亚洲男人天堂| 日韩中文字幕国产| 职场同事知名国产国产精品久久欧美日韩 | 中文字幕精品久久久久人妻红杏ⅰ| 久久精品操| 久久鲁夜| 亚洲第一页欧美| 中亚av| 大屁股xxxxx| 91人妻素女| 成人免费视瓶| 人人爱人人乐人人操| 色图综合| 中文字幕一区二区三区人妻不卡| 96精品久久久| 综合色久欲| 国产精品一区二区后入| 麻豆一区二区三区精品| 一本一道人妻久久一区二区三区 | 91操熟女视频| 就去色综合| 97精品人妻一二三四| 香蕉免费一区二区三区不读 | 久久伦理视频久久大香蕉视频| 麻豆国产原创AV色哟哟| 熟女在线视频| 欧洲无码一区二区| 日曰骚久久精品| 国产AV无码AV| 色网1| 91成人久久| 久久不卡一区二区| 天天操狠狠日夜夜干超大胆开放com大香蕉视频在线观看 | 强奸乱伦大香蕉| 男人干美女| 无码久久国产| 韩国一区二区精品亚洲| 天欧美在线| 日韩操逼性鲍| 天天日天天搞天天干| 国产综合在线视频网站| 精品超碰国产| 日日夜夜天天| 日本午夜久久电影| 成人性爱AV在线免费观看| 亚洲国产精品无石码久久 | 婷婷五月天色网| 欧美在线|亚洲| 一区e区三| 日韩色香| 欧美成人性爱视频在线播放| 性久久久| 色av中文字| 日韩人妻精品久久久久| 福利大香蕉| 亚洲 se图 欧美电影| 在线综合 亚洲 欧美中文字幕 | 92午夜免费福利视频| 日逼97| 一区二区三区男女操逼黄色小电影| 免费的很黄很污的全部视频| 国产精品点击进入在线影院| 欧美综合综合| 欧美亚州色的图| 欧中日成人免费影视| 久久婷婷热| 男人的天堂午夜av| 久久华人网| 97精品国产手机| 97九色人妻| 色播丁香| 激情专区综合| 国产无马av| 在线无码操| 日韩成人大片一区二区| 一区不卡在线观看av| 国产毛片片精品天天看视频| 亚州欧美色图| 激情小说在线视频| 国产精品美女视频诱惑| 偷拍三区| 日本天天操| 婷婷午夜| 国产极品999| 丰满翘臀美女影院视频| 日本青青草在线| 久久久蜜桃一区二区三区| 日韩AV一区二区三区三州三州| 久久久九精品| 欧美激情综合网| 蜜桃无码AV一区二区| 婷婷五月天伊人| 久久女婷| 91精品人妻一区二区三区蜜桃臀| av天天在线观看| 色香蕉影院| 久久久人体| 干B| 91操熟妇| 中文字幕丰满人妻日本| 国产99久久99热这里只有精品15 | 色墦五月丁香| 少妇蜜汁| 精品一区99999| 综合国产影视三级| 国产强奸91| 婷婷久草一区二区三区| 大香蕉之青青草原| 久久久久成人网| 国产精品成人久久一区二区三区| 99综合| 少妇高潮喷水无套久久久久久| 欧洲性爱无码区| 久热香蕉精品在线视频| 嗯~啊~快点 死我视频| 欧美在线干| 欧美黄色大片在线观看| 97九色人妻| 青操影院| www.av在线视频| 中文字幕日产av人| 一本一道久久综合久久| 极品销魂美女一区二区| 91干熟女| 国产熟女自拍| 久久免费99精品久久久久久| 亚洲天堂中文字| 色婷婷丁香| 福利五区| 91天堂色男人的天堂| 亚洲高清在线| 大香蕉手机在线| AA级电影三区| 天天综合欧美综合| 日本操逼视频在线| 操人妻丝袜高跟| 欧美乱欲| 素人美腿视频网站| 少妇激情一区二区三区视频| 久久超碰久| 免费观看一区| 综精品久久久aaaa| PMv在线观看| 色99视频| 97精品国产| 亚洲欧美精品91| 高颜值美女口爆高潮浪叫| 婷婷五月天_亚洲小说欧美激情另类_精品久久国产字幕 | 97av在线视频| 国产操逼网站亚洲一级黄色| 日韩av色图综合| 久操婷婷| 色翁荡息又大又硬又粗又爽| 综合av影片| 丁香六月东京热| 亚洲欧美天堂| caopeng97| 亚洲精品日韩国产欧美| 精人妻一区二区三区| 国产原创自拍| 爱妃国产亚洲视频中文字幕| 亚洲青青草| 十八禁啪啦拍视频无遮挡| 久草线上视频免费看| 久久直播国产| 亚洲色图一区二区三区| 久超碰这里只有精品| 一品道视频一区二区三区| 91精品女厕偷拍视频| 91老司机视频| 国产盗摄美女如厕大神作品在线观看 | 欧美高潮| 草b在线 | 久久久久久久亚洲Av无码| 国产精品夜夜夜| 97超碰无码网| 中文字暮97| www.色操逼| {男男暴菊gay无套网站| 欧洲一区二区| 日韩9999| 夜夜操夜夜爽夜夜高潮| 亚洲精品一区二区三区在线播放| 操逼操逼操| 欧美色图亚洲色,麻豆| 国产农村妇女精品一| 26uuu欧美| 欧美在线播放aaaa| 亚洲最新中文字幕免费| 久久丁香久草综合网| 日日爱99| 青青草好吊| 国产精品电| 国产久久视频| 婷婷国产精品九区| 国产又黄又猛又粗又爽的网站| 激情专区综合| 色色综合网站| 亚洲国产成人高清在线| 金莲网址| 中文字幕一区二区在线日韩精品| 亚洲最新Av| 翔田千里爆乳巨臀无码| 97久久超碰| 日韩中文字幕人妻视频| 中文字幕精品一区二区精| 国产精品一区二区 尿失禁| 99这里有精品| 无码一区二区三区四区五区六区七区八区九区十区视频 | 天天激情综合站| 国产大陆天天艹| 日操粉逼逼| 五月丁香综合| 久久久久久夜夜夜夜夜| 欧美A√综合网| 欧美黑人日韩少妇色情| 午夜男人的天堂| 无码操逼视频一下| 亚洲砖码砖专无区2023| 婷婷色网| 欧美青青视频| 五月情色天| 在线无码网站| 五月天久久久| 四虎国产成人精品免费一女五男| 国产诱惑| 日韩精品一区二区高清 | 日韩一级特黄av毛片| 亚洲无码色| 久久亚洲色图中文字幕| 丝袜综合网| 久久精品国产亚洲AV无码做| 国产av尤物| 无码九九九九| 性色av大全| 蜜臀久久99精品久久久久久久久| 黑人精品久久97| 伊人操| 激情九月婷婷| 久久综合av| 91国产操逼视频| 青青草原人妻| 小明看看网址| 亚洲图片欧美色| 黄色片大香蕉| 欧洲与亚洲欧美精品中文字幕| 久伊人网78| 96精品久久久久久久久| 牛黄色久午久| 大香蕉在线视频15| 狠狠爱大香蕉| 亚洲人妻中文高清| 中文97国产| 欧美熟妇色| 操日韩第| 大香蕉在线视频重口味毛片在线| 96超碰网| 亚洲操逼视频网站| 欧美九九爱| 亚洲第一男人天堂| 国产精品不卡一区二区三区av| 婷婷色色五月天| 网友自拍第1页| 91日韩在线| 97ai亚洲| 狠狠狠狠狠狠| 中文字幕精品探花视频| 中文字幕在线24| 无码78| 欧亚洲精品有视频| 亚洲狠狠入| 99久久精品国产高潮| 吊色| 亚洲国产成人7777| 欧美操逼一二三区| 精品人妻中文字幕高清| 九九热免费在线国产视频伊人五月| 2017av无码免费无线播| 很很很很操| 久久五月份| 日本人人操人人操| 亚洲精品久久久久毛片A片拉屎 | 极品白嫩美少妇在地板上位骑射淫水泛滥| 久久久成人国产精品无码| 午夜九九九九九九| 性欧美另类高清| 91精品亚洲内射孕妇| 狠狠做深爱婷婷久久二区| 日本中文字幕在线电影| 91爱欧美| 日本高清久久| 91bbbbbb| 91色黑人少妇| 人人爱人人操人人性| 在线免费试看60秒| 色播五月婷婷| 久久精品国产亚洲妲己影视| 久久草视频污视频| 色婷婷电影网| 95自拍视频在线观看| 强乱老妇中文字幕| av午夜玫瑰| 色区久久| 无码精品久久久天天影视| 久午视频| 欧亚日韩综合精品国产| 日韩精彩免费| 天天日天天干天天整| 在线观看不卡一区二区三区| 一区二区视频在看| 97大色网| 亚码激情| 国产女人成人精品视频| 涩综合导航| 国产高清成人免费视频| 男人天堂久久精品不卡| 亚州综合色图| 久久精品视频久久久| 99视频内射三四| 亚洲国产一级精品毛一级精品看免费视频| 国产精品久久久| 在线欧美亚洲| 尤物视频新赏网鲜网色诱网| 97超级色碰碰| 亚洲色图 图片| 国产av热热色| 欧美亚洲厕所精品偷拍91| 日本精品性生活久久久| 丝袜天堂| ai欧美亚洲小说| 色大香蕉97N| 亚洲天堂女优在线| 91美女在线精品视频| 日本天堂网| 97在线无精品| 97色涩| 久久久久921| 精品乱码在线观看| 尤物视频偷拍免费| 欧洲站一级二级三级h| 中日韩久久久免费看| 亚洲色婷婷综合久久久久中文| 国产亚洲欧洲在线观看| 99色婷婷中文字幕乱色| 丝袜综合色图| 婷婷另类小说| 天天综合网~91| 久久老熟女| 青娱乐淫乱1314| 日本韩国国产精品一区| 久久久久久久久久久免费精品| 97日韩欧美| 中文字幕日韩电影人妻| 国产高清视频无码在线| 一本精品日本在线视频精品| 日语五十路和六十路亚洲国产精品| 91老熟女视频| 国产日韩在线播放av| 操逼网站视频漫画国产| 干婷婷综合网| 国产怡红院| 麻豆天美在线| 伊人久久综合影院精品久久久| 岛国福利在线精品播放| 久久99亚洲精品久久99果| 久久25| 国产搭汕a级片| 17c在线成人免费A片观看| 97人人射| 欧美 日韩第一性色| 激情小说成人日本无码一| 日韩精品人妻一| 99自拍B亚洲| 欧美97色| 久久精品亚洲成a人天堂| 91黑丝露脚| 久久久一区二区三区麻豆| 看日韩黄片| 91激情| 大香蕉久久| 在线观看亚洲专区| 久久綜合很很很| 亚洲在线网站| A V少妇特黄三级| 激情文学88| 欧美岛国精品在线观看| 免费无码国产精品v片在线观看| 欧洲色色|