今天在新闻组上看到这样的内容,就试了一下。果然可以。
现在我是把target machine当作tftp server。由于不用pb download,所以必须disable kitl,disable kernel debugger.最好release version.
1) copy the public\common\oak\ethdbg\eboot\ into platform\<Your
BSP>\drivers\ethdbg\eboot\
2) modify the sources under platform\<Your BSP>\drivers\ethdbg\eboot add the
RELEASETYPE=PLATFORM macro
3) modify the sources file of platform\<Your BSP>\EBoot, change the
$(_COMMONOAKROOT)\lib\$(_CPUDEPPATH)\eboot.lib into
$(_TARGETPLATROOT)\lib\$(_CPUDEPPATH)\eboot.lib
4) Modifying codes under platform\<Your BSP>\drivers\ethdbg\eboot\ebsimp.c
So you could modify the EbootInitEtherTransport in ebsimp.c
at about line 302 , change the EDBG_DOWNLOAD_PORT to the regular TFTP port (69) of EbootInitTftpSimple's parameter. Modify the EbootInitTftpSimple (pEdbgAddr, htons(69), htons(69), "nk.bin")
Then build a new eboot and burn it to flash.
5) Modify config.bib as like the followings:
IF IMGFLASH
; Name Start Size Type
; ------- -------- -------- ----
RSVD 80000000 000FF000 RESERVED
ARGS 800FF000 00001000 RESERVED
NK 9C700000 01400000 RAMIMAGE
RAM 80100000 01F00000 RAM
ENDIF
IF IMGFLASH!
RSVD 80000000 000FF000 RESERVED
ARGS 800FF000 00001000 RESERVED
NK 80100000 01400000 RAMIMAGE
RAM 81500000 00B00000 RAM
ENDIF
6) Make sure bin file name in release directory is nk.bin,then power on target machine.
7)open cmd and type "tftp -i 192.168.190.2 put D:\SOURCE_CODE\WINCE5
00\PBWorkspaces\WindowTV\RelDir\WindowTV_ARMV4I_Release\nk.bin"
Then cmd will show "Transfer successful: 6284235 bytes in 21 seconds, 299249 bytes/s".
and hypertermial will show:
INFO: FlashErase: erasing flash BC700000 to BCD3FFFF. Please wait...) Built onetaddr[0] = 0x0
.........................4 2004 at 18:25:005
INFO: FlashWrite: writing to flash...evision=4000Init:HWInit ethernetaddr[
........................INFO: FlashWrite: verifying the data written to flash...ernetaddr[3] = 0x53
Sp=ff
INFO: FlashWrite: flash programmed successfully!
ROMHDR at Address 9C700044h
********** FlashStart_Addr = 0xBC640000 ************
INFO: FlashErase: erasing flash BC640000 to BC67FFFF. Please wait...lt
Unfortunately,we will wait,Because It can not boot up.
So the last step:
8: Reset the target machine again and press SPACE key, type L to hyperterminal(launch existing image in flash).
and os is on.
步骤很繁琐。只是有另一种体验。实际我们可以自己写一个tftp client。我在想这个对updateimage app有什么影响。
我下面试一下把target machine 当作client。