使用 linux-dnw 给S5PV210烧录裸机程序

linux下利用dnw烧写文件

1. 下载Linux下DNW
下载地址: https://github.com/changbindu/dnw-linux
文件名: dnw-linux-master.zip

使用 $ unzip dnw-linux-master.zip   解压

2  编译并加载secbulk.c内核模块

    $cd secbulk
    $make -C /lib/modules/`uname -r`/build M=`pwd` modules 

编译成功后在当前目录下可以看到secbulk.ko
用insmod命令加载模块,这需要root权限

     $sudo insmod ./secbulk.ko

加载后用dmesg命令可以看到模块已经成功加载
[ 238.007970] secbulk:secbulk loaded
[ 238.009101] usbcore: registered new interface driver secbulk

开机的时候不会自动加载.ko文件,这样每次都要先加载才可以使用,此时将其加入开机脚本, 使其得到自动加载,编辑/etc/init.d/rc.local 在最后加上 insmod /所在路径/secbulk.ko

3 编译dnw写入工具

根据S5PV210的启动特点写入地址为0xd0020010 为了避免每次烧写输入地址麻烦可以进入dnw.c中修改地址然后再编译。

     $cd dnw
     $gcc -o dnw dnw.c

编译成功后生成可执行档dnw

4 使用DNW下载

     $./dnw /path/to/what/you/want/download

写入完成后提示成功
100% xxxxxxx bytes OK

如果发现速度太慢了,可以修改缓冲区的大小。在源码中
发现是#define BULKOUT_BUFFER_SIZE 32所设定的值太小了。
改为#define BULKOUT_BUFFER_SIZE 512后可发现速度快了很多。”

改了缓冲区大小之后,速度会快很多,设多少自己把握。

猜你喜欢

转载自blog.csdn.net/abf1234444/article/details/50748880