• Home
  • Help
  • Search
  • Login
  • Register
Pages: [1]
Author Topic: Problems cross-building 2.6.38.3  (Read 2345 times)
samweber
Jr. Member
**

Karma: 0
Posts: 61


View Profile
« on: April 16, 2011, 03:03:26 PM »

I have two SheevaPlugs.  I recently used Martin Michelmayr's procedure to upgrade them to Debian Squeeze.  ARP worked on the original network but both absolutely refuse to ARP when simply moved to another network (see separate thread if you're interested).  Since no solution has emerged from my experiments or responses to my original post, I decided to try to cross build the kernel, get it running, and then put kprintf's in the ARP code to try to debug the problem.  I used the instructions from here (may be slightly stale but they're the best I could find) to build the latest stable kernel: http://computingplugs.com/index.php/Building_a_custom_kernel#Getting_U-Boot.27s_mkimage

I cross built the kernel with the CodeSourcery tool chain and then copied uImage and lib/modules to the plug's SD card.  Here is the interesting output from the not-so-excellent results.  Any suggestions?  Note: I can switch the SD card to one that I didn't copy the newly build components to and then the plug boots fine.  This fact should resolve any suspicions about my u-boot boot parameters.

Root-NFS: no NFS server address
VFS: Unable to mount root fs via NFS, trying floppy.
VFS: Cannot open root device "(null)" or unknown-block(2,0)
Please append a correct "root=" boot option; here are the available partitions:
1f00            1024 mtdblock0  (driver?)
1f01            4096 mtdblock1  (driver?)
1f02          519168 mtdblock2  (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(2,0)
[<c002b5e4>] (unwind_backtrace+0x0/0xe0) from [<c034245c>] (panic+0x68/0x18c)
[<c034245c>] (panic+0x68/0x18c) from [<c0008ec0>] (mount_block_root+0x1bc/0x1fc)
[<c0008ec0>] (mount_block_root+0x1bc/0x1fc) from [<c0008fa0>] (mount_root+0xa0/0xc0)
[<c0008fa0>] (mount_root+0xa0/0xc0) from [<c00090e0>] (prepare_namespace+0x120/0x174)
[<c00090e0>] (prepare_namespace+0x120/0x174) from [<c0008b18>] (kernel_init+0x108/0x148)
[<c0008b18>] (kernel_init+0x108/0x148) from [<c0027550>] (kernel_thread_exit+0x0/0x8)
Logged

samweber
Jr. Member
**

Karma: 0
Posts: 61


View Profile
« Reply #1 on: April 27, 2011, 12:33:27 PM »

The Michlmayr procedure is excellent.  But if you rebuild a different kernel after using it, you have to modify u-boot parameters to ignore the uInitrd that came with the Debian upgrade.  Otherwise, the kernel and the uInitrd image are both invoked and the new kernel is incompatible with the stale uInitrd.
Logged

Pages: [1]
Print
Jump to: