• 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 » ARM® Processors » Sitara™ ARM® » AM3x Sitara ARM Processors Forum » Rebuilding Beaglebone Angstrom Kernel?
Share
Sitara™ ARM®
  • Forum
  • Announcements
Options
  • Subscribe via RSS

Forums

Rebuilding Beaglebone Angstrom Kernel?

This question is answered
Drew Moore
Posted by Drew Moore
on Apr 30 2012 10:41 AM
Intellectual330 points

Crawl. Walk. Run. I'm still in the crawl phase here..

I'm just trying to create a stock Angstrom uImage from scratch, copy it to my sd card and reboot my beaglebone.. but my kernel panics at reboot. I must be doing something wrong, but can't find it.

I have an Ubuntu 10.04 host in vmware on my windows 7 box.

I have the SDK installed at  \home\drew\ti-sdk-am335x-evm-05.04.01.00

I updated the sd card to the latest uImage using "the easy way" at

http://downloads.angstrom-distribution.org/demo/beaglebone/

(using another linux box, as the raw SD card reader on my computer doesn't show up as a removable device in vmware)

I set up my path like this...

export PATH=/home/drew/ti-sdk-am335x-evm-05.04.01.00/linux-devkit/bin/:$PATH

I cd into the SDK's board-support/linux-3.2-psp04.06.00.07.sdk/ subdirectory.

I clean the sources

make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- mrproper

I grab the stock config file, using either

make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- am335x_evm_defconfig

or

make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- tisdk_am335x-evm_defconfig

I build a new kernel

make ARCH=arm CROSS_COMPILE=arm-arago-linux-gnueabi- uImage

I copy the new kernel to the sd card boot partition

scp arch/arm/boot/uImage root@10.100.111.105:/boot/uImage-3.2.14a

(The new kernel is 3061568 bytes, where the old one is 3174920 bytes, so a slight difference..)

In the beaglebone console (over USB) I point the symbolic link to the new image:

root@beaglebone:~# cd /boot

root@beaglebone:/boot# ln -sf uImage-3.2.14a uImage

and everything looks great, (I'm thinking..) but...

When I reboot..

Loading file "/boot/uImage" from mmc device 0:2 xxa2                            
3061568 bytes read                                                              
## Booting kernel from Legacy Image at 80007fc0 ...                             
   Image Name:   Linux-3.2.14                                                   
   Image Type:   ARM Linux Kernel Image (uncompressed)                          
   Data Size:    3061504 Bytes = 2.9 MiB                                        
   Load Address: 80008000                                                       
   Entry Point:  80008000                                                       
   Verifying Checksum ... OK                                                    
   XIP Kernel Image ... OK                                                      
OK                                                                              
                                                                                
Starting kernel ...                                                            

Uncompressing Linux... done, booting the kernel.                                
[    0.170532] tps65910 1-002d: could not be detected                           
[    0.219238] Could not set LED4 to fully on                                   
[    0.356628] mtdoops: mtd device (mtddev=name/number) must be supplied        
[    0.436401] omap_hwmod: wkup_m3: wkup_m3: hwmod data error: OMAP4 does not st
[    0.564147] Kernel panic - not syncing: VFS: Unable to mount root fs on unkn)
[    0.573028] Backtrace:                                                       
[    0.575714] [<c00178f8>] (dump_backtrace+0x0/0x110) from [<c040b990>] (dump_)
[    0.584625]  r6:cf90d000 r5:c05a2de4 r4:c0610b08 r3:c05d3d08                 
[    0.590637] [<c040b978>] (dump_stack+0x0/0x1c) from [<c040ba00>] (panic+0x6c)
[    0.598724] [<c040b994>] (panic+0x0/0x1a0) from [<c0575cb4>] (mount_block_ro)
[    0.607574]  r3:c05d3d08 r2:00000000 r1:cf81df58 r0:c04dece0                 
[    0.613555]  r7:00008001                                                     
[    0.616241] [<c0575b30>] (mount_block_root+0x0/0x228) from [<c0575f1c>] (mou)
[    0.625366] [<c0575e44>] (mount_root+0x0/0xe0) from [<c05760bc>] (prepare_na)
[    0.634643]  r4:c060fba0                                                     
[    0.637298] [<c0575f24>] (prepare_namespace+0x0/0x1d4) from [<c057590c>] (ke)
[    0.646759]  r5:c05b0fb8 r4:c05b0fb8                                         
[    0.650573] [<c05757e8>] (kernel_init+0x0/0x130) from [<c00403bc>] (do_exit+)
[    0.658935]  r5:c05757e8 r4:00000000 

If I reset and go into u-boot I can

setenv bootfile uImage-3.2.14

boot

and it boots the old kernel fine.. I can copy the working kernel to another file, link to that file, and that works too.

Can anyone see what I am doing wrong? What did I forget to read or do?

I'm trying to follow sitara-linuxsdk-sdg-05.04.01.00.pdf starting at page 97..

Is anyone else building this just fine, or anyone seeing the same trouble?

--

Oh, I modified Makefile so that the built image has the same name.. 3.2.14 (it was 3.2.0 unmodified.) but that did not help.

Report Abuse
  • Reply
You have posted to a forum that requires a moderator to approve posts before they are publicly available.
All Replies
  • Drew Moore
    Posted by Drew Moore
    on Apr 30 2012 14:46 PM
    Intellectual330 points

    I tried rebuilding the Arago 3.1.0-00010-g66bfbd2 kernel, source pulled from git

    git clone http://arago-project.org/git/projects/linux-am33x.git

    as well as doing an install_modules and copying the modules over to the beaglebone's /llib/modules directory...

    No joy. All the kernels I build continue to panic.

    The mtdoops message seems the most suspicious to me...

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Drew Moore
    Posted by Drew Moore
    on May 01 2012 15:27 PM
    Verified Answer
    Verified by Drew Moore
    Intellectual330 points

    Finally got my kernel to boot.

    I assumed it was Angstrom since the version number was 3.2, but I found out the kernel in the SDK is Arago, so I switched to the Arago SD card.

    I got it to boot using tftpboot. I'm still not able to boot the same image file by copying it to the sd card.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Drew Moore
    Posted by Drew Moore
    on May 01 2012 16:08 PM
    Intellectual330 points

    Hmm.. correction.. Arago website says that the TI SDK is not the same as Arago either...

    TI SDK is most stable..

    Arago is "middle ground"

    Angstrom is "cutting edge" ?

    In any event, the SDK is apparently closer to Arago than Angstrom..

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
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