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.

TMS320C6678: C6678 reboot failure using hard reset

Guru 15510 points
Part Number: TMS320C6678

Hi,

I'm having a problem with C6678EVM.

The EVM will be boot by following sequence:
1.Execute IBL
2.Boot from TFTP

When we try re-booting the EVM for test purpose, sometimes it won't boot.
Re-booting will be triggerd by hard reset (setting RSTCTRL and RSTCFG register).
This setting is refered from following E2E post and I included in user boot image.
e2e.ti.com/.../193265

Usually the EVM will reboot but sometimes it won't.
I don't know the reason why it won't reboot sometimes.
If any setting are missing to re-boot via hard reset, can you please give me an advise?

best regards,
g.f.

  • Hi,

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

    Best Regards,
    Yordan
  • g.f.,

    When the reset fails, what does it take to recover the EVM?  Can you issue a RESETz by pressing the WARM RESET button and have it recover?  Or does it take a FULL RESET button press to make it recover?  Does this always work?

    Tom

  • Hi Tom,

    Thank you for the reply.

    Actually, this issue are happening at my customer's C6678EVM(Rev.3B).

    I asked them to press the following reset button of EVM and got the result from the customer:
    //////////////////////////////////////////////////////
    1. WARM_RESET(SW7-P1)
    Result: It didn't recover the EVM.

    2. FULL_RESET(SW8-P1)
    Result: It didn't recover the EVM.

    3.Powering OFF/ON the EVM
    Result: It recovered the EVM.
    //////////////////////////////////////////////////////

    I thought Advisory 25 written in C6678 Errata sheet(sprz334h) page.40 cause this issue.
    But from the result of pressing the above reset button, it seem this issue are not caused by Advisory 25.

    Could you please give us advise, what should we check/do next?

    best regards,
    g.f.
  • g.f.,

    Please have your customer try a different test.  You claim that when they initiate a Hard Reset from their code, the EVM hangs.  Note that the Resets initiated by software are programmable and the outcome depends on the settings.  I would like them to test their EVM simply with the default code provided.  When they power it up, can they still run the OOB demo where they connect over a browser?  What happens when each of these are cycled repeatedly - warm reset button press and full reset button press?  If you repeat this cycle multiple times, do either result in a hang?

    Tom

  • Hi Tom,

    I'm sorry for the delay from me.

    We tested example code of MCSDK v2_01_02_06 on C6678EVM.
    We wrote the example test code(no modificatiaon) to the EVM NOR flash.
    Used code is inside the tools/bootloader/examples/i2c/nor/evmc6678l.

    The boot mode we used is "IBL NOR boot on image 0".

    Pressing WARM reset or RESETFULL once, the application will boot successfully.
    But when I press the warm reset button twice continuously in the same timing,
    it seem C6678 are hanging.
    After this hang issue occur, I connected the EVM to CCS and checked the Program counter.
    The Program counter was always pointing to address 0x20B0_C954(RBL address space).

    And after this hang issue occur, pressing RESETFULL have no effect
    and I need to power cycle the board to escape from the issue.

    Also same issue will occur when pressing RESETFULL button twice continuously in the same timing.

    We don't know what is causing the hang issue.
    I' m sorry but we still need your help.

    best regards,
    g.f.
  • Tom, g.f,

    The location of the hang in the ROM bootloader refer to a function called "_hwCfgPll2Enable". This refers to DDR PLL configuration in the bootROM.

    Regards,
    Rahul
  • Rahul,

    Is the bootrom code waiting for some event at this location that never occurs?  In other words, why would it stall at that point?

    Tom

  • g.f.,

    Can you elaborate on the sequence of events needed to cause the hang?  Are the double reset button presses close together or have you allowed the boot to complete after each button press?

    Tom

  • Hi Tom, Rahul,

    Thank you for the reply.

    >Can you elaborate on the sequence of events needed to cause the hang? 
    >Are the double reset button presses close together or have you allowed
    >the boot to complete after each button press?

    The example sample code which I'm using will output following message to terminnal(TERATERM).
    ******************************************************
    IBL version: 1.0.0.16
    IBL: PLL and DDR Initialization Complete
    IBL Result code 00
    IBL: Booting from NOR


    NOR Boot Over I2C Example Version 01.00.00.00

    Booting Hello World image from NOR flash via IBL over I2C 0x51
    ******************************************************

    I think this message will be output after RBL boot completed.
    And I'm pressing WARM_RESET(SW7-P1) or FULL_RESET(SW8-P1) after this message are displayed to terminal.

    Double reset button press are very close together and pressed after above message are displayed.
    In this case, it will hang.
    The following is th sequence of double reset button press:
    //////////////////////////////////////////////
    Selected Boot Mode : "IBL NOR boot on image 0"
     
    1.Power On the EVM
    2.message displayed to the terminal
    3.Double reset button press (press are very close like double clicking the PC mouse)
    -> never reboot and it seems hanging
    //////////////////////////////////////////////

    But if I press the reset button only once after the message are displayed,
    it will not hang and the message are displayed again.
    The following is th sequence of single reset button press:
    //////////////////////////////////////////////
    Selected Boot Mode : "IBL NOR boot on image 0"
     
    1.Power On the EVM
    2.message displayed to the terminal
    3.Single reset button press
    4.message displayed to the terminal
    5.Single reset button press
    6.message displayed to the terminal
    ->Always reboot successfully without hang
    //////////////////////////////////////////////

    best regards,
    g.f.

  • g.f.,

    The EVM board is a demonstration system.  It contains FPGA logic and Intermediate Boot Loader code to simply the demonstration of the C6678 device.  All of these things are involved in the boot process when the RESET button is pressed.  The test that you are doing is not a valid use case.  We do not have the resources to debug this EVM behavior as it is outside the defined use conditions.  You have established that when you press the button and wait for it to complete booting, it works as expected.

    Tom

  • Hi Tom,

    Thank you for the reply and sorry for the delay.
    I understood that double reset pressing are not use case.

    Double reset pressing was only tested by me.
    My customer are only trying hard reset by software and DSP will hang sometime.

    Is hard reset by software also not a valid use case of EVM?

    best regards,
    g.f.

  • g.f.,

    Let's focus on the reported issue.  Have you been able to reproduce the EVM issue described by the customer?

    Tom