dnw-linux工具下载 : /changbindu/dnw-linux/9637426
1.连接开发板和和pc之间的usb转串口线,usb线,在pc端打开vim,启动minicom
2.使用sd卡启动开发板,进入uboot
3.输入dnw,会有如下提示
TINY4412#dnw
OTGcableConnected!
Now,WaitingforDNWtotransmitdata
4.在pc中打开新的vim,输入lsusb,会有如下提示
ning@ENVY:/tiny4412/linux-3.5$lsusb
Bus002Device002:ID8087:0024IntelCorp.IntegratedRateMatchingHub
Bus002Device001:ID1d6b:0002LinuxFoundation2.0roothub
Bus001Device003:ID1bcf:2c0eSunplusInnovationTechnologyInc.
Bus001Device002:ID8087:0024IntelCorp.IntegratedRateMatchingHub
Bus001Device001:ID1d6b:0002LinuxFoundation2.0roothub
Bus004Device001:ID1d6b:0003LinuxFoundation3.0roothub
Bus003Device003:ID067b:2303ProlificTechnology,Inc.PL2303SerialPort
Bus003Device032:ID04e8:1234SamsungElectronicsCo.,Ltd
Bus003Device002:ID0458:003aKYESystemsCorp.(MouseSystems)NetScroll+MiniTraveler/GeniusNetScroll120
Bus003Device001:ID1d6b:0002LinuxFoundation2.0roothub
记住ID04e8:1234SamsungElectronicsCo.,Ltd中的04e8:1234
5.解压下载的dnw
进入驱动目录
ning@ENVY:/$ cd /tiny4412/dnw-linux/src/driver/
打开驱动文件
ning@ENVY:/tiny4412/dnw-linux/src/driver$ vim secbulk.c
将idProduct和idVendor改为USB_DEVICE(0x04e8,0x1234)
6.进入dnw目录
ning@ENVY:/tiny4412/dnw-linux/src/driver$ cd ../dnw/
修改下载地址
*((u_int32_t*)write_buf)=0xc0000000;
记住这个地址,待会dnw会下载至这个地址,然后从这个地址拷贝
7.make编译
8.拷贝dnw到制定目录
ning@ENVY:/tiny4412/dnw-linux/src/dnw$sudo cp dnw /usr/bin/
9.装载驱动
ning@ENVY:/tiny4412/dnw-linux/src/dnw$ cd ../driver/
ning@ENVY:/tiny4412/dnw-linux/src/driver$ sudo insmod secbulk.ko
为了不每次都装载可以打开
ning@ENVY:/tiny4412/dnw-linux/src/driver$sudogedit/etc/init.d/rc.local
在文件中加入 sudo insmod /tiny4412/dnw-linux/src/driver/secbulk.ko
10.
dmesg(注意此时开发板依然显示OTGcableConnected!Now,WaitingforDNWtotransmitdata)
[20267.799664]secbulk:secbulkdisconnected!
[20267.799881]secbulk:secbulkunloaded
[20274.612980]secbulk:secbulkloaded
[20274.613033]secbulk:secbulkprobing...
[20274.613038]secbulk:bulkoutendpointfound!
11.开发板操作
TINY4412#fdisk-p1
partion#size(MB)blockstart#blockcountpartition_Id
1695607081214244780x0C
2342446563040x83
3205779054842137700x83
4520500431810664940x83
分区
TINY4412#fdisk-c1357520
成功后有如下信息
Count:10000
fdiskiscompleted
partion#size(MB)blockstart#blockcountpartition_Id
1695607081214244780x0C
2342446563040x83
3205779054842137700x83
4520500431810664940x83
格式化emmc
TINY4412#fatformat mmc 1:1
TINY4412#ext3format mmc 1:2
TINY4412#ext3format mmc 1:3
TINY4412#ext3format mmc 1:4
打开emmc
TINY4412#emmcopen1
eMMCOPENSuccess.!!
!!!Notice!!!
!YoumustcloseeMMCbootPartitionafterallimagewriting!
!eMMCbootpartitionhascontinuityatimagewritingtime.!
!So,Donotclosebootpartition,Before,allimagesiswritten.!
第一步:在开发板输入dnw,等待pc端dnw传过来数据
TINY4412#dnw
OTGcableConnected!
Now,WaitingforDNWtotransmitdata
第二步:在pc端用dnw传输数据
ning@ENVY:/tiny4412/uboot_tiny4412-master$sudodnwsd_fuse/tiny4412/E4412_N.bl1.bin
Filename:sd_fuse/tiny4412/E4412_N.bl1.bin
Filesize:8192bytes
Sumis63a1
Writingdata...
100 8202bytesDone!
开发板接受完毕后会有下面的提示,确认成功后将E4412_N.bl1.bin烧录到emmc
DownloadDone!!DownloadAddress:0xc0000000,DownloadFilesize:0x2000
Checksumisbeingcalculated.
ChecksumO.K.
TINY4412#mmcwrite10xc000000000x10
MMCwrite:dev#1,block#0,count16...16blockswritten:OK
第三步:在开发板输入dnw,等待pc端dnw传过来数据
TINY4412#dnw
OTGcableConnected!
Now,WaitingforDNWtotransmitdata
第四步:在pc端用dnw传输数据
ning@ENVY:/tiny4412/uboot_tiny4412-master$sudodnwsd_fuse/tiny4412/bl2.bin
Filename:sd_fuse/tiny4412/bl2.bin
Filesize:14336bytes
Sumis70e3
Writingdata...
100 14346bytesDone!
开发板接受完毕后会有下面的提示,确认成功后将bl2.bin烧录到emmc
DownloadDone!!DownloadAddress:0xc0000000,DownloadFilesize:0x3800
Checksumisbeingcalculated.
ChecksumO.K.
TINY4412#mmcwrite10xc00000000x100x1c
MMCwrite:dev#1,block#16,count28...28blockswritten:OK
第五步:在开发板输入dnw,等待pc端dnw传过来数据
TINY4412#dnw
OTGcableConnected!
Now,WaitingforDNWtotransmitdata
第六步:在pc端用dnw传输数据
ning@ENVY:/tiny4412/uboot_tiny4412-master$sudodnwu-boot.bin
Filename:u-boot.bin
Filesize:276932bytes
Sumisb70a
Writingdata...
100 276942bytesDone!
开发板接受完毕后会有下面的提示,确认成功后将u-boot.bin烧录到emmc
DownloadDone!!DownloadAddress:0xc0000000,DownloadFilesize:0x439c4
Checksumisbeingcalculated.
ChecksumO.K.
TINY4412#mmcwrite10xc00000000x300x21d
MMCwrite:dev#1,block#48,count541...541blockswritten:OK
第七步:在开发板输入dnw,等待pc端dnw传过来数据
TINY4412#dnw
OTGcableConnected!
Now,WaitingforDNWtotransmitdata
第六步:在pc端用dnw传输数据
ning@ENVY:/tiny4412/uboot_tiny4412-master$sudodnwsd_fuse/tiny4412/E4412_tzsw.bin
Filename:sd_fuse/tiny4412/E4412_tzsw.bin
Filesize:94208bytes
Sumisde09
Writingdata...
100 94218bytesDone!
开发板接受完毕后会有下面的提示,确认成功后将E4412_tzsw.bin烧录到emmc
DownloadDone!!DownloadAddress:0xc0000000,DownloadFilesize:0x17000
Checksumisbeingcalculated.
ChecksumO.K.
TINY4412#mmcwrite10xc00000000x2c00xB8
MMCwrite:dev#1,block#704,count184...184blockswritten:OK
关闭emmc
TINY4412#emmcclose1
eMMCCLOSESuccess.!!
TINY4412#
选择emmc启动开发板
OK
U-Boot.12(Sep19-20:22:54)forTINY4412
CPU:S5PC220[SamsungSOConSMPPlatformBaseonARMCortexA9]
APLL=1400MHz,MPLL=800MHz
Board:TINY4412
DRAM:1023MiB
vdd_arm:1.2
vdd_int:1.0
vdd_mif:1.1
BL1version:N/A(TrustZoneEnabledBSP)
CheckingBootMode...EMMC4.41
REVISION:1.1
MMCDevice0:3728MB
MMCDevice1:15193MB
MMCDevice2:N/A
Net:Noethernetfound.
Hitanykeytostopautoboot:0
readingkernel..device0Start1057,Count12288
MMCread:dev#0,block#1057,count12288...12288blocksread:OK
completed
BootwithzImage
Startingkernel...