国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Banana Pi BPI-W3 RK3588平臺驅動調試篇 [ PCIE篇二 ] - PCIE的開發指南

bananapi開源硬件 ? 來源: bananapi開源硬件 ? 作者: bananapi開源硬件 ? 2023-11-02 09:24 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Banana Pi BPI-W3 RK3588平臺驅動調試篇 [ PCIE篇 ] - PCIE的開發指南(二)

wKgaomVC-i-AZQiOAAJH8vK8vCE230.jpg

一、前言

上一篇已經介紹過如何在3588上使用pcie的資源,這一篇介紹在Linux系統下如何應用pcie接上的設備

二、 PCI 配置空間

一個PCIe系統最多有256條Bus,每條Bus上最多掛32個Device,每個Device最多又能實現8個Function,每個Function對應著4KB的配置空間。PCI設備擁有256B的配置空間,PCIe還提供另外4KB的擴展,這256B的配置空間中前64B是規范了的,其他的字節是各個廠商自己定義的。

2.1 PCI 設備的地址組成

PCI設備的地址是由三個部分組成的,通常以"域(Domain):總線(Bus):設備(Device).功能(Function)"的形式表示:

域(Domain): 域是PCI設備的最高級別的地址組成部分。它用于標識不同的PCI總線。通常,大多數系統只有一個域,因此它的值為0。但在某些情況下,多個PCI域可以用于連接不同的PCI總線,每個域都有唯一的編號。

總線(Bus): 總線標識PCI設備連接到計算機主板上的不同PCI總線。每個總線可以連接多個PCI設備。總線號通常是一個介于0和255之間的整數。

設備(Device): 設備標識特定總線上的不同PCI設備。每個PCI總線可以連接多個設備,每個設備都有唯一的設備號,通常是0到31之間的整數。

功能(Function): 功能標識PCI設備中的不同功能單元。有些PCI設備具有多個功能,每個功能都有唯一的功能號,通常是0到7之間的整數。大多數PCI設備只有一個功能。

這個地址組成使得系統能夠唯一地標識和管理各種PCI設備,以便它們可以有效地與計算機系統進行通信。在使用工具如lspci時,這些地址通常用于顯示和識別PCI設備。 將上一篇介紹的ArmSom-W3開發板的M.2插槽接好對應模組,上電后使用lspci命令查看:

root@linaro-alip:/home/linaro# lspci 0000:00:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd Device 3588 (rev 01) 0000:01:00.0 Non-Volatile memory controller: Intel Corporation NVMe Optane Memory Series 0002:20:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd Device 3588 (rev 01) 0002:21:00.0 Network controller: Realtek Semiconductor Co., Ltd. Device b852 0004:40:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd Device 3588 (rev 01) 0004:41:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 05)

2.2 設備地址分析

lspci命令的輸出會列出所有PCI設備的信息,包括設備的制造商、型號、PCI地址等。輸出通常以文本形式提供,并按總線地址(BDF:Bus, Device, Function)的順序排列。

上述命令使用結果分析:

0000:00:00.0 PCI bridge: Fuzhou Rockchip Electronics Co., Ltd Device 3588 (rev 01)

設備地址:0000:00:00.0 設備類型:PCI橋接器(PCI Bridge) 制造商:Fuzhou Rockchip Electronics Co., Ltd 設備型號:Device 3588 設備版本:rev 01 此設備是一種PCI橋接器,通常用于將其他PCI設備連接到計算機主板上。

0000:01:00.0 Non-Volatile memory controller: Intel Corporation NVMe Optane Memory Series

設備地址:0000:01:00.0 設備類型:非易失性內存控制器(Non-Volatile Memory Controller) 制造商:Intel Corporation 設備型號:NVMe Optane Memory Series 此設備是Intel Corporation生產的非易失性內存(NVMe)控制器,通常用于管理NVMe存儲設備,如高速固態硬盤(SSD)。

0002:21:00.0 Network controller: Realtek Semiconductor Co., Ltd. Device b852

設備地址:0002:21:00.0 設備類型:網絡控制器(Network Controller) 制造商:Realtek Semiconductor Co., Ltd. 設備型號:Device b852 此設備是一塊Realtek Semiconductor Co., Ltd生產的網絡控制器,通常用于連接計算機到網絡。

0004:41:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 05)

設備地址:0004:41:00.0 設備類型:以太網控制器(Ethernet Controller) 制造商:Realtek Semiconductor Co., Ltd. 設備型號:RTL8125 2.5GbE Controller 設備版本:rev 05 此設備是一塊Realtek Semiconductor Co., Ltd生產的以太網控制器,支持2.5千兆比特每秒(2.5GbE)的網絡連接速度,用于連接計算機到網絡。

設備地址"0000:01:00.0"表示了一個PCI設備在系統中的唯一標識。這個地址可以被分解為以下部分來進行分析:

域(Domain): 在這種情況下,域的值為"0000",通常情況下,大多數系統只有一個域,所以它的值通常是"0000"。

總線(Bus): 總線的值為"01",表示這個PCI設備連接到系統的第1個PCI總線。每個總線可以連接多個PCI設備。

設備(Device): 設備的值為"00",表示在該總線上的第1個PCI設備。每個總線可以連接多個設備,它們分別具有唯一的設備號。

功能(Function): 功能的值為"0",表示這個PCI設備只有一個功能單元。一些PCI設備具有多個功能單元,每個功能單元都有唯一的功能號。

這個地址用于唯一標識PCI設備,以便系統可以識別和管理它們。您可以使用這個地址來查詢或配置PCI設備,以及了解它們在系統中的物理位置和特征。

三、PCI設備使用

pcie接口接高速固態硬盤(SSD)的情景較多,這里使用由Intel Corporation生產的非易失性內存(NVMe)控制器,ArmSom-W3開發板使用的內核已經確保系統上已經加載了相應的NVMe驅動程序,并且操作系統能夠正確識別和管理NVMe設備。

3.1 NVMe控制器使用

這里介紹一下使用NVMe控制器的基本步驟:

檢查NVMe設備是否被識別: 運行以下命令,查看系統是否正確識別了NVMe設備

root@linaro-alip:/home/linaro# lspci | grep NVMe 0000:01:00.0 Non-Volatile memory controller: Intel Corporation NVMe Optane Memory Series

如果您看到與Intel Corporation相關的NVMe設備信息,則表示設備已經被識別。

檢查NVMe驅動程序是否加載 使用以下命令檢查系統是否已加載了NVMe驅動程序:

lsmod | grep nvme

如果輸出中顯示了與NVMe驅動程序相關的模塊(例如nvme),則表示驅動程序已加載。

查看NVMe設備信息: 使用以下命令查看NVMe設備的詳細信息,包括設備的名稱、容量等:

root@linaro-alip:/home/linaro# nvme list Node SN Model Namespace Usage Format FW Rev ---------------- -------------------- ---------------------------------------- --------- -------------------------- ---------------- -------- /dev/nvme0n1 PHBT8506028Z016N INTEL MEMPEK1J016GAL 1 14.40 GB / 14.40 GB 512 B + 0 B K4110420

或者使用以下命令查看設備的分區信息:

root@linaro-alip:/home/linaro# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT mmcblk0 179:0 0 29.1G 0 disk ├─mmcblk0p1 179:1 0 4M 0 part ├─mmcblk0p2 179:2 0 4M 0 part ├─mmcblk0p3 179:3 0 64M 0 part ├─mmcblk0p4 179:4 0 128M 0 part ├─mmcblk0p5 179:5 0 32M 0 part ├─mmcblk0p6 179:6 0 14G 0 part / ├─mmcblk0p7 179:7 0 128M 0 part /oem └─mmcblk0p8 179:8 0 14.8G 0 part /userdata mmcblk0boot0 179:32 0 4M 1 disk mmcblk0boot1 179:64 0 4M 1 disk nvme0n1 259:0 0 13.4G 0 disk

在輸出中,NVMe設備通常以/dev/nvmeXnY的形式表示,其中X是NVMe設備的編號,Y是分區編號。

注意: ArmSom-W3固件里NVMe驅動程序相關的模塊已經加載至內核里面 Linux系統通常使用nvme-cli工具執行各種操作,如查看設備信息、執行固件更新、執行健康檢查等

3.2 掛載設備

NVMe設備是/dev/nvme0n1,總容量為14.40 GB,當前使用了14.40 GB

使用以下命令掛載它:

root@linaro-alip:/dev# mount /dev/nvme0n1 /mnt [ 4399.143769] EXT4-fs (nvme0n1): recovery complete [ 4399.145058] EXT4-fs (nvme0n1): mounted filesystem with ordered data mode. Opts: (null)

recovery complete:這是文件系統(EXT4)的恢復消息,它表明文件系統在掛載前進行了一次恢復操作,以確保文件系統的一致性。

mounted filesystem with ordered data mode. Opts: (null):這是文件系統掛載成功的消息,表明文件系統已經成功掛載,并且使用了"ordered data mode"模式。括號中的"(null)"表示沒有指定特定的掛載選項。

使用以下命令卸載設備:

umount /mnt

對于存儲設備,還可以進行分區和格式化操作,這個看個人需要,可以使用工具如fdisk或parted來創建分區,并使用mkfs命令格式化分區

3.3 讀寫測試

對NVMe設備進行讀寫測試,可以使用一些專門的基準測試工具,例如fio或dd命令。 下面是一些基本的操作步驟:

使用fio進行讀寫測試:

安裝fio工具

apt-get install fio

創建一個fio測試配置文件,創建一個名為test.fio的文件,內容如下:

[sequential-read] filename=/dev/nvme0n1 rw=read bs=4k size=1G

這個配置文件將對NVMe設備執行4KB塊大小的1GB順序讀取測試。可以根據需要調整參數。

使用dd命令進行讀寫測試:

運行以下寫測試命令:

sudo dd if=/dev/zero of=/dev/nvme0n1 bs=1M count=1000

其中if參數是輸入文件(通常是/dev/zero,用于寫入測試),of參數是輸出文件(通常是您的NVMe設備),bs參數是塊大小,count參數是要執行的塊數

運行以下讀測試命令:

sudo dd if=/dev/nvme0n1 of=/dev/null bs=1M count=1000

讀寫性能可能會受到多種因素的影響,包括設備型號、硬件配置和測試條件等

wKgaomVC-jWAY2F3ABfg2nCqESE422.jpg



審核編輯 黃宇

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • PCIe
    +關注

    關注

    16

    文章

    1460

    瀏覽量

    88391
  • banana pi
    +關注

    關注

    1

    文章

    132

    瀏覽量

    4244
  • RK3588
    +關注

    關注

    8

    文章

    556

    瀏覽量

    7318
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    RK3588平臺USB攝像頭調試實戰:從報錯到穩定運行

    在嵌入式開發中,RK3588 憑借強勁的算力常被用于邊緣計算、工業視覺等場景,而 USB 攝像頭作為常見外設,調試過程中難免遇到各類 “卡殼” 問題。最近我們在 RK3588
    的頭像 發表于 02-04 16:13 ?281次閱讀

    RK3588平臺雙存儲(SPI+PCIE)OTA升級方案教學文檔

    在嵌入式設備中,單一存儲介質可能存在容量限制或可靠性風險。RK3588 平臺的雙存儲 OTA 升級方案支持SPI(如 SPI NAND/NOR)與 PCIE 存儲(如 PCIE SSD
    的頭像 發表于 02-01 16:46 ?1560次閱讀
    <b class='flag-5'>RK3588</b><b class='flag-5'>平臺</b>雙存儲(SPI+<b class='flag-5'>PCIE</b>)OTA升級方案教學文檔

    RK3588平臺串口配置修改指南:切換至串口8

    在嵌入式開發中,串口作為基礎調試接口至關重要。本文檔針對 RK3588 平臺,詳細介紹如何將系統默認串口修改為串口 8(UART8),包括 U-Boot 階段和內核階段的配置調整。該修
    的頭像 發表于 02-01 16:37 ?1129次閱讀

    實戰復盤:RK3588 SPI+PCIe3x4方案啟動修復,從節點配置到驅動適配全解析

    ? ? ? 在 RK3588 嵌入式項目中, “ 接口配置不匹配 ” 是高頻踩坑點 —— 近期 基于 linux6.1 內核 調試 SPI 閃存 +PCIe3x4 外設 方案時,就遇到了 “eMMC
    的頭像 發表于 01-08 10:24 ?347次閱讀
    實戰復盤:<b class='flag-5'>RK3588</b> SPI+<b class='flag-5'>PCIe3</b>x4方案啟動修復,從節點配置到<b class='flag-5'>驅動</b>適配全解析

    【技術分享】RK3588如何搭建xenomai3+ethercat

    說明使用的RK3588的分支版本是linux-6.1-stan-rkr6內核版本是6.1.99把瑞芯微的SDK更新到linux-6.1-stan-rkr6這個版本即可。編譯xenomai3的內核請參考上一技術分享:技術分享|
    的頭像 發表于 12-11 17:26 ?1039次閱讀
    【技術分享】<b class='flag-5'>RK3588</b>如何搭建xenomai<b class='flag-5'>3</b>+ethercat

    一文搞懂?RK3588 PCIe:從硬件資源到拆分配置?+?避坑指南(含腦圖)

    資源解析、 3? 大拆分方案實戰、關鍵配置步驟及避坑要點,附帶可視化腦圖,助力開發者快速落地? PCIe? 相關項目。 ? ? ? 一、 RK3588
    的頭像 發表于 11-20 18:18 ?3817次閱讀
    一文搞懂?<b class='flag-5'>RK3588</b> <b class='flag-5'>PCIe</b>:從硬件資源到拆分配置?+?避坑<b class='flag-5'>指南</b>(含腦圖)

    開發者必備,10 分鐘搞定 RK3588 PCIE 拆分!

    前言:在嵌入式開發中,PCIe接口的靈活配置直接影響設備擴展能力與性能發揮。RK3588作為旗艦芯片,其PCIe拆分機制更是讓硬件設計與軟件調試
    的頭像 發表于 11-13 08:31 ?1401次閱讀
    <b class='flag-5'>開發</b>者必備,10 分鐘搞定 <b class='flag-5'>RK3588</b> <b class='flag-5'>PCIE</b> 拆分!

    基于瑞芯微 RK3588 的 ARM 與 FPGA 交互通信實戰指南

    本文圍繞創龍科技研發的 TL3588-EVM 評估板,詳解瑞芯微 RK3588 與 FPGA 基于 PCIe 總線的通信案例,包括 DMA 與非 DMA 兩種方式。涵蓋案例功能、測試流程、編譯步驟
    的頭像 發表于 11-04 16:09 ?605次閱讀
    基于瑞芯微 <b class='flag-5'>RK3588</b> 的 ARM 與 FPGA 交互通信實戰<b class='flag-5'>指南</b>

    BPI-AIM7 RK3588 AI與 Nvidia Jetson Nano 生態系統兼容的低功耗 AI 模塊

    Banana Pi BPI-AIM7 RK3588 AI Module7 (AIM7) 配備 64 位八核處理器、6 TOPS NPU、8 GB 內存、
    發表于 10-11 09:08

    BPI-AIM7 RK3588 AI與 Nvidia Jetson Nano 生態系統兼容的低功耗 AI 模塊

    Banana Pi BPI-AIM7 RK3588 AI Module7 (AIM7) 配備 64 位八核處理器、6 TOPS NPU、8 GB 內存、
    的頭像 發表于 10-11 09:06 ?1093次閱讀
    <b class='flag-5'>BPI</b>-AIM7 <b class='flag-5'>RK3588</b> AI與 Nvidia Jetson Nano 生態系統兼容的低功耗 AI 模塊

    【作品合集】玄鐵Banana Pi BPI-RV2開發板測評

    玄鐵Banana Pi BPI-RV2開發板測評作品合集 產品介紹: Banana Pi
    發表于 09-17 10:58

    RK3588 PCIe設備識別失敗?一招避坑“非法Class”陷阱

    前言:在RK3588平臺開發過程中,你是否遇到過這樣的窘境:明明PCIe總線上掛好了網卡模塊,lspci能識別到芯片,可驅動就是加載失敗,排
    的頭像 發表于 08-29 08:32 ?1711次閱讀
    <b class='flag-5'>RK3588</b> <b class='flag-5'>PCIe</b>設備識別失敗?一招避坑“非法Class”陷阱

    Banana Pi BPI-RV2開發板試用體驗】開箱上電

    ?、板載 512MB DDR3 內存 、128 MiB NAND、16 MiB NOR、M.2接?,MINI PCIE和USB 2.0接?等。 Banana Pi
    發表于 06-26 19:51

    Banana Pi BPI-RV2開發板試用體驗】開發板介紹視頻

    .參考資源https://docs.banana-pi.org/en/BPI-RV2/BananaPi_BPI-RV2 https://docs.banana-pi.org/zh/
    發表于 06-24 23:51

    北京迅為RK3588平臺成功適配“望獲”國產OS

    北京迅為RK3588平臺成功適配“望獲”國產OS
    的頭像 發表于 04-09 15:35 ?1055次閱讀
    北京迅為<b class='flag-5'>RK3588</b><b class='flag-5'>平臺</b>成功適配“望獲”國產OS