Suba,
did you ever get your custom board booting from Nand? I just joined the email list and I am having a similar problem. I think there is a bug in the nand.c file included with SPRAAI4 when writing and reading from flash with page size >512 bytes. Below is the offending code snipped from NAND_ReadPage (around line 394):

////////////////////////////////////////
   // Read the page data
   for (i=0; i<numReads; i++)
   {
       // Actually read bytes
flash_read_bytes((PNAND_INFO)&gNandInfo, (void*)(dest), gNandInfo.bytesPerPage); // Get the ECC Value
       eccValue[i] = NAND_ECCReadAndRestart((PNAND_INFO)&gNandInfo);
       //Increment pointer
       dest += gNandInfo.bytesPerPage;
   }
///////////////////////////////////

this code attempts to read in sections of 512 bytes and then get the ECC code for each 512 byte section within the page, but it appears to move the destination pointer by the page size (2048 bytes) on each iteration of the loop, instead of by 512. This also occurs in the NAND_WritePage routine. So, I don't think the correct data is being read or written to flash correctly. I've tried fixing this, but I still can't get my custom board to boot from flash either. Once booted from UART, I can dump the flash contents over the serial port and everything seems correct, but when jumpered to boot from nand, the system still gives the "BOOTME" prompt. Help!!!


Robert


_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to