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.

AM3358: AM3358 boot time power up issue

Part Number: AM3358

Hello team,

I CLEARLY MENTIONING THAT THIS IS NOT A DUPLICATE POST

I have created a post earlier with the below link and without noticing properly it was closed by a TI expert. I request kindly observe the post clearly and identify what the issue was and then still if you have doubt that it is a duplicate then confirm with the person who raised the post and then lock the thread.

e2e.ti.com/.../am3358-am3358-boot-issue

I have designed a custom board using AM3358.

In one of the boards I have found that processor is not booting.I have checked the UART log and even CCCCC.... was not coming.

So, I tried connecting the board using CCS(Code Composer Studio) and found the following error.

CortxA8: Output: ****  AM3358_SK Initialization is in progress ..........
CortxA8: Output: ****  AM335x ALL PLL Config for OPP == OPP100 is in progress .........
CortxA8: Output: Input Clock Read from SYSBOOT[15:14]:  24MHz
CortxA8: Output: ****  Going to Bypass...
CortxA8: Output: ****  Bypassed, changing values...
CortxA8: Output: ****  Locking ARM PLL
CortxA8: Output: ****  Core Bypassed
CortxA8: Output: ****  Now locking Core...
CortxA8: Output: ****  Core locked
CortxA8: Output: ****  DDR DPLL Bypassed
CortxA8: Output: ****  DDR DPLL Locked
CortxA8: Output: ****  PER DPLL Bypassed
CortxA8: Output: ****  PER DPLL Locked
CortxA8: Output: ****  DISP PLL Config is in progress ..........
CortxA8: Output: ****  DISP PLL Config is DONE ..........
CortxA8: Output: ****  AM335x ALL ADPLL Config for OPP == OPP100 is Done .........
CortxA8: Output: ****  AM335x DDR3 EMIF and PHY configuration is in progress...
CortxA8: Output: EMIF PRCM is in progress .......
CortxA8: Output: EMIF PRCM Done
CortxA8: Output: DDR PHY Configuration in progress
CortxA8: Output: Waiting for VTP Ready .......
CortxA8: Output: VTP is Ready!
CortxA8: Output: DDR PHY CMD0 Register configuration is in progress .......
CortxA8: Output: DDR PHY CMD1 Register configuration is in progress .......
CortxA8: Output: DDR PHY CMD2 Register configuration is in progress .......
CortxA8: Output: DDR PHY DATA0 Register configuration is in progress .......
CortxA8: Output: DDR PHY DATA1 Register configuration is in progress .......
CortxA8: Output: Setting IO control registers.......
CortxA8: Output: EMIF Timing register configuration is in progress .......
CortxA8: Output: EMIF Timing register configuration is done .......
CortxA8: Output: PHY is READY!!
CortxA8: Output: DDR PHY Configuration done
CortxA8: Output: ****  AM3358_SK Initialization is Done ******************


CortxA8: Output: **** Disabling watchdog start ******************


CortxA8: Trouble Writing Memory Block at 0x44e35048 on Page 0 of Length 0x4: (Error -1065 @ 0x3D5A) Unable to access device memory. Verify that the memory address is in valid memory. If error persists, confirm configuration, power-cycle board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 8.4.0.00006)
CortxA8: GEL: Error while executing OnTargetConnect(): Target failed to write 0x44E35048
     at *((unsigned int *) (0x44E35000+0x48))=(unsigned int) 0x0000AAAA [mad.gel:284]
     at Disable_Watchdog() [mad.gel:368]
     at OnTargetConnect()

If I try reconnecting again without power cycling , the board is connecting and processor is ready to boot and even I could see CCCC... on the UART log.

I could sense some voltage is not being properly ramped up and is causing issue. If i am sensing correct , Kindly help me in identifying the issue and solving it.

Else let me know what could be the issue.

Kindly reply at the earliest.

Regards

Mad_hu

  • Hi Madhu,

    Sorry, if this was a different thread and I closed it - But from the details you seem to indicate voltage is not being properly ramped up causing the issue.

    Snippet from this thread:

    I could sense some voltage is not being properly ramped up and is causing issue.

    In the other thread from you there is a similar CCS log with info as below, which made me think they are the same issue related to voltage.

    "I could sense some voltage is not being properly connected and is causing issue. If i am sensing correct , Kindly help me in identifying the issue and solving it."

    Other than your BOLD lines indicating this is not a duplicate thread, it is not clear that this it is a different thread.

    While the other thread is being addressed, by HW team I have notified to our SW boot expert to support your question.

    Thanks

  • Hello,

    In one of the boards I have found that processor is not booting.I have checked the UART log and even CCCCC.... was not coming.

    Did you mean some other boards didn't have booting problems? 

    CortxA8: Output: **** Disabling watchdog start ******************


    CortxA8: Trouble Writing Memory Block at 0x44e35048 on Page 0 of Length 0x4: (Error -1065 @ 0x3D5A) Unable to access device memory. Verify that the memory address is in valid memory. If error persists, confirm configuration, power-cycle board, and/or try more reliable JTAG settings (e.g. lower TCLK). (Emulation package 8.4.0.00006)
    CortxA8: GEL: Error while executing OnTargetConnect(): Target failed to write 0x44E35048
         at *((unsigned int *) (0x44E35000+0x48))=(unsigned int) 0x0000AAAA [mad.gel:284]
         at Disable_Watchdog() [mad.gel:368]
         at OnTargetConnect()

    Your board should be connected after message "AM3358_SK Initialization is Done" is displayed. Did you do anything else before you saw the above error?

    Thanks,

    Jianzhong

  • Hello 

    Did you mean some other boards didn't have booting problems? 

    Yes, I have some other boards where there are no booting issues. they are working fine.

    Your board should be connected after message "AM3358_SK Initialization is Done" is displayed. Did you do anything else before you saw the above error?

    No my board is not connecting until I try to connect again. But, next time when I try to connect no failure is happening. So I feel that when board is booting for the first time directly also same issue was happening and hence board is not happening. With Jtag, we have the option of connecting again , hence we are able to connect . Without Jtag i.e. direct booting doesn't have this so board is not booting.

    Regards

    Mad_hu

  • I am sorry that both my threads look same but the issues are different. This thread discuss about the board where the boot process is stuck at the last stage i.e Watchdog. But the other thread which discuss about a board where the boot process is hung at the initial stage only i.e Core locking

    Regards

    Mad_hu

  • Hi Mad_hu,

    Because you have some other boards that can boot fine, this looks like a HW issue, as you mentioned earlier:

    I could sense some voltage is not being properly ramped up and is causing issue. If i am sensing correct , Kindly help me in identifying the issue and solving it.

    I'll ask our HW team to help you.

    Regards,

    Jianzhong

  • Does your board have a 32KHz clock source?  Before the last write to the WDT register which fails, can you see what  CLKSEL_WDT1_CLK register holds?

    Regards,

    James

  • Hello James

    Sorry for the delay in response.

    Yes I have 32khz clock source for RTC on my board.

    Due to the second wave of COVID-19 in INDIA , I cannot access my board now. Will update you shortly after I verify the CLKSEL_WDT1_CLK register value.

    Regards

    Mad_hu

  • Hello James ,

    As I posted earlier ,first time an error came when disabling the watchdog and the register holds 0x00000001 at that time.

    Without Power cycling the board, I have reconnected the target again and this time everything went fine and the register holds 0x00000000 this time.

    Regards

    Mad_hu

  • Mad_hu, it does look like a power sequencing issue.  When the register is 0x1, the WDT functional clock is coming from the Peripheral PLL, so something is not right with that PLL during your first error.  When the register is 0, the functional clock source is the RC oscillator, which will be available sooner.  I would check the ramp of each of the power rail and check against the power up sequencing diagram in the datasheet section 6-1 of the datasheet.  Ensure supplies ramp in order shown, oscillator is stable, and then reset PWRONRSTn is released.  this order is important for proper functionality.

    Regards,

    james 

  • Hello James,

    Power sequencing is fine and is as per section 6 only . I could see that oscillator is stable and even reset is also going high as per the section 6 only.

    yellow signal is VRTC
    Green is PWRONRSTn

    Orange is 1.8V supplies

    Blue is RTC_PWRONRSTN

    By mistake this thread is marked as resolved kindly revert it back

    Regards

    Mad_hu

  • Madhu, 

    RTC_PWRONRSTN should go high only after valid 1.8V.  It looks like you have it coincident with 1.8V, and it looks like there is a lot of noise on the ramp.  How is each supply rail being enabled?  You should not see that type of noise on the output.

      Is the oscillator stable when PWRONRSTn goes high (it is not shown in the scope plot)?

    Regards,

    James

  • Hello james,

    RTC_PWRONRSTN is pulled high using a 1.8 rail and it is ramping up after 1.8 rail only. In the above image we cannot discriminate it.
    Also the Oscillator is stable before PWRONRSTn goes high.

    Kindly find the below attachment for that.

    Regards

    Mad_hu

  • Madhu, in the attached pic, the oscillator voltage swing looks to be 8V.  And the noise on PWRONRST looks like it is around 1.5V.  Am I reading that correctly?

    James

  • Hello James

    The oscillator swing is 6V and the noise on PWRONRST signal is available only when we add oscillator signal to the CRO . Looks like some grounding issue.

    Standalone PWRONRST is clean and no such noise which we can observe in the previous plot of sequencing.

    Also one more point to add, The resistance across 1.8V rail  is around 5-10 ohm(Not good) , after huge debug we found that it is across VDDSHV6 pins of the IC and remaining areas it is aroung kohm. The surprising point is tthat, the processor is booting even with this low input resistance. During the debug process only the decoupling capacitors have been removed and the ripple/nosie is observed on the 1.8v rail in the first plot what I have shared.

    Regards

    Mad_hu

  • It seems like you have multiple issues with the board.  I would start comparing/contrasting different boards to see if the same issues exist, and then start from the basics: power, clocking, and resets.  Those have to be stable and consistent on each power up, otherwise it can lead to many other issues.

    Regards,

    James