(secbulk目錄下是PC端USB驅動, dnw目錄是下載工具)
1.首先解壓縮文件:
- # tar xvf dnw_for_linux.tar.gz
復制代碼2.然後切換到下面的目錄,編譯usb驅動模塊:
- # cd dnw_for_linux/secbulk
- # make -C /lib/modules/2.6.33.6-147.fc13.i686/build/ M=/home/lhc/Desktop/dnw_for_linux/secbulk/ modules
復制代碼注 意:相應路徑要替換成你機器的路徑。/lib/modules/2.6.33.6-147.fc13.i686/build/目錄中 “2.6.33.6-147.fc13.i686”是當前啟動內核版本,如果你是多內核要注意了(不確定可以終端uname -r命令查看內核版本)。
3.編譯完成後,會生成secbulk.ko文件:
- # ls
- Makefile Module.symvers secbulk.ko secbulk.mod.o
- modules.order secbulk.c secbulk.mod.c secbulk.o
復制代碼4.加載模塊到Linux內核:
- # insmod ./secbulk.ko (注意要在root權限下)
- # dmesg (查看是否加載成功)
- secbulk:secbulk loaded
- usbcore: registered new interface driver secbulk (看到這樣兩行就說明成功了)
復制代碼5.下面開始編譯dnw工具
- # cd ../dnw
- # gcc -o dnw dnw.c
復制代碼(編譯完成,會看到dnw可執行文件)
6.將文件copy到/usr/local/bin目錄
- # cp dnw /usr/local/bin
復制代碼(這樣就可以在shell下面直接使用dnw命令了)
使用方法如下:
1.在minicom下,從Nor Flash啟動TQ2440,選擇3功能:
- [3] Download Linux Kernel (zImage.bin) to Nand Flash
復制代碼2.此時,打開另一個終端:
- # su
- # dnw work/linux-2.6.30.4/zImage.bin
- file name : work/linux-2.6.30.4/zImage.bin
- file size : 2305544 bytes
- Writing data...
- 100% 2305554 bytes OK (此時就將zImage鏡像下載到開發板了)
復制代碼3.再看下minicom的輸出信息
- Enter your selection: 3
- USB host is connected. Waiting a download.
-
- Now, Downloading [ADDRESS:30000000h,TOTAL:2305554]
- RECEIVED FILE SIZE: 2305554 (562KB/S, 4S)
-
- NAND erase: device 0 offset 0x200000, size 0x300000
- Erasing at 0x4e0000 -- 100% complete.