• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Digital Signal Processors (DSP) » OMAP™ Processors » OMAP-L13x, AM1x and C674x Processors Forum » OMAP-L137 EVM boot problems
Share
OMAP™ Processors
  • Forums
  • Announcements
Options
  • Subscribe via RSS
Resources
  • OMAP-L1x DSP+ARM9™-based Processors Product Folder
  • OMAP3525/30 DSP+ARM Cortex™-A8-based SOCs Product Folder

  • Top OMAPL Wiki Links
  • OMAPL3x Schematic Review Checklist
  • OMAPL13x Boot resources

  • OMAPL Document Resources
  • OMAPL137 Technical reference manual
  • OMAPL138 Technical reference manual
  • OMAPL Boot loader App Notes
  • OMAP-L137 EVM boot problems

    OMAP-L137 EVM boot problems

    This question is answered
    Rob Kirschner
    Posted by Rob Kirschner
    on Jun 05 2012 11:52 AM
    Prodigy60 points

    Hi,

    I've got a OMAP-L137 EVM that I have been trying to get to boot MontaVista Linux. I have been told that the board should be able to boot into the SD card supplied with the EVM out of the box, with no configuration required. However, when I try to boot the device, this happens in my terminal:

    U-Boot 1.3.3 (Apr 23 2009 - 17:32:00)

    I2C:     ready

    DRAM:     64 MB

    *** Warning - bad CRC, using default environment

    In:    serial

    Out:     serial

    Err:     serial

    ARM Clock  :  300000000 Hz

    More than one PHY detected.

    Hit any key to stop autoboot:     3...2...1...0

    The boot sequence then drops to a U-boot prompt ( U-Boot > )

    If I attempt to boot using the bootm command, I get an error about not being able to find the kernel image. At this point I assumed something must have been wrong in the initial flash of the device, so I attempted to follow the instructions to reflash the EVM (http://processors.wiki.ti.com/index.php/Omapl137/DA830_linux_bootup). I get as far as running the spiflash_writer.out program on the device, and I get this error:

    SF: Got idcode ef 40 16
    SF: Unsupported Winbond ID 4016
    Serial Flash not detected

    At first I thought this was maybe a defective board, so I got a second one. The second board behaves exactly the same way in every case. However, I can run the spi flash writer utility on a third l137 EVM that someone else has set up which boots Linux fine.

    So long story short, this device, which should be able to boot with the out of the box configuration, not only won't boot, but also won't let me reflash it. Any help as to what I'm doing wrong?

    Sorry if this is posted in the wrong section.

    -Rob

    EDIT: I should mention that the owner of the board that boots said that he just followed the procedure on that link to flash his board and everything worked for him. He was able to boot from the included SD card into MontaVista linux with no problems.

    omap l137 evm boot u-boot flash spi
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    All Replies
    • Vincent Latapie
      Posted by Vincent Latapie
      on Jul 02 2012 16:30 PM
      Prodigy245 points

      Hi Rob,

      you may try to run the FlashAndBootUtilities 

      http://processors.wiki.ti.com/index.php/Serial_Boot_and_Flash_Loading_Utility_for_OMAP-L137

      http://processors.wiki.ti.com/index.php/Rebuilding_the_Flash_and_Boot_Utils_Package


      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Sean50453
      Posted by Sean50453
      on Aug 05 2012 19:53 PM
      Intellectual910 points

      Rob,

      I am experiencing exactly the same problem with my L137 EVM.  When I tried to boot the device, the same below message showed in the terminal. Same as you, I also tried to reflash / restore the spi flash via CCS, but still got the same thing at booting.  Could you share your approach for solving the problem? 

      Thanks,

      Sean

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

      U-Boot 1.3.3 (Apr 23 2009 - 17:32:00)

      I2C:   ready
      DRAM:  64 MB
      *** Warning - bad CRC, using default environment

      In:    serial
      Out:   serial
      Err:   serial
      ARM Clock : 300000000 Hz
      More than one PHY detected.
      Hit any key to stop autoboot:  0
      U-Boot > bootm
      Wrong Image Format for bootm command
      ERROR: can't get kernel image!
      U-Boot >

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

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Rob Kirschner
      Posted by Rob Kirschner
      on Aug 05 2012 20:25 PM
      Verified Answer
      Verified by Rob Kirschner
      Prodigy60 points

      Hi Sean,

      The SPI ID for the EVM (at least the newer ones I suppose) is 0x4016. The ones supported by the default SPI writer and the images are 0x3015, 0x3016 and 0x3017. First, grab the SPI writer from this page:

      http://support.spectrumdigital.com/boards/evmomapl137/revg/

      This will let you write to the 0x4016 ID SPI.

      The next problem you'll have is the default U-Boot configuration also doesn't support the 0x4016 ID... If you poke around in the U-Boot source code (from the default packages), you can find SPI config files. I don't remember the filenames but if you search winbond in the u-boot directory you will find the configuration file. You will need to create a configuration for the 0x4016 chip. Turns out the 0x4016 can use the same configuration as the 0x3016, because all of the needed config parameters match. So if you copy the 0x3016 configuration and change the name to 0x4016, everything should work. At that point you just need to recompile U-Boot, write it to SPI, and setup your boot environment (follow the Getting Start with L137 wiki page for all this, http://processors.wiki.ti.com/index.php/Getting_Started_Guide_for_OMAP-L137 ).

      Hope this helps!

      Cheers,

      Rob

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Vincent Latapie
      Posted by Vincent Latapie
      on Aug 06 2012 02:18 AM
      Prodigy245 points

      Sean,

      for the problem of CRC, the saveenv u-boot command then reboot  should remove the CRC message (if not, you may have an issue with your flash support in U-Boot)

      regards

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Sean50453
      Posted by Sean50453
      on Aug 06 2012 21:32 PM
      Intellectual910 points

      Vincent, I was able to remove the CRC error by using saveenv command.  But when I tried to use bootm command, I got the following error.  I guess something is still not right.

      Wrong Image Format for bootm command

      ERROR: can't get kernel image!

      Below is the complete message when I boot the EVM.  Somehow I remember it should be longer, right?  Any suggestions about what I can do to solve the bootm problem?  Thanks.

      U-Boot 1.3.3 (Apr 23 2009 - 17:32:00)

       I2C:   ready

      DRAM:  64 MB

      In:    serial

      Out:   serial

      Err:   serial

      ARM Clock : 300000000 Hz

      More than one PHY detected.

      Hit any key to stop autoboot:  0

      U-Boot > bootm

      Wrong Image Format for bootm command

      ERROR: can't get kernel image!

      U-Boot >

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Sean50453
      Posted by Sean50453
      on Aug 06 2012 21:39 PM
      Intellectual910 points

      Rob, thank you for your response.  I grabbed the spi writer from Spectrum Digital and found out my spi flash ID is 0x3016, different from yours.  So I used this writer and re-downloaded the old dspais, armubl, and u-boot files to EVM, but still got the same message at booting. 

      Later on I saw the response from Vincent, and was able to remove the CRC by using saveenv command.

      Now my problem is, I still cannot bootm command in EVM.  When I boot it, it seems like something is still not right.  Below is the message at terminal:

      U-Boot 1.3.3 (Apr 23 2009 - 17:32:00)

      I2C:   ready
      DRAM:  64 MB
      In:    serial
      Out:   serial
      Err:   serial
      ARM Clock : 300000000 Hz
      More than one PHY detected.
      Hit any key to stop autoboot:  0
      U-Boot > bootm
      Wrong Image Format for bootm command
      ERROR: can't get kernel image!
      U-Boot >

      Any idea about what I can do to solve the issue?  Thanks.

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Rob Kirschner
      Posted by Rob Kirschner
      on Aug 06 2012 22:12 PM
      Prodigy60 points

      Sean,

      If you can use saveenv then your problem is not related to mine at all. Probably something has been set incorrectly in the boot environment, try using the "printenv" command from the U-Boot prompt and compare it to the setup specified in the getting started guide i linked above.

      Rob

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Sean50453
      Posted by Sean50453
      on Aug 06 2012 22:23 PM
      Intellectual910 points

      Rob,

      Is it possible you can post your printenv output?  This is my printenv output.  Thanks.

      U-Boot > printenv
      bootargs=mem=32M console=ttyS2,115200n8 root=/dev/mtdblock/2 rw noinitrd ip=dhcp
      bootcmd=
      bootdelay=3
      baudrate=115200
      bootfile="uImage"
      ethaddr=00:0e:99:02:ff:57
      stdin=serial
      stdout=serial
      stderr=serial
      ver=U-Boot 1.3.3 (Apr 23 2009 - 17:32:00)

      Environment size: 245/16380 bytes
      U-Boot >

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Vincent Latapie
      Posted by Vincent Latapie
      on Aug 07 2012 08:08 AM
      Prodigy245 points

      Sean,

      as your printenv output highlights it, your bootm environment variable is not set... 

      First and if it is not already done, you will have to program your Kernel Image (uImage) into Flash. To do so use the u-boot command:

      ¤ sf probe 0

      ¤ sf erase 0x80000 0x200000 (understands erase your flash @ 0x80000 for 0x200000 bytes)

      Then load your Kernel into Ram (TFTP is recommanded bu you can also use serial command from u-boot)

      ¤ loadb 0xc0700000 (then with teraterm consider Files>Send Files using  kermit protocol to send uImage)

      Once the transfert complete, you still have to programm the Kernel from Ram to Flash

      ¤ sf write 0xc0700000 0x80000 0x200000 (understands copy the kernel located in RAM (0xc0700000) to Flash @ 0x80000).

      Then, now you can set your bootm environment variable accordingly:

      ¤ setenv bootm 'sf probe 0;sf read 0xc0700000 0x80000 0x200000;bootm 0xc0700000' 

      For sure you can modify the default location or size, to make short bootm environment variable is used to describe where the kernel is located in flash and copy into RAM.

      bootargs variable is the kernel options (for example console=ttyS2 means that Kernel will consider UART2 of your board as default console)

      ++

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Vincent Latapie
      Posted by Vincent Latapie
      on Aug 07 2012 08:17 AM
      Prodigy245 points

      Sean,

      I just read once again your first message because I thought you use custom board but if you consider EV board,  by default you should have a kernel image stored into Flash so you can bypass Kernel programmation step and directly set bootm command (as mentioned above)

      note: just check once again that for EV default location of Kernel in Flash is well 0x80000

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Vincent Latapie
      Posted by Vincent Latapie
      on Aug 07 2012 08:24 AM
      Prodigy245 points

      Sean,

      I have some doubt also with your bootargs variable and especially 'root=/dev/mtdblock/2' (strange name for a device...) if it does not work consider this one instead :

      bootargs=console=ttyS2,115200n8 root=/dev/mmcblk0p1 noinitrd rw ip=none mem=32M

      (setenv bootargs 'console=ttyS2,115200n8 root=/dev/mmcblk0p1 noinitrd rw ip=none mem=32M')

      regards

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Sean50453
      Posted by Sean50453
      on Aug 07 2012 12:32 PM
      Intellectual910 points

      Vincent,

      I followed the steps and it seems like the problem is still there.  Please see below the capture of the terminal message:


      U-Boot 1.3.3 (Apr 23 2009 - 17:32:00)

      I2C:   ready
      DRAM:  64 MB
      In:    serial
      Out:   serial
      Err:   serial
      ARM Clock : 300000000 Hz
      More than one PHY detected.
      Hit any key to stop autoboot:  0
      U-Boot > bootm
      Wrong Image Format for bootm command
      ERROR: can't get kernel image!
      U-Boot > printenv
      bootcmd=
      bootdelay=3
      baudrate=115200
      bootfile="uImage"
      ethaddr=00:0e:99:02:ff:57
      bootm=sf probe 0;sf read 0xc0700000 0x80000 0x200000;bootm 0xc0700000
      bootargs=console=ttyS2,115200n8 root=/dev/mmcblk0p1 noinitrd rw ip=none mem=32M       (later on I tried root=/dev/mtblock/2, same error with bootm)
      stdin=serial
      stdout=serial
      stderr=serial
      ver=U-Boot 1.3.3 (Apr 23 2009 - 17:32:00)

      Environment size: 314/16380 bytes
      U-Boot >

      One more issue is that now I also cannot start CCS at emulation mode (SW2 = 11110). 

      Maybe I shall completely erase the flash, and then re-download the dspais, armubl, uboot, and kernel image to the flash.  Do you feel it's feasible?  If it's Okay, could you confirm the flash start address and size (for sf erase command)?  My board is L137 EVM REV G.  Thanks.

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Rob Kirschner
      Posted by Rob Kirschner
      on Aug 07 2012 13:48 PM
      Prodigy60 points

      Sean,

      You should really make your own thread for this. Because this thread already has a verified answer (it shows on the thread list with a green check mark), people looking to help others won't check in this thread. It really just looks like you have not set something in your boot environment up correctly, and the link I posted above should have instructions to see you through that. But that's just my two cents.

      Best,

      Rob

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Sean50453
      Posted by Sean50453
      on Aug 07 2012 14:25 PM
      Intellectual910 points

      Rob,

      No problem, I will start with a new post from now on, unless I need to respond to previous threads that were already posted here. 

      Thanks,

      Sean

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Sean50453
      Posted by Sean50453
      on Aug 07 2012 15:38 PM
      Intellectual910 points

      Vincent,

      You are so good!

      I re-downloaded the dspais, armubl, and uboot files.  Then I repeated your instructions.  Now I am able to boot the kernel.

      But one more issue is that if I power down the EVM and then power it up, the same bootm message appears again:

      Wrong Image Format for bootm command
      ERROR: can't get kernel image!

      I have to repeat your instructions in order to boot up the kernel.  It seems like somehow the kernel was not saved correctly to the spi flash.  I checked printenv, it is Okay.  Any idea why?

      Thank you very much!

      - Sean

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    12
    TI E2E™ Community
    • Support Forums
    • Blogs
    • Videos
    • Groups
    • Site Support & Feedback
    • Settings
    TI E2E™ Community Groups
    • TI University Program
    • Make the Switch
    • Microcontroller Projects
    • Motor Drive & Control
    Other Communities
    • Deyisupport
    • Designsomething.org
    • beagleboard.org
    • TI on Element 14
    • TI on TechXchangeSM
    Other Technical & Support Resources
    • WEBENCH® Design Center
    • Product Information Centers
    • Technical Documents
    • TI Design Network
    • TI Technical Articles
    • TI Training

    All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

    Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

    Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
    TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

    TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
    embedded processors, along with software, tools and the industry’s largest sales/support staff.

    © Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
    Trademarks | Privacy Policy | Terms of Use