在2240init.s文件内有如下代码:
mov r0, r8
mov r1, r9
bl ReadNandPage
add r9, r9, #512
add r8, r8, #1
4
;cmp r8, #512
cmp r8, #20480
bcc %B2
mov r5, #NFCONF ;DsNandFlash
ldr r0, [r5, #4]
bic r0, r0, #1
str r0, [r5, #4]
]
ldr pc, =copy_proc_beg
将
;cmp r8, #512
改为
cmp r8, #20480
其意思是拷贝多少个“块”的内容到SDRAM内。
在nand.c内也需要修改
如下:
void CopyProgramFromNand(void)
{
const int bLargeBlock = Nand_Init();
//const unsigned StartSector = 0, StopSector = 5120;
const unsigned StartSector = 0, StopSector = 20480; //修改
const unsigned byte_sector_shift = 9;