0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

在Petalinux中應(yīng)該如何確認(rèn)dev目錄下設(shè)備的對(duì)應(yīng)關(guān)系?

YCqV_FPGA_EETre ? 來(lái)源:FPGA開發(fā)圈 ? 作者:Terry Ni ? 2021-03-02 14:34 ? 次閱讀

通常Kernel一加載起來(lái),大家能在/dev目錄下可以看到一大堆的設(shè)備。這些設(shè)備都是Kernel加載初始化過(guò)程中,由內(nèi)核和驅(qū)動(dòng)創(chuàng)建出來(lái)的。那么哪個(gè)設(shè)備才是我真正要用的設(shè)備。下面就幾個(gè)常用的外設(shè)來(lái)和大家一起梳理一下。

反編譯設(shè)備樹

首先第一步是要獲得完整的設(shè)備樹信息。通過(guò)將 dtb 文件反編譯成 dts 文件,你就可以獲得最終的設(shè)備樹文件了。方法是使用dtc小工具,把在你 petalinux 工程下image/linux/system.dtb 文件反編譯成 dts 文件。命令如下:

dtc -I dtb -O dts -osystem.dts system.dtb

有了最終的 dts 文件,就相當(dāng)于我們已經(jīng)有一個(gè)所有設(shè)備的清單。在這個(gè)清單中,我們可以看到每個(gè)設(shè)備在kernel 中都會(huì)有一個(gè)對(duì)應(yīng)的地址。這個(gè)地址就可以和你 Vivado 工程中設(shè)置的地址一一對(duì)應(yīng)。

例如:

f8fcbe0e-74d1-11eb-8b86-12bb97331649.png

查看啟動(dòng)信息,確認(rèn)設(shè)備節(jié)點(diǎn)

在 Kernel 啟動(dòng)過(guò)程中,設(shè)備驅(qū)動(dòng)如果能成功完成初始化,一般會(huì)打印出對(duì)應(yīng)的設(shè)備名稱。例如,如果在 VIVADO 工程中使能了 PS 側(cè)的 UART0,那么你可以在 kernel 啟動(dòng)完成之后,通過(guò) dmesg 指令來(lái)查找 UART0 被注冊(cè)成了哪個(gè)串口設(shè)備。

所以如果使用的是自己的硬件平臺(tái),那么盡量不要使用預(yù)設(shè)的名稱,這樣可以避免導(dǎo)入多余的設(shè)備樹信息從而導(dǎo)致編譯失敗或者最終功能不正確。

f9e82614-74d1-11eb-8b86-12bb97331649.png

查看設(shè)備初始化信息,確認(rèn)設(shè)備節(jié)點(diǎn)

如果驅(qū)動(dòng)在初始化工程中沒(méi)有打印出設(shè)備名稱的話,怎么才能知道對(duì)應(yīng)的設(shè)備是哪個(gè)呢?比如I2C設(shè)備,用dmesg并沒(méi)有找到VIVADO工程中使能的I2C對(duì)應(yīng)的是哪個(gè)設(shè)備。

然后在 /dev 下,你可以看到多達(dá)9個(gè)的 i2c 設(shè)備。

這個(gè)時(shí)候,我們可以去/sys/bus/i2c/device目錄下來(lái)確認(rèn)每個(gè) I2C 設(shè)備對(duì)應(yīng)的節(jié)點(diǎn)

進(jìn)入我們要確認(rèn)的 I2C 設(shè)備,比如 I2C-0 這個(gè)設(shè)備,再用 ls -l 的指令,就可以看到這個(gè)設(shè)備對(duì)應(yīng)的是設(shè)備樹中具體的哪個(gè)節(jié)點(diǎn)了。

總結(jié)

用戶需要使用某個(gè)設(shè)備的時(shí)候可以通過(guò)本文介紹的兩種方法,結(jié)合設(shè)備樹信息就可以明確的找到對(duì)應(yīng)的設(shè)備了。

原文標(biāo)題:開發(fā)者分享 | Petalinux中如何確認(rèn) dev 下設(shè)備的對(duì)應(yīng)關(guān)系

文章出處:【微信公眾號(hào):FPGA開發(fā)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

責(zé)任編輯:haq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1630

    文章

    21786

    瀏覽量

    605073

原文標(biāo)題:開發(fā)者分享 | Petalinux中如何確認(rèn) dev 下設(shè)備的對(duì)應(yīng)關(guān)系

文章出處:【微信號(hào):FPGA-EETrend,微信公眾號(hào):FPGA開發(fā)圈】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    晶振AED設(shè)備的應(yīng)用

    ? ? 晶振AED設(shè)備的應(yīng)用 ? 晶振,這一看似微小的電子元件,卻在AED(自動(dòng)體外除顫器)設(shè)備扮演著至關(guān)重要的角色。隨著AED地圖導(dǎo)
    的頭像 發(fā)表于 01-06 11:18 ?96次閱讀

    ub933驅(qū)動(dòng)程序是基于I2c編寫的,請(qǐng)問(wèn)驅(qū)動(dòng)程序應(yīng)該放在內(nèi)核drivers目錄下的哪個(gè)子目錄里?

    ub933驅(qū)動(dòng)程序是基于I2c編寫的,請(qǐng)問(wèn)驅(qū)動(dòng)程序應(yīng)該放在內(nèi)核drivers目錄下的哪個(gè)子目錄里,驅(qū)動(dòng)注冊(cè)時(shí)應(yīng)該使用什么函數(shù)?
    發(fā)表于 12-13 06:03

    晶振與智能設(shè)備關(guān)系 晶振通信設(shè)備的作用

    晶振與智能設(shè)備關(guān)系 現(xiàn)代智能設(shè)備,晶體振蕩器(晶振)是確保設(shè)備正常運(yùn)行的關(guān)鍵組件之一。智能
    的頭像 發(fā)表于 12-09 09:30 ?303次閱讀

    如何在Petalinux下Patch u-boot源碼

    軟件開發(fā)過(guò)程我們經(jīng)常遇到用 Patch 來(lái)傳遞和更新代碼的場(chǎng)景。本文以一個(gè)端到端的例子來(lái)演示 Petalinux 使用過(guò)程,如何給
    的頭像 發(fā)表于 12-04 16:26 ?1146次閱讀
    如何在<b class='flag-5'>Petalinux</b>下Patch u-boot源碼

    ADS5546模擬輸入和數(shù)字輸出的對(duì)應(yīng)關(guān)系是怎樣的?

    1、從規(guī)格書中沒(méi)有找到ADC的模擬輸入和數(shù)字輸出的對(duì)應(yīng)關(guān)系,請(qǐng)問(wèn)對(duì)應(yīng)關(guān)系如何? 2、我們外部給入0.75V的模擬信號(hào),理論上數(shù)字輸出應(yīng)該
    發(fā)表于 11-15 08:25

    【龍芯2K0300蜂鳥板試用】UART通信測(cè)試3、通信串口

    首先確認(rèn)uart 與tty 的對(duì)應(yīng)關(guān)系 得到的結(jié)果【數(shù)字.serail】部分的數(shù)字為uart 的寄存器地址,末尾為tty的名字。查看芯
    發(fā)表于 09-20 00:32

    SD卡的識(shí)別、掛載、讀寫性能是如何檢測(cè)的呢?

    /testfile of=/dev/null bs=1M 本命令將從SD卡的/mnt/sdcard目錄下讀取testfile文件,并將其輸出到/dev/null,測(cè)試SD卡的讀取性能
    發(fā)表于 07-24 08:18

    如何在ModelSim添加Xilinx仿真庫(kù)

    今天給大俠帶來(lái)FPGA設(shè)計(jì)應(yīng)用如何在ModelSim添加Xilinx仿真庫(kù),話不多說(shuō),上貨。 注意:ModelSim一定要安裝在不帶空格的目錄下,即不要安裝在“Progr
    發(fā)表于 07-03 18:16

    esp-at下的main目錄下是UART AT程序嗎?

    esp-at下的main目錄下是UART AT程序嗎???我example目錄下只看到了SPI AT 和sdio AT 程序,沒(méi)看到有UART。002.png 我執(zhí)行idf.py
    發(fā)表于 06-27 06:55

    I.MX6ULL-飛凌 ElfBoard ELF1板卡 - 如何在Ubuntu編譯OpenCV庫(kù)(X86架構(gòu))

    OpenCV的編譯環(huán)境 (1)自己的目錄下新建一個(gè)opencv目錄: elf@ubuntu:~/work$ mkdir opencv (2)拷貝opencv源碼到opencv目錄下
    發(fā)表于 06-07 09:32

    嵌入式學(xué)習(xí)-飛凌ElfBoard ELF 1板卡 - 如何在Ubuntu編譯OpenCV庫(kù)

    OpenCV的編譯環(huán)境 (1)自己的目錄下新建一個(gè)opencv目錄: elf@ubuntu:~/work$ mkdir opencv (2)拷貝opencv源碼到opencv目錄下
    發(fā)表于 06-07 09:21

    諧波電流和諧波電壓對(duì)應(yīng)關(guān)系

    諧波電流和諧波電壓對(duì)應(yīng)關(guān)系 諧波電流和諧波電壓之間的關(guān)系是電磁學(xué)中非常重要的一個(gè)概念,它們實(shí)際電路和電力系統(tǒng)具有廣泛的應(yīng)用。要理解這種
    的頭像 發(fā)表于 04-08 17:11 ?2694次閱讀

    STM32CubeIDE使用簽名腳本,為什么DEBUG目錄找不到對(duì)應(yīng)的bin?

    STM32CubeIDE使用簽名腳本(STM32CubeMP13封裝 - 入門指南 - stm32mpu (stmicroelectronics.cn)) 然后構(gòu)建,打印顯示構(gòu)建成功,但是DEBUG目錄找不到
    發(fā)表于 03-11 07:57

    vivado2017找不到ZCU102對(duì)應(yīng)的板卡,求解決和分享,應(yīng)該如何解決

    vivado2017找不到ZCU102對(duì)應(yīng)的板卡,求解決和分享,應(yīng)該如何解決
    發(fā)表于 02-29 17:31

    FPGA資源與AISC對(duì)應(yīng)關(guān)系

    芯片。 內(nèi)部互聯(lián)線(Interconnects):用于連接上述的各種資源。 而ASIC是為特定應(yīng)用定制的硬件電路,其設(shè)計(jì)和制造過(guò)程是一次性的。因此,ASIC的資源與FPGA的對(duì)應(yīng)關(guān)系并不直接。 一些
    發(fā)表于 02-22 09:52