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.

[FAQ] How do I flash the AM335x SBL and my application into the McSPI flash using the Uniflash tool?

Other Parts Discussed in Thread: UNIFLASH, AMIC110

I have an AM335x board with McSPI flash memory. How do I flash my bootloader and application into the McSPI memory using the Uniflash tool?

  • There are multiple ways to flash the McSPI memory:

    • Using the Uniflash tool, either through UART or JTAG. Complete reference can be found here.
    • Using PDK flash writer through CCS and JTAG. Please refer to this FAQ.
    • Both methods require the application binary to be converted to a specific format. Complete reference regarding format conversion can be found here.

    Here we give an example of using the Uniflash tool to flash the McSPI memory on AMIC110 ICE v2. We will flash both the SBL and an application so that the application will run from the McSPI flash right after a power cycle.

    1. Download and install the Uniflash tool: https://www.ti.com/tool/UNIFLASH

    2. Setup the AMIC110 ICE EVM according to instructions here. Establish a serial connection between the EVM and the host PC through a TTL-232R-3V3 serial cable.

    3. Open a serial console application (e.g. TeraTerm) on the host PC and configure it to 115200, 8 bit, none, 1 bit, none. Connect to the COM port associated with the EVM.

    4. Power on the EVM and make sure character ‘C’ is getting printed on the seral console. Take a note of the COM port number and close the console.

    5. Build an RTOS application. For this example, we chose the PDK example project: GPIO_LedBlink_iceAMIC110_armTestProject.

    • Follow instructions in this FAQ to create PDK example projects. The command to create just this single project is: 

    pdkProjectCreate.bat AM335x iceAMIC110 little gpio test arm

    • Build this project and locate file “app” from the debug folder: C:\ti\pdk_am335x_1_0_17\packages\MyExampleProjects\GPIO_LedBlink_iceAMIC110_armTestProject\Debug
    • This “app” file is the application image generated during the project build. Please refer to the Post-build steps in the project settings:

    • Rename “app” to “GPIO_LedBlink_iceAMIC110_armTestProject_ti.bin”. The file extension ".bin" is necessary for the Uniflash to recognize the file.

    6. Make sure the serial console is closed. Then run the following Uniflash commands to flash the SBL and the LED blink application into the McSPI memory (COM29 should be replaced with the COM port number found in step 4):

    dslite.bat --mode processors -c COM29 -f C:\ti\uniflash_7.0.0\processors\FlashWriter\iceAMIC110\uart_iceAMIC110_flash_programmer.bin -i 0
    dslite.bat --mode processors -c COM29 -f C:\ti\pdk_am335x_1_0_17\packages\ti\starterware\binary\bootloader\bin\am335x-evm\gcc\bootloader_boot_mcspi_a8host_release_ti.bin -d 1 -o 0
    dslite.bat --mode processors -c COM29 -f C:\ti\pdk_am335x_1_0_17\packages\MyExampleProjects\GPIO_LedBlink_iceAMIC110_armTestProject\Debug\GPIO_LedBlink_iceAMIC110_armTestProject_ti.bin -d 1 -o 20000
    

    7. Open the serial console and reconnect to the COM port. Power cycle the board. The serial console should display the following messages and LED D17 should blink.