原创 內核和用戶空間的消息傳遞-netlink (3)

未做實驗,待補充。 參考: http://blog.csdn.net/daydring/article/details/24000081

原创 lspci 安裝

在原版的busy-box做出來的 文件系統中,lspci命令只有兩個選項: ynq> lspci -h lspci: invalid option -- 'h' BusyBox v1.20.1 (2012-11-27 13:37:12 M

原创 zynq u-boot配置

以前我們需要修改u-boot的默認串口,是修改配置文件。比如:  dadi@wellav:~/dadi/hevc_workspace/kernel/u-boot-xlnx-xilinx-v2014.4$ cat include/confi

原创 linux下I2C的讀寫

1.在linux下提供另種I2C讀寫方式:  a.  一種是帶寄存器讀寫的方式。(因爲很多I2C設備的操作都是讀寫寄存器,所以Linux提供了這樣一種接口)  b.一種是純粹的數據發送。(a實際上調用的是b來實現) a.方式的實現: 以

原创 內核和用戶空間的消息傳遞-事件通知 (2)

事件通知機制不僅可用戶用戶態兩個線程之間同步,還可以用於內核空間和用戶空間同步。 方法如下: 1.在用戶層 a. 創建一個文件描述符 int event_fd = -1; event_fd = eventfd ( 0, EFD_NONB

原创 內核啓動錯誤:use vmalloc= to increase size.

邏輯部分加了一個PCIE-RC組件,啓動時發現如下錯誤: vmap allocation for size 268439552 failed: use vmalloc=<size> to increase size. xilinx-

原创 PCIE配置失敗,提示 pci 0000:01:00.0: BAR 4: no space for [mem size 0x00200000]

這個原因是因爲分配給PCI的空間,小於分配給BAR的空間,導致空間不夠。 需要在邏輯組件的PCIE-RC屬性裏邊重新設置參數,使得PCI尋址範圍大於BAR空間大小。

原创 PCIE-RC 啓動錯誤 (doesn't match header type 01)

zynq在邏輯段加入了一個RC, 設備樹如下: axi-pcie@50000000 { #address-cells = <0x3>; #interrupt-cells = <0x1>; #size-cells = <

原创 FFMPEG PCR PID修改以及插入間隔計算

用FFMPEG輸出MPEGTS格式時,發現視頻和PCR的PID總是一樣。 查看源碼如下:   /* <strong>update PCR pid by using the first video stream</strong> */

原创 ARM架構 修改DMA大小

問題描述:     在ZYNQ上加載一個視頻編碼芯片驅動失敗,芯片接口爲PCIE。     查看現象,是調用 pci_alloc_consistent  申請DMA空間失敗。      這個函數要被調用很多次,前幾次成功,然後就失敗了,第

原创 zedboard DEMO

1. 最新DEMO下載地址: http://www.wiki.xilinx.com/Zynq+Releases 2. 相關驅動樣例 http://www.wiki.xilinx.com/Linux+Drivers 3. 安卓相關 h

原创 popen + top 獲取系統信息

想實時監視系統信息,用popen+ top 完成。  發現代碼在ubuntu下運行正常,而在arm上一運行,就掛死了。 而運行ls則不會掛死,比較兩個的不同,發現ls是運行一次,而top是一直運行的。 於是修改top命令,改爲只執行一次,

原创 u-boot的配置

1.配置文件路徑 /u-boot-xlnx/include/configs 2.修改啓動方式和其他硬件配置,修改zynq_zed.h,常見的修改如下:     比如nand啓動,則修改宏 #define CONFIG_ZYNQ_QSP

原创 ffmpeg Windows環境搭建

來源:http://blog.csdn.net/leixiaohua1020/article/details/15811977 安裝ffmpeg 開發庫 如果要添加SDL支持,如下:

原创 C/C++ 混編

對於C/C++混編的工程(編譯器默認選擇c++),用C編寫的文件需要按如下兩個步驟處理: 1.  對於.h 文件,需要增加 #ifdef __cplusplus extern "C" { #endif