原创 [SDIO] SD card 初始化及常用命令解析(附波形,uboot代碼)

目錄 初始化 1.cmd 0 2.cmd8 3.cmd55 4.acmd41 5.cmd2 6.cmd3 7.cmd9 8.cmd13 9.cmd7 10.ACMD51 11.CMD6 12.CMD16 13.CMD17 14.CMD18

原创 [CAN BUS] USB-CAN adpter / USB轉CAN 開源項目推薦(CANable candlelight cangaroo)

照理來說,USB-CAN這種東西應該已經被做的爛大街的工具,國內居然沒有一個拿得出手的開源方案。淘寶上各種虛擬串口方案、替換dll兼容某立功軟件的各種方案....價格都很低,性能和可靠性嘛.......就不多說了。 這裏推薦一個國外的開源

原创 [PCIe] SR-IOV (單根虛擬化) 及linux驅動淺析(device的PF和VF及其驅動)

網上從服務器和虛擬化層面介紹SR-IOV應用的文章很多了。 本文重點從支持SR-IOV的設備(EP)及其驅動來討論。 對於SR-IOV的設備(EP)來說,無非就是一個device通過物理功能(PF)虛擬出關聯的若干個虛擬功能(VF)。 h

原创 eMMC Sampling Tuning and linux mmc driver support

目錄 1. eMMC 總線 Sampling Tuning 1.1 Sampling Tuning 流程 1.2 Tuning Block 數據 1.3 retuning mode 2. linux mmc driver中的retunin

原创 [linux] .gpg 格式加密文件解密操作

 最近拿到一個.tgz.gpg的加密打包文件,竟不知道如何解壓。 以input_file.tgz.gpg 文件爲例,需要先將其解密(用gpg命令) gpg --output output_file.tgz --decrypt input

原创 「博文連載」PCIe掃盲——PCIe演進方向?CCIX簡介

摩爾定律逐漸降速,業界需要一同尋找提升計算性能、同時保持低功耗的方法。CCIX聯盟的成立旨在實現一種新型互聯,專注於新興的加速應用,如機器學習、網絡處理、存儲卸載、內存數據庫和4G/5G 無線技術。這個標準使得基於不同指令集的處理器,將緩

原创 [CAN Bus]有關 CAN 總線 通訊可靠性的 N個問題

目錄   第1問:總線中有若干節點,若某節點發送一幀報文且被ACK,那麼能保證總線上所有節點都收到了這幀報文嗎? 第2問:當總線中一節點接收到一幀報文,且這幀的仲裁域(ID)與接收節點的過濾器不匹配。也就是說接收節點並不會將這幀數據放入接

原创 [PCIe] Hot reset and FLR reset Performing in linux

“熱重置”是通過PCI Express鏈路觸發的常規重置。當鏈路被迫進入電氣空閒狀態時,或通過發送帶有熱復位bit的TS1和TS2有序集來觸發熱復位。軟件可以通過設置然後清除設備上游橋接端口的PCI配置空間中橋接控制寄存器中的輔助總線復位

原创 [SDIO]Read Wait 讀等待機制

sdio 協議的read wait機制相當於是一個流控功能。在執行多塊讀後,sd卡會在每一個SDCLK持續發送數據。如果host內部的DMA或CPU已經來不及搬運這些數據了,導致controller 的buffer overflow,數據

原创 [uboot] 打印等級和開關設置 dev_info,dev_debug,debug

debug(...); 的開關在U-boot\include\configs\xxx.h 中 #define CONFIG_DEBUG   dev_info,dev_debug...等dev_xxx打印開關通過log等級來確定 make

原创 [PCIe] [電源管理] 面向硬件的ASPM鏈路狀態和L1子狀態

PCIe設備的低功耗狀態要求系統驅動程序顯式地將設備置於低功耗狀態,從而PCIe鏈路則可以依次變爲低功耗鏈路狀態。PCIe規範允許PCIe鏈路在沒有系統驅動的情況下進入低功耗狀態。這個特性就是所謂的主動狀態電源管理(ASPM)。一般來說,

原创 [misc] fatal error: hugetlbfs.h: No such file or directory

  編譯代碼包含: #include <hugetlbfs.h> 編譯報錯:xxx fatal error: hugetlbfs.h: No such file or directory   原因:缺少libhugetlbfs,需要重新安

原创 [PCIe]PCIe設備在一個系統中是如何發現與訪問的

首先我們來看一下在x86系統中,PCIe是什麼樣的一個體系架構。下圖是一個PCIe的拓撲結構示例,PCIe協議支持256個Bus, 每條Bus最多支持32個Device,每個Device最多支持8個Function,所以由BDF(Bus,

原创 CAN 總線 N問

目錄   第1問:總線中有若干節點,若某節點發送一幀報文且被ACK,那麼能保證總線上所有節點都收到了這幀報文嗎? 第2問:當總線中一節點接收到一幀報文,且這幀的仲裁域(ID)與接收節點的過濾器不匹配。也就是說接收節點並不會將這幀數據放入接

原创 【PCIe】AER linux 驅動淺析

AER及linux內核驅動簡介:https://blog.csdn.net/u010443710/article/details/104649179 1. AER 中斷 首先AER驅動作爲錯誤上報和處理的機制,必須有一個錯誤上報的入口。