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.

AM5749: BARE board initialization using usb-jtag

Part Number: AM5749
Other Parts Discussed in Thread: UNIFLASH

Hi.

We made board with AM5749. USB debug schematic was taken from am5749 IDK design.

This is bare board, there are no boot monitor and u-boot inside. SBL also all with FF

Currently we unable to connect to am5749 via USB jtag using ccs\uniflash\sdk scripts, oscilloscope detects signal from CPU to ft2232h, but sowtware unable to detect am5749

Just look at screenshots:

What proper sequence to perform base initialization?

What proper firmware we need to flash into ft2232h?

  • Hi,

    Ivan Korotkevich said:
    What proper firmware we need to flash into ft2232h?

    If you haven't done so, please use the FTDI template in the section "Template Collection" of the XDS100 page at:

    http://software-dl.ti.com/ccs/esd/documents/xdsdebugprobes/emu_xds100.html 

    If programming the FTDI device does not work, it would be interesting to compare the schematics with the reference design shown at section "Target Connection Design" of the XDS Target Connection Guide page at:

    https://software-dl.ti.com/ccs/esd/documents/xdsdebugprobes/emu_xds_target_connection_guide.html  

    Additional details about the connection error can be found at the Debugging JTAG page below (just search for the error number). 

    https://software-dl.ti.com/ccs/esd/documents/ccs_debugging_jtag_connectivity_issues.html 

    Hope this helps,

    Rafael

  • Thank you. This valuable information is missing in SDK.

    What about boot initialization steps?

    I`m read  that boot sequence from cortex core rom, redirected to qspi flash eeprom. it is named as SBL

    But our board is bare and we need to flash this qspi eeprom. There are nothing about this steps in am5749 sdk.

    What steps we meed to perform.

  • Ivan,

    Were you able to resolve the JTAG connection issue with the links provided by Rafael? This is unclear from your recent post. If this is resolved and you can access the target through the emulator, you can leverage the flash utility through the JTAG. Please see http://software-dl.ti.com/processor-sdk-rtos/esd/docs/06_01_00_08/rtos/index_board.html#uniflash , section 3.5.1.6. Programming FlashWriter.

    Flash Writer binary is the target software, used to program the binaries on to the flash devices of the target platform.

    There are two ways of loading and executing the Flash Writer on to the target platform:

    Loading Flash Writer via ROM boot (over UART interface), for the target platforms that support UART Boot mode
    Loading Flash Writer over JTAG interface, for the target platforms that do not support UART Boot mode

    Best regards,

    Dave

  • Hello, Dave.

    We succesfully resolved first step (flashing ftdi chip to enable onboard xds100 debug via usb) and now am5749 is fully visible in CCS  debug session.

    Second step is programming QSPI ROM. We need SBL firmware for IDK5749 board. Where we can find this file?

    Also we unable to connect uniflash. There are ccxml error.

    I`m attached made with ccs10 ccxml config that was succesfully tested in ccs10 via helloworld project.

    But this ccxml can`t be loaded via uniflash (v5.3.1). So provided by Dave instructions can`t be executed.

    try linux too. Same result:

    Initializing: CortexA15_0

    Executing Startup Scripts: CortexA15_0
    GEL: CortexA15_0: GEL Output: --->>> AM574x Cortex A15 Startup Sequence In Progress... <<<---
    GEL: CortexA15_0: GEL Output: --->>> AM574x Cortex A15 Startup Sequence DONE! <<<---
    Initializing: CortexA15_1
    Executing Startup Scripts: CortexA15_1
    GEL: CortexA15_1: GEL Output: --->>> AM574x Cortex A15 Startup Sequence In Progress... <<<---
    GEL: CortexA15_1: GEL Output: --->>> AM574x Cortex A15 Startup Sequence DONE! <<<---
    Initializing: CT_STM_Config
    Executing Startup Scripts: CT_STM_Config
    Initializing: CT_TBR
    Executing Startup Scripts: CT_TBR
    Initializing: PRU_0_ICSS1
    Executing Startup Scripts: PRU_0_ICSS1
    Initializing: PRU_1_ICSS1
    Executing Startup Scripts: PRU_1_ICSS1
    Initializing: PRU_0_ICSS2
    Executing Startup Scripts: PRU_0_ICSS2
    Initializing: PRU_1_ICSS2
    Executing Startup Scripts: PRU_1_ICSS2
    Connecting...
    error: Cortex_M4_IPU1_C0: Error connecting to the target: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 8.4.0.00006)
    Failed: Operation was aborted

    Maybe it is require some special ccxml file?

    v10_ccsccxml.zip

  • Ivan,

    It's great you were able to solve the JTAG connectivity issue. For the SBL, there are two pre-built binaries, including QSPI, for the AM574x at <install_dir>\pdk_am57xx_1_0_16\packages\ti\boot\sbl\binary\idkAM574x.

    When you connect to the target in CCS, are you able to connect to all of the cores, including the Cortex_M4_IPU1_C0?

    Best regards,

    Dave

  • Hello, Dave.

    Yes i can connect and see registers and memory for all cores.

    But our new board still as brick becouse i need complete 2 important and mandatory tasks:

    At the first i need program i2c EEPROM (bus 0 0x50) with data from my original IDK5749 (I had one:) ), because u-boot bootloader cant detect my board as IDK5749 and i`m can`t use i2c commands to programm eeprom from u-boot. I don`t know how perform this task.

    At the second, i need usefull manual how i can flash SPI eeprom (SDK instruction with uniflash unusable - error at loading flasher). We add SATA port to new board and want  nitialise board from QSPI FLASH EEPROM and boot linux from sata. I`m already compiled u-boot loader with sata driver support but stil unable to test, because board detected as beaglebone x15 unknown.

  • Ivan,

    Coming back to an earlier update on the thread, I think the JTAG error needs to be resolved, which should then allow you to use the uniflash over JTAG.

    You have:

    >>>

    Connecting...
    error: Cortex_M4_IPU1_C0: Error connecting to the target: (Error -1170 @ 0x0) Unable to access the DAP. Reset the device, and retry the operation. If error persists, confirm configuration, power-cycle the board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 8.4.0.00006)
    Failed: Operation was aborted

    <<<

    Are you able to connect to an AM5749 IDK without a problem?

    Best regards,

    Dave

  • Ivan,

    Additionally, can you confirm for me the ccxml file you are using? It doesn't match the AM5749 IDK xml from either CCS 9.x or 10 releases. From the file name it looks like v10 is referenced. If you have v10, the xml is located at <install_dir>\ccs1000\ccs\ccs_base\common\targetdb\boards\idk_am574x.xml

    Best regards,

    Dave

  • Hi.

    Main bare board initialisation questions already solved.

    JTAG ftdi programmed (thanks for provided link)

    i2c related problem solved in hardware (some chips lockdown bus )

    ID eeprom programmed using topics with u-boot commands from forum.

    Method with uniflash abandoned, u-boot better for me.