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.

Starterware/TMDSLCDK6748: Bootloading NAND Flash Not Working

Part Number: TMDSLCDK6748
Other Parts Discussed in Thread: OMAP-L138

Tool/software: Starterware

Hello,

I am working on a 6748 LCDK and have been running programs from chapter 6 of the book "Digital Signal Processing and Applications with the OMAP- L138 eXperimenter." (Specifically Chapter 6 "2 audio IN" adpative filtering) My goal is to run one of these programs from boot loading. All of my program files are working well within the debugger emulation mode, however, when I do the boot loading process, the board will not start the program.  Here is the process I have performed:

1. Take the .out file after building the program and use this with the starterware AISgen_d800k008.exe, using the following settings: 

2. Set the switches of the LCDK to the proper UART2 Boot mode  (off, on, off, on) and connect the USB cable to computer

3. Run the commands on the console to use the starterware program sfh_OMAP-L138.exe in folder   C:\ti\pdk_C6748_2_0_0_0\C6748_StarterWare_1_20_03_03\tools\flash_writer   using command

sfh_OMAP-L138.exe -targettype C6748_LCDK -flashtype NAND -p COM3 -flash_noubl [bin file name].bin.        After this the console says "Operation completed successfully."

4.  Swap the bootmode switches to boot from NAND Mode  (off, on, on, on)  When I listen for the program (its an audio program) the program isn't running.

5.  Lastly, I used the debug gel file from the following link to do diagnostics and the gel file reads "Description: C674X_0: Gell Output: Invalid AIS Keyword"

  

My initial belief is that it has something to do with the program setup, perhaps with the Mcasp peripherals on boot start.  Could someone help me figure out what I am doing wrong?? I am currently using CCSv6.

Thanks

  • Hi,

    I've notified the starterware team. Their feedback will be posted here.

    Best Regards,
    Yordan
  • MR,

    The steps that you have done to create the boot image appear to be correct for the most part. At the moment, I think this has to do with the configuration of the SOC in the AISGeen tool that is causing the issue.

    I had a few questions for you to understand/debug this issue:
    1. I assume this code is running fine when you load and run over emulator, right?
    2. When you use the GEL file, the initialization script performs the PSC, clock, DDR initialization but when you use the ROM bootloader, you need to configure the clocks and the DDR using the boot image created by AISGen tool. Inorder to do this, please configure the PLL0 and PLL1 and DDR configurations. ALso, GEL file enables PSC for all modules which you will need to now do through the boot image.
    3. Are you using RTOS application or bare-metal? for RTOS applications you need to have the entry point of the application aligned as specified here:
    processors.wiki.ti.com/.../Boot_Images_for_OMAP-L138
    4. THe NAND on the LCDK, should first be erased before flashing. So please make sure that you run the erase command before flashing a new image. This is required as the flash is pre-programmed with OOB demo which needs to be erased.

    One suggestion, I would provide is to import the configuration .cfg in the AISGen that we provide under the diretcory path
    AISgen for D800K008\cfg_files

    This file has all the configurations to create a boot image for NAND with the device initializations.

    Regards,
    Rahul
  • Thank you Rahul,  that fixed the issues! The book I was using didn't use the RTOS application and appears to code the interrupts on its own.  I hadn't used the AIS configuration file before, nor had I erased the flash previously since I had seen it mentioned as optional many times.  Thank you so much for the help.

    Just to recap, the fix was to go to the file tab then load configuration choice tab in the AISgen_d800k008.exe file and find the downloaded ais cfg file (mine was called LCDK_AISGen_Config.cfg), then use this file as the load configuration.  Then, create the .bin file of the application of choice.  After this, I ran the erase command:

     "sfh_OMAP-L138.exe -targettype C6748_LCDK -flashtype NAND -p COM3 -erase"

    Finally, I ran the command mentioned in the original post to write the new ais config .bin file to the flash.  I swapped the LCDK to NAND flash boot mode (off, on, on, on) and reset power and it appears to work!  Hope this helps anyone else.