This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

NAND flash support on DM6467



I know that the RBL of the DM6467 reads device ID from NAND flash before it starts to search for a valid UBL.

Table 4 in SPRAASOC, shows the supported device IDs. I saw that the flash I want to use in my design has device ID that is not on this table.

I have 2 questions:

1) Since the above document is from 05/2008, was the RBL updated since to include more NAND flashes device IDs?

2) If my flash has device ID which is recognized by the RBL, but the spare area (extra bad block data) size is not the same as in table 4, wiil the RBL work with this flash?

  • 1) an RBL update requires a silicon re-spin and does not ocurr very often; normally, when this does happen, both silicon and updated docs are released at the same time.  Unfortunately, in this particular case, there has not been an RBL update.

    2) you also need to make sure that other parameters listed on the table (e.g. block size...) match.

  • Thank you.

    So, regarding the answer for 2, if other parameters match except spare area, it should work?

  • I am pretty sure that is the case; do you have a particular NAND part in mind?  I can run it by our hardware experts and see what they think.

  • I asked about the spare area size since I read some previous messages about the subject and found out that there are cases where RBL succeeds booting from a NAND with identified device ID but with spare area size different from what is written on the table.

    Anyway, thank you for your suggestion.

    Suppose I want to boot from an SPI flash (similar to EVM), are the following steps correct:

    1. Set a new DM6467 to UART boot mode.

    2. Use serial flash utility to burn UBL to SPI flash (Can it do that?)

    3. Set DM6467 to boot from SPI and reboot it.

    4. Use serial flash utility to burn Application boot loader to NAND flash (In this case, the serial flash utility communicates with the UBL for accomplishing this, right?)

    At this point, DM6467 is ready to load kernel application through application boot loader.

    Another question, regarding the UBL: Do I have to change the UBL code for a specific NAND flash I use?

     

     

  • which serial flash utility are you referring to?  There are utilities included under   '.../dvsdk_2_20_00_22/PSP_2_00_00_140/board_utilities/dm646x/' that are specific to SPI, NAND, I2C EEPROM and DVSDK release... I have not tried these myself, but if I wanted to update SPI, this is where I would probably start.  There is also documentation included with regards to how the different boot modes work.

    If you are using a different NAND part than what is found on the EVM, then yes you may need to update UBL, u-boot, and Linux kernel (if you need support at the kernel level that is).  Let me know if this helps clear things up.

  • I am indeed referring to the utilities on the folder you mentioned, though I didn't see any SPI burning utility there - just NAND or NOR flash burning.

    I read the documents about the different boot modes, and there are several of them, but couldn't figure out yet how the whole process of bringing up a new DM6467 board with SPI boot option where SPI has the UBL and NAND flash (which is not identified by the RBL) has the application boot loader (U-Boot). So I hope TI can help me here.

    I want to know what is the right way to bring up the above board and if there is a way to do it without purchasing an expensive JTAG and/or CCS environment.

    Regarding the NAND part I use - yes, it is different from the one on the EVM and it is not supported by the DM6467 RBL. I think I can handle updating the u-boot and kernel (if needed) for that NAND, but regarding the UBL change I have some questions:

    1) What tools are necessary for compiling a new UBL?

    2) If I supply NAND flash details to TI, can TI send me the required UBL?