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.

Reset during bootup

Other Parts Discussed in Thread: DM3730

We are bringing up a 2nd generation board and are having trouble booting.

We are able to erase flash and program the boot loader into flash using the device USB port.

When we try to boot the start up sequence works normally and we do come out of reset. Then we go back into reset about every 2.2ms.

During the boot up we get a couple of chip selects to the flash and then we go back into reset. The chip slect and cle siginals are clean, the data is clean while the cle is transitioning. When the cle goes high and stops activiety the data lines rise to high very slowly. But I think this is just the bus being released when there is no activity. We did not change the flash part number between revisions. We did change DRAM but I believe this failure is happening well before the dram is accessed.

Any feedback on how to trouble shoot this would be helpful. This all happens before the os or application software is running.

Thanks

  • Hi Steve,

    Could you give more details about hardware which you are using? Is it some custom board or beagleboard or something else?

    BR

    Tsvetolin Shulev

  • Hi Tsvetolin,

    This is a 2nd generation custom board. All of the first generation boards booted and worked fine and are still being used by the sw engineering. The 2nd gen board used the same flash but changed to the 168 pin BGA for DRAM instead of the 90 pin BGA. This is a DM3730 CUS package. We are booting with 1101111 boot settings.

    Regards,

    Steve

  • Steve, it sounds like the ROM is attempting to read something from the GPMC interface.  If it is just a few reads, it may just only be reading ID information a failing after that.  If it was more than that then it would move on to read the 1st sector.  You may want to try to read the NAND with some test program to make sure the same ID info is being read and everything has been written correctly to the NAND.  Has the ECC changed in the new NAND, and has the ECC been written correctly in the spare area?  Maybe the new boards have bad blocks in the first few blocks?  Just a few ideas...

    Regards,

    James

  • Hi James,

    That's along the lines I was thinking as well. But we are able to erase and program the bootloader into the flash. The tools report 0 errors on erase and 0 errors on programming. The NAND was purchased at the same time for both the 1st build (working) and the 2nd build (not working). I'll try a few more boards and see if we get any bettery results.

    Thanks for your feedback,

    Steve

  • Steve,

    Can you erase the whole flash and see the behavior? 

  • Hi Renjith,

    Please see attachment of screen shot for complete flash erase. Also, I want to point out that we tried to boot from SD card but the MMC port is not being powered up. The power up sequence from the data sheet shows that the MMC1 port is power up after sys_nreswarm goes high. So I am not sure if we are going back into reset before MMC1 can be power up or if there is some other issue. All other processor voltages are normal.

     

    Steve

     

  • Steve,

    Attachment is missing. Its not yet clear as to what is the behavior after whole NAND is erased. Could you please describe the behavior? 

  • Hi Renjith,

     

    Hmmm I added the attachment. Anyway I'll cut and paste some of the information.

    Here is the erase, it shows successful erase with no bad blocks. see below the ======== for more.

    Found device (omap usb)
    ¯ Waiting for 2nd
    ¯ Found 2nd
    ¯ Looking for a driver for 'NAND1BITBOOT'
    ¯ chip_driver NAND1BITBOOT Targets\Flash-Drivers\nand_onfi_16bit_8bit.bin gpmc 0x6E000000 cs 0 address 0x28000000 bberase 0 eccoffset 2
    ¯ Downloading driver
    ¯ Downloading 'Targets\Flash-Drivers\nand_onfi_16bit_8bit.bin'

    ¯ Sending data (41008 bytes) :::::::::::::::..... [32764]
    ¯ Sending data (41008 bytes) :::::::::::::::::::: [41008]
    ¯ Sending data (41008 bytes) :::::::::::::::::::: [41008]
       Interface 'OMAPFLASH DRIVER v5'
       Driver 'NAND ONFI 16/8 BIT'
       Driver configuration: gpmc = 0x6E000000
       Driver configuration: cs = 0x00000000
       Driver configuration: address = 0x28000000
       Driver configuration: bberase = 0x00000000
       Driver configuration: eccoffset = 0x00000002
       NAND HW ECC
       NAND BCH Mode = 0
       NAND HWECC offset = 2, size = 12
       NAND ONFIv2 VENDOR 0x2C MICRON     
       NAND 16 BIT DEVICE 0xBC MT29F4G16ABBDAHC   
       NAND NAND CYCLES 0x23 (3 ROW, 2 COLUMN)
       NAND 2048 BYTES/PAGE (SPARE 64)
       NAND 64 PAGES/BLOCK (131072 BYTES/BLOCK)
       NAND 4096 BLOCKS/UNIT (536870912 BYTES/UNIT)
       NAND 4 BIT(S) ECC REQUIRED
       NAND 512 MB TOTAL SIZE
       NAND ONFI DRIVER INIT COMPLETE
    ¯ Downloading complete
    ¯ Elapsed time: 0:00.360 (113911 bytes/s)
    ¯ End loading driver
    ¯ Erasing
       Erasing to end of device starting at 0x28000000

       Erase progress .................... [131072]
       Erase progress .................... [10878976]
       Erase progress .................... [21626880]
       Erase progress :................... [32374784]
       Erase progress :................... [43122688]
       Erase progress ::.................. [53870592]
       Erase progress ::.................. [64618496]
       Erase progress ::.................. [75366400]
       Erase progress :::................. [86114304]
       Erase progress :::................. [96862208]
       Erase progress ::::................ [107610112]
       Erase progress ::::................ [118358016]
       Erase progress ::::................ [129105920]
       Erase progress :::::............... [139853824]
       Erase progress :::::............... [150601728]
       Erase progress ::::::.............. [161349632]
       Erase progress ::::::.............. [172097536]
       Erase progress ::::::.............. [182845440]
       Erase progress :::::::............. [193593344]
       Erase progress :::::::............. [204341248]
       Erase progress ::::::::............ [215089152]
       Erase progress ::::::::............ [225837056]
       Erase progress ::::::::............ [236584960]
       Erase progress :::::::::........... [247332864]
       Erase progress :::::::::........... [258080768]
       Erase progress ::::::::::.......... [268828672]
       Erase progress ::::::::::.......... [279576576]
       Erase progress ::::::::::.......... [290324480]
       Erase progress :::::::::::......... [301072384]
       Erase progress :::::::::::......... [311820288]
       Erase progress ::::::::::::........ [322568192]
       Erase progress ::::::::::::........ [333316096]
       Erase progress ::::::::::::........ [344064000]
       Erase progress :::::::::::::....... [354811904]
       Erase progress :::::::::::::....... [365559808]
       Erase progress ::::::::::::::...... [376307712]
       Erase progress ::::::::::::::...... [387055616]
       Erase progress ::::::::::::::...... [397803520]
       Erase progress :::::::::::::::..... [408551424]
       Erase progress :::::::::::::::..... [419299328]
       Erase progress ::::::::::::::::.... [430047232]
       Erase progress ::::::::::::::::.... [440795136]
       Erase progress ::::::::::::::::.... [451543040]
       Erase progress :::::::::::::::::... [462290944]
       Erase progress :::::::::::::::::... [473038848]
       Erase progress ::::::::::::::::::.. [483786752]
       Erase progress ::::::::::::::::::.. [494534656]
       Erase progress ::::::::::::::::::.. [505282560]
       Erase progress :::::::::::::::::::. [516030464]
       Erase progress :::::::::::::::::::. [526778368]
       Erase progress :::::::::::::::::::: [536870912]
       NAND ERASED 536870912 BYTES FROM ADDRESS 0x28000000 (0 BAD BLOCKS)
    ¯ Elapsed time: 0:00.000

    Console program success, exit code: 0

     =====================

    Here is the download of the bootloader through the device usb port.

     Looking for a driver for 'NAND1BITBOOT'
    ¯ chip_driver NAND1BITBOOT Targets\Flash-Drivers\nand_onfi_16bit_8bit.bin gpmc 0x6E000000 cs 0 address 0x28000000 bberase 0 eccoffset 2
    ¯ Downloading driver
    ¯ Downloading 'Targets\Flash-Drivers\nand_onfi_16bit_8bit.bin'

    ¯ Sending data (41008 bytes) :::::::::::::::..... [32764]
    ¯ Sending data (41008 bytes) :::::::::::::::::::: [41008]
    ¯ Sending data (41008 bytes) :::::::::::::::::::: [41008]
       Interface 'OMAPFLASH DRIVER v5'
       Driver 'NAND ONFI 16/8 BIT'
       Driver configuration: gpmc = 0x6E000000
       Driver configuration: cs = 0x00000000
       Driver configuration: address = 0x28000000
       Driver configuration: bberase = 0x00000000
       Driver configuration: eccoffset = 0x00000002
       NAND HW ECC
       NAND BCH Mode = 0
       NAND HWECC offset = 2, size = 12
       NAND ONFIv2 VENDOR 0x2C MICRON     
       NAND 16 BIT DEVICE 0xBC MT29F4G16ABBDAHC   
       NAND NAND CYCLES 0x23 (3 ROW, 2 COLUMN)
       NAND 2048 BYTES/PAGE (SPARE 64)
       NAND 64 PAGES/BLOCK (131072 BYTES/BLOCK)
       NAND 4096 BLOCKS/UNIT (536870912 BYTES/UNIT)
       NAND 4 BIT(S) ECC REQUIRED
       NAND 512 MB TOTAL SIZE
       NAND ONFI DRIVER INIT COMPLETE
    ¯ Downloading complete
    ¯ Elapsed time: 0:00.375 (109354 bytes/s)
    ¯ End loading driver
    ¯ Downloading
    ¯ Downloading 'C:\OMAP3530-nand.raw'

    ¯ Sending data (786432 bytes) .................... [32764]
    ¯ Sending data (786432 bytes) :................... [65528]
    ¯ Sending data (786432 bytes) ::.................. [98292]
    ¯ Sending data (786432 bytes) :::................. [131056]
    ¯ Sending data (786432 bytes) ::::................ [163820]
    ¯ Sending data (786432 bytes) ::::................ [196584]
    ¯ Sending data (786432 bytes) :::::............... [229348]
    ¯ Sending data (786432 bytes) ::::::.............. [262112]
    ¯ Sending data (786432 bytes) :::::::............. [294876]
    ¯ Sending data (786432 bytes) ::::::::............ [327640]
    ¯ Sending data (786432 bytes) :::::::::........... [360404]
    ¯ Sending data (786432 bytes) :::::::::........... [393168]
    ¯ Sending data (786432 bytes) ::::::::::.......... [425932]
    ¯ Sending data (786432 bytes) :::::::::::......... [458696]
    ¯ Sending data (786432 bytes) ::::::::::::........ [491460]
    ¯ Sending data (786432 bytes) :::::::::::::....... [524224]
    ¯ Sending data (786432 bytes) ::::::::::::::...... [556988]
    ¯ Sending data (786432 bytes) ::::::::::::::...... [589752]
    ¯ Sending data (786432 bytes) :::::::::::::::..... [622516]
    ¯ Sending data (786432 bytes) ::::::::::::::::.... [655280]
    ¯ Sending data (786432 bytes) :::::::::::::::::... [688044]
    ¯ Sending data (786432 bytes) ::::::::::::::::::.. [720808]
    ¯ Sending data (786432 bytes) :::::::::::::::::::. [753572]
    ¯ Sending data (786432 bytes) :::::::::::::::::::. [786336]
    ¯ Sending data (786432 bytes) :::::::::::::::::::: [786432]
    ¯ Sending data (786432 bytes) :::::::::::::::::::: [786432]
    ¯ Downloading complete
    ¯ Elapsed time: 0:02.406 (393216 bytes/s)
    ¯ Elapsed time: 0:00.000

    Console program success, exit code: 0

    =============================

    After this we power down and power back up to try to boot from the boot loader.

    We come out of reset for about 350ms then begin repeated resets about every 2.2ms.

    We never get power to the MMC1 port so we can't try to boot from SD card like we have done in the past.

    On an earlier rev board it looks like power is applied to MMC1 about 50ms after coming out of reset.

     

    Steve

     

     

     

     

  • Steve,

    Attachment still missing.

    Let's forget on MMC boot for time being. Let's understand what is going on with NAND.

    If you look at the erase logs you are erasing from the offset "0x28000000" and not from 0x0. I guess x-loader has to loaded to 0x0 and not 0x28000000. Also you have to erase the whole NAND from 0x0. 

    I don't have the OMAP flash tool with me now. Can you confirm whether its flashing at 1-bit ECC or not? If so, as far as I remember DM3730 is expecting BCH 8-bit ECC and not 1-bit Hamming code. 

  • Henith,

     

    I am not sure about the 1-bet ECC but here is what is in the download output. I am the hw engineer and the sw engineer is out today. But I can tell you that the previous version works fine with these settings.

     

    Regards,

     

    Steve

     NAND HW ECC
       NAND BCH Mode = 0
       NAND HWECC offset = 2, size = 12
       NAND ONFIv2 VENDOR 0x2C MICRON     
       NAND 16 BIT DEVICE 0xBC MT29F4G16ABBDAHC   
       NAND NAND CYCLES 0x23 (3 ROW, 2 COLUMN)
       NAND 2048 BYTES/PAGE (SPARE 64)
       NAND 64 PAGES/BLOCK (131072 BYTES/BLOCK)
       NAND 4096 BLOCKS/UNIT (536870912 BYTES/UNIT)
       NAND 4 BIT(S) ECC REQUIRED
       NAND 512 MB TOTAL SIZE
       NAND ONFI DRIVER INIT COMPLETE

  • Steve,

    Do you have an EVM with you? If so, can you try the same procedure on the EVM NAND see whether it works or not?

    What are the differences in your new board when compared to the previous generation? Are you using the same NAND flash on both?

  • Renjith,

    Yes it works with the eval module and the flash is the same as first rev. The board was ported from pads to Altium and the dram was changed from 90 ball BGA to 168 ball BGA. Lots of other changes, but not related to the processor/dram/flash/tps portion.

    If you have any other ideas can we talk on the phone?

  • Steve,

    Send me an email at renjith.thomas@pathpartnertech.com. I'll send you my number.

  • Thanks Renjith,

    This problem is solved.

     

    Steve