现象:主板上电,启动Eboot时,图片有显示,然后等了一、两分钟,就出现黑屏了
串口输出信息:
Step ldr
Nand flash id: 0x0000eca1
here
Microsoft Windows CE Ethernet Bootloader Common Library Version 1.1 Built Oct 26 2008 11:02:56
Microsoft Windows CE Bootloader for the Samsung SMDK2440 Version 2.4 Built Oct 26 2008
InitDisplay
GPA IOPORT 0x7ECFFF
Memory Bank 0x22111120
GPFCON 0x8
BP_Init BINFS_RAM_START = 0xa0080000
FMD::FMD_Init - pBSPArgs->nfsblk = 0x0
FMD::FMD_Init - READ_REGISTER_BYTE(pNFSBLK) = 0x0
FMD::FMD_Init IPL .....
FMD::FMD_Init Done
MID = 0xec, DID = 0xa1 4th Cycle : 0x0
NUMBLOCKS : 1024(0x400), SECTORSPERBLOCK = 256(0x100), BYTESPERSECTOR = 512(0x200)
MID = 0xec, DID = 0xa1 4th Cycle : 0x0
NUMBLOCKS : 1024(0x400), SECTORSPERBLOCK = 256(0x100), BYTESPERSECTOR = 512(0x200)
wNUM_BLOCKS : 1024(0x400)
Press [ENTER] to launch image stored on boot media, or [SPACE] to enter boot monitor.
Initiating image launch in 0 seconds.
Launching image from boot media ...
OEMPlatformInit: IMAGE_TYPE_RAMIMAGE
RAM image
RAM image
IsValidMBR: MBR sector = 0x400
OpenPartition: Partition Exists=0x1 for part 0x21.
BP_SetDataPointer at 0x0
ReadData: Start = 0x0, Length = 0x1240800.
Log2Phys: Logical 0x500 -> Physical 0xa00
System ready!
Preparing for download...
+OEMPreDownload.
waitforconnect
INFO: OEMLaunch: Jumping to Physical Address 0x3022BC28h (Virtual Address 0x8022BC28h)...
C
根据串口输出信息,由最后一条调试信息定位到main.c的代码如下:
// Jump to downloaded image (use the physical address since we'll be turning the MMU off)...
//
dwPhysLaunchAddr = (DWORD)OALVAtoPA((void *)dwLaunchAddr);
OALMSG(TRUE, (TEXT("INFO: OEMLaunch: Jumping to Physical Address 0x%Xh (Virtual Address 0x%Xh)...\r\n\r\n\r\n"), dwPhysLaunchAddr, dwLaunchAddr));
// Jump...
//
Launch(dwPhysLaunchAddr);
当时,我试着重新烧写NK,可仍然会出问题。
串口信息如下:
Step ldr
Nand flash id: 0x0000eca1
her?
Microsoft Windows CE Ethernet Bootloader Common Library Version 1.1 Built Oct 26 2008 11:02:56
Microsoft Windows CE Bootloader for the Samsung SMDK2440 Version 2.4 Built Oct 26 2008
InitDisplay
GPA IOPORT 0x7ECFFF
Memory Bank 0x22111120
GPFCON 0x8
BP_Init BINFS_RAM_START = 0xa0080000
FMD::FMD_Init - pBSPArgs->nfsblk = 0x0
FMD::FMD_Init - READ_REGISTER_BYTE(pNFSBLK) = 0x0
FMD::FMD_Init IPL .....
FMD::FMD_Init Done
MID = 0xec, DID = 0xa1 4th Cycle : 0x0
NUMBLOCKS : 1024(0x400), SECTORSPERBLOCK = 256(0x100), BYTESPERSECTOR = 512(0x200)
MID = 0xec, DID = 0xa1 4th Cycle : 0x0
NUMBLOCKS : 1024(0x400), SECTORSPERBLOCK = 256(0x100), BYTESPERSECTOR = 512(0x200)
wNUM_BLOCKS : 1024(0x400)
Press [ENTER] to launch image stored on boot media, or [SPACE] to enter boot monitor.
Initiating image launch in 4 seconds.
Ethernet Boot Loader Configuration:
0) IP address: 0.0.0.0
1) Subnet mask: 255.255.255.0
2) DHCP: Disabled
3) Boot delay: 5 seconds
4) Reset to factory default configuration
5) Startup image: LAUNCH EXISTING
6) Program disk image into SmartMedia card: Enabled
7) Program DM9000 MAC address (00:00:32:12:33:12)
8) Kernel Debugger: DISABLED
9) Format Boot Media for BinFS
A) auto fast format and download image to flash
E) Erase Reserved Block
S) download image by serial---(SERIAL)
B) Mark Bad Block at Reserved Block
F) Low-level format the Smart Media card
D) Download image now---(ETHNET)
L) LAUNCH existing Boot Media image
R) Read Configuration
U) DOWNLOAD image now---(USB)
W) Write Configuration Right Now
Z) Fast Format Boot Media for BinFS