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 boot of TMS320dm6437

Other Parts Discussed in Thread: TMS320DM6437

Hi

I'm trying to make a tms320dm6437 (own board layout) boot from NAND device (Samsung K9F1208X0C).

I have used genAIS.pl script using the following .bat script to construct a binary AIS script:

 perl genAIS.pl -otype bin -i GPIO_test.out -o GPIO_nand.bin -bootmode nand -datawidth 8 -cfg configfile.cfg 

The config file contains:

0x5853590D # Function Execute Command
0x00030000 # Selects PLL configuration function, with 3 arguments
0x00000015 # PLLM value
0x00000000 # PLLDIV 0
0x00000000 # Clock source
0x5853590D # Function Execute Command
0x00050001 # Selects EMIFA configuration, with 5 arguments
0x3FFFFFFC # AB1CR control register mask
0x3FFFFFFC # AB2CR control register mask
0x3FFFFFFC # AB3CR control register mask
0x3FFFFFFC # AB4CR control register mask
0x00000000 # NANDFCR control register mask
0x5853590D # Function Execute Command
0x00090002 # Selects DDR memory configuration, with 9 arguments
0x00000017 # DDR PLLM
0x00000001 # PLL SRC
0x0000000B # DDR CLLK DIV
0x00000000 # VPBE CLK DIV
0x50006405 # DDR Control register mask
0x00138822 # SDRAM Config register mask
0x16492148 # SDRAM Timer 0 register mask
0x000CC702 # SDRAM Timer 1 register mask
0x000004EF # SDRAM Refresh control register mask

As I understand from the SPRAAG0D App report this image should be loaded into flash from block 0 page 0 and forward if possible. Furthermore the number of pages the image spans should be written to the second Uint32 of the image. I have done this and constructed a program which writes the AIS script to the flash device. This program also reads the flash again to a new file after it has written the program. This way I can test the data written. If I make a binary diff of the two files, the only difference is the number of pages written and a zero-padding of the last page in the flash. I have set the DIP-swithes to boot from NAND flash and when using an oscilloscope during reset of the device I see the CE toggle. But the program does not seem to load correctly.

Does anybody have some pointers to how I can debug this?

  • Andreas,

    This question does not really seem to be BIOS specific, so I will go ahead and move it to a DM forum in hopes that it will get a faster response there.

    Dave

  • I have tried to use bootload the led_test program to the EVM board. To achieve this i generate an AIS script with the genAIS perl script distributed in the zip file with SPRAAG0D. I run the genAIS script with the following arguments:

    perl genAIS.pl -otype bin -i led.out -o led_nand.bin -bootmode nand -cfg ..\evm\evmdm6437.cfg (I've tried both with and without the config script -cfg)

    I then download the AIS file by placing it on the base of my C-drive and run the NANDwriter project. I import the project into CCSv4 and run the code in the debugger. When running this project it asks for a file to download where I write

    c:\led_nand.bin

    It then downloads the program and writes that it has been succesfully downloaded (i see the program chip-select the NAND device with my oscilloscope).

    When I power-cycle the device I again see that the NAND device is chip-selected a number of times, but the LED's doesn't change as they are supposed to.

    The Boot-setting switches are set as can be seen here

    Can anyone tell me how to further debug this issue?