SPRACN3 September   2019 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , 66AK2L06 , AM5K2E02 , AM5K2E04

 

  1.   Using ARM ROM Bootloader on Keystone II Devices
    1.     Trademarks
    2. Keystone2 Boot loader Overview
    3. Boot Examples Package Download
    4. Software Dependencies
    5. Supported Hardware
    6. Software Features
    7. Directory Structure
    8. Building the Examples
    9. Description of the Examples
      1. 8.1 Single Stage Boot Examples
      2. 8.2 Multi-Stage Boot Example
      3. 8.3 Boot Media-Specific Details
        1. 8.3.1 SPI Boot Example
        2. 8.3.2 I2C Boot Examples
        3. 8.3.3 NAND Examples
        4. 8.3.4 UART Boot Examples
        5. 8.3.5 Ethernet boot examples
        6. 8.3.6 K2E Ethernet Boot Errata Workaround
      4. 8.4 Flashing and Running Boot Examples
        1. 8.4.1 Dip Switch Settings
        2. 8.4.2 Running I2C EEPROM example
        3. 8.4.3 Running SPI NOR Example
        4. 8.4.4 Running NAND Example
        5. 8.4.5 Running UART Example
        6. 8.4.6 Running Ethernet Examples
    10. Boot Utilities
    11. 10 Frequently Asked Questions (FAQ)
    12. 11 References

Running I2C EEPROM example

  • Location of boot image binaries:
    • examples/<k2 device>/i2c/singleStage/bin/i2cImage.dat
    • examples/<k2 device>/i2c/multiStage/bin/i2cImage.dat
  • I2C Flash Writer software:
  • The I2C EEPROM flash writer can be located in MCSDK under the path \mcsdk_bios_3_01_00_01\tools\writer\eeprom\evmk2X. In order to refer to the detailed documentation of the flash writer, see the ReadMe document included in mcsdk_bios_3_01_00_01\tools\writer\eeprom\docs.

  • Flashing the I2C boot examples:
    1. Copy the boot binary (i2cImage.dat) to the \mcsdk_bios_3_01_00_01\tools\writer\eeprom\evmk2X\bin folder and rename the file to app.dat.
    2. Open the file eepromwriter_input and modify the parameters as shown below:
    3. file_name = app.dat bus_addr = 0x50 start_addr = 0 swap_data = 1
    4. Configure the EVM to "No Boot mode" as shown in Section 8.4.1 and connect to the EVM using and emulator and Code Composer studio.
    5. NOTE

      Details to connect to the EVM using Code Composer Studio™ (CCS) are discussed in the Hardware Setup Guide.

    6. Connect to and initialize the Arm core using the Device GEL file found in the emualation pack found here.
    7. Connect to the C66x core and load the eepromwriter_evmk2e.out on the device.
    8. Go to the "View" Menu and open a memory browser and select "Load Memory" in the memory browser. Browse to the boot image and select "Use the file header to set the start address and size of the memory block to be loaded.
    9. Load_mem_0.gifLoad_memory.gifFigure 2. CCS Load Memory Option in Memory Browser
    10. Ensure the start address to base of MSMC (0xc000000) and click finish.
    11. Load_memory_2.gifFigure 3. CCS Load Memory With I2C Boot Binary
    12. Run the eepromwriter_evmk2e.out on the C66x core to flash the binary to the EEPROM on the EVM.
  • Running and verifying the I2C boot:
    1. Set the EVM switches to I2C boot as shown in Section 8.4.1 and connect the serial terminal to host and configure the UART Connect to 115200 baud rate.
    2. Power on the EVM. When the boot completes successfully, the device puts out UART message indicating the cores have woken up and are standing by.
  • The following messages will be displayed on the terminal window:

    Core 0 standing by.... Core 1 standing by.... Core 2 standing by.... Core 3 standing by....