TI E2E Community
Sitara Processors Forum
Rebuilding Beaglebone Angstrom Kernel?
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
(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...
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
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- uImageI copy the new kernel to the sd card boot partition
scp arch/arm/boot/uImage email@example.com:/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
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.
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...
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.
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..
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.
TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs andembedded processors, along with software, tools and the industry’s largest sales/support staff.