Nios® V/II Embedded Design Suite (EDS)
Support for Embedded Development Tools, Processors (SoCs and Nios® V/II processor), Embedded Development Suites (EDSs), Boot and Configuration, Operating Systems, C and C++

unable to load cramfs

Altera_Forum
Honored Contributor II
2,030 Views

hello friends 

 

i am using cramfs .i have compressed kernel . 

i have stored u-boot at 0x0 ,cramfs at 0x00100000 and kernel image at 0x00020000. 

my flash is 2MB(0x00000000 to 0x00200000).and sdram is 8Mb(0x00800000 to 0x00f00000). 

but when give command " bootm 0x0002000" on hyperterminel then i get o/p on console like: 

 

uClinux/Nios II 

 

Altera Nios II support © 2004 Microtronix Datacom Ltd. 

 

Built 1 zonelists 

 

Kernel command line: root=/dev/mtdblock0 ro 

 

PID hash table entries: 64 (order: 6, 1024 bytes) 

 

Dentry cache hash table entries: 2048 (order: 1, 8192 bytes) 

 

Inode-cache hash table entries: 1024 (order: 0, 4096 bytes) 

 

Memory available: 6948k/8192k RAM, 0k/0k ROM (883k kernel code, 241k data) 

 

Mount-cache hash table entries: 512 (order: 0, 4096 bytes) 

 

Linux NoNET1.0 for Linux 2.6 

 

Serial: JTAG UART driver $Revision: 1.4 $ 

 

ttyJ0 at MMIO 0x80220820 (irq = 1) is a jtag_uart 

 

io scheduler noop registered 

 

io scheduler anticipatory registered 

 

io scheduler deadline registered 

 

io scheduler cfq registered 

 

RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize 

 

ALTERA map: Found 1 x16 devices at 0x0 in 16-bit bank 

 

Amd/Fujitsu Extended Query Table at 0x0040 

 

number of CFI chips: 1 

 

cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness. 

 

cmdlinepart partition parsing not available 

 

RedBoot partition parsing not available 

 

Using up3 development partition definition 

 

Creating 2 MTD partitions on "ALTERA": 

 

0x00100000-0x00200000 : "romfs" 

 

0x00000000-0x00100000 : "loader/kernel" 

 

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,0)
0 Kudos
12 Replies
Altera_Forum
Honored Contributor II
823 Views

Hi slsnios, 

 

> Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,0) 

 

There are many possible causes. 

 

First, make sure you don't have the broken cramfs code. See: 

http://forum.niosforum.com/forum/index.php...=2383&hl=cramfs (http://forum.niosforum.com/forum/index.php?showtopic=2383&hl=cramfs

 

Once you're sure your cramfs code is clean, you might want to enable jffs2/cramfs support in 

u-boot. This will allow you to list and load jffs2/cramfs files into ram and view some file system 

information -- it's a good way to ensure you have a clean filesystem image _before_ you boot 

the kernel. 

 

And, of course, double-check your kernel configuration to ensure you have cramfs support 

enabled ;-) 

 

Regards, 

--Scott
0 Kudos
Altera_Forum
Honored Contributor II
823 Views

 

--- Quote Start ---  

originally posted by smcnutt@Jun 30 2006, 06:07 PM 

hi slsnios, 

 

> kernel panic - not syncing: vfs: unable to mount root fs on unknown-block(31,0) 

 

there are many possible causes. 

 

first, make sure you don't have the broken cramfs code. see: 

http://forum.niosforum.com/forum/index.php...=2383&hl=cramfs (http://forum.niosforum.com/forum/index.php?showtopic=2383&hl=cramfs

 

once you're sure your cramfs code is clean, you might want to enable jffs2/cramfs support in 

u-boot. this will allow you to list and load jffs2/cramfs files into ram and view some file system 

information -- it's a good way to ensure you have a clean filesystem image _before_ you boot 

the kernel. 

 

and, of course, double-check your kernel configuration to ensure you have cramfs support 

enabled ;-) 

 

regards, 

--scott 

<div align='right'><{post_snapback}> (index.php?act=findpost&pid=16571) 

--- quote end ---  

 

--- Quote End ---  

 

 

 

 

hi scott 

 

thans  

but 

i have already changed cramfs code. 

i selected cramfs option. 

i checked image of cramfs which is genereted by mkcram command. 

now i got sam problem.. 

please help me,what should be my next step?
0 Kudos
Altera_Forum
Honored Contributor II
823 Views

Hi slsnios, 

 

Try adding the following to the kernel command line: 

rootfstype=cramfs 

 

Regards, 

--Scott
0 Kudos
Altera_Forum
Honored Contributor II
823 Views

 

--- Quote Start ---  

originally posted by smcnutt@Jul 7 2006, 02:04 AM 

hi slsnios, 

 

try adding the following to the kernel command line: 

rootfstype=cramfs[/b] 

 

Regards, 

--Scott 

<div align='right'><{post_snapback}> (index.php?act=findpost&pid=16692) 

--- Quote End ---  

[/b] 

--- Quote End ---  

 

 

Thanks scott 

 

but can you tell me where i have to insert tis line at source code or project folder ,..where is kernel command line..
0 Kudos
Altera_Forum
Honored Contributor II
823 Views

 

--- Quote Start ---  

originally posted by slsnios+jul 7 2006, 04:45 pm--><div class='quotetop'>quote (slsnios @ jul 7 2006, 04:45 pm)</div> 

--- quote start ---  

<!--quotebegin-smcnutt@Jul 7 2006, 02:04 AM 

hi slsnios, 

 

try adding the following to the kernel command line: 

rootfstype=cramfs[/b] 

 

Regards, 

--Scott 

<div align='right'><{post_snapback}> (index.php?act=findpost&pid=16692) 

--- Quote End ---  

[/b] 

--- Quote End ---  

 

 

Thanks scott 

 

but can you tell me where i have to insert tis line at source code or project folder ,..where is kernel command line.. 

<div align='right'><{post_snapback}> (index.php?act=findpost&pid=16704)</div> 

[/b] 

--- Quote End ---  

 

In kernel menuconfig, 

Processor type and features --> () Default kernel command string 

root=/dev/mtdblock0 ro rootfstype=cramfs
0 Kudos
Altera_Forum
Honored Contributor II
823 Views

TO_BE_DONE

0 Kudos
Altera_Forum
Honored Contributor II
823 Views

Hi slsnios, 

 

> ./mkcramfs -n cramfs -z -r ./dir cramfs.img 

> then it is giving following error, 

... snip ... 

> cramfs.img: invalid cramfs--wrong magic 

 

You&#39;re reversing the endian order (-r option) & cramfschk does not have similar option. Endian 

order reversal should not be necessary. 

 

Regards, 

--Scott
0 Kudos
Altera_Forum
Honored Contributor II
823 Views

hi scott 

 

so,am i wrong or right? 

where am i doing mistake ? 

 

with regard  

slsnios
0 Kudos
Altera_Forum
Honored Contributor II
823 Views

Hi slsnios, 

 

> so,am i wrong or right? 

 

If you&#39;re creating the cramfs image on a little endian machine (like a PC) don&#39;t use the -r option. 

 

Regards, 

--Scott
0 Kudos
Altera_Forum
Honored Contributor II
823 Views

hi scott 

 

so much thanks.......infinite 

atleast ,now kernel is able to find which is fs is there. 

but still now i have problem 

now, i got massegs on terminal like 

 

uClinux/Nios II 

 

Altera Nios II support © 2004 Microtronix Datacom Ltd. 

 

Built 1 zonelists 

 

Kernel command line: root=/dev/mtdblock0 ro 

 

PID hash table entries: 64 (order: 6, 1024 bytes) 

 

Dentry cache hash table entries: 2048 (order: 1, 8192 bytes) 

 

Inode-cache hash table entries: 1024 (order: 0, 4096 bytes) 

 

Memory available: 7040k/8192k RAM, 0k/0k ROM (800k kernel code, 235k data) 

 

Mount-cache hash table entries: 512 (order: 0, 4096 bytes) 

 

Linux NoNET1.0 for Linux 2.6 

 

Serial: JTAG UART driver $Revision: 1.4 $ 

 

ttyJ0 at MMIO 0x80221080 (irq = 1) is a jtag_uart 

 

io scheduler noop registered 

 

io scheduler anticipatory registered 

 

io scheduler deadline registered 

 

io scheduler cfq registered 

 

RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize 

 

UP3 map: Found 1 x16 devices at 0x0 in 16-bit bank 

 

Amd/Fujitsu Extended Query Table at 0x0040 

 

number of CFI chips: 1 

 

cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness. 

 

cmdlinepart partition parsing not available 

 

RedBoot partition parsing not available 

 

Using altera development partition definition 

 

Creating 2 MTD partitions on "altera map": 

 

0x00100000-0x00200000 : "romfs" 

 

0x00000000-0x00100000 : "loader/kernel" 

 

VFS: Mounted root (cramfs filesystem) readonly. 

 

Freeing unused kernel memory: 48k freed (0x8e4000 - 0x8ef000) 

 

Warning: unable to open an initial console. 

 

Kernel panic - not syncing: No init found. Try passing init= option to kernel. 

 

 

 

 

if i think init is not there ,then it should be not worked when same fs is used as romfs.bin 

because i got kernel o/p ,when i used same fs without compress as romfs.  

please help me.
0 Kudos
Altera_Forum
Honored Contributor II
823 Views

Hi slsnios, 

 

> atleast ,now kernel is able to find which is fs is there. 

 

Great! 

 

> should be not worked when same fs is used as romfs.bin 

 

You should forget about romfs.bin and just populate the cramfs with the necessary files -- and 

edit the init scripts to suit your own needs. Here&#39;s what I typically use:  

 

d 0700 176 500:245 root 

d 0700 1700 500:245 root/bin 

f 0755 54448 500:245 root/bin/agetty 

f 0755 77640 500:245 root/bin/arp 

f 0755 61804 500:245 root/bin/badblocks 

f 0755 1712 500:245 root/bin/basename 

f 0755 122012 500:245 root/bin/boa 

f 0755 6348 500:245 root/bin/cat 

f 0755 34476 500:245 root/bin/chattr 

f 0755 30976 500:245 root/bin/chgrp 

f 0755 22936 500:245 root/bin/chmod 

f 0755 31200 500:245 root/bin/chown 

f 0755 24464 500:245 root/bin/cmp 

f 0755 26432 500:245 root/bin/cp 

f 0755 12612 500:245 root/bin/date 

f 0755 27156 500:245 root/bin/dd 

f 0755 24940 500:245 root/bin/debug 

f 0755 25500 500:245 root/bin/df 

f 0755 92968 500:245 root/bin/dhcpcd 

f 0755 1536 500:245 root/bin/dirname 

f 0755 1340 500:245 root/bin/echo 

f 0755 111752 500:245 root/bin/ex1 

f 0755 111968 500:245 root/bin/ex2 

f 0755 113920 500:245 root/bin/ex3 

f 0755 112092 500:245 root/bin/ex4 

f 0755 111820 500:245 root/bin/ex5 

f 0755 111828 500:245 root/bin/ex6 

f 0755 112356 500:245 root/bin/ex7 

f 0755 1008 500:245 root/bin/false 

f 0755 58996 500:245 root/bin/fbset 

f 0755 113208 500:245 root/bin/fdisk 

f 0755 27888 500:245 root/bin/free 

f 0755 58340 500:245 root/bin/fsck 

f 0755 107260 500:245 root/bin/ftpd 

f 0755 30840 500:245 root/bin/grep 

f 0755 5820 500:245 root/bin/hostname 

f 0755 25940 500:245 root/bin/ifattach 

f 0755 78852 500:245 root/bin/ifconfig 

f 0755 38292 500:245 root/bin/inetd 

f 0755 23904 500:245 root/bin/kill 

f 0755 29780 500:245 root/bin/l 

f 0755 24224 500:245 root/bin/ln 

f 0755 27588 500:245 root/bin/login 

f 0755 13304 500:245 root/bin/logname 

f 0755 42648 500:245 root/bin/ls 

f 0755 35972 500:245 root/bin/lsattr 

f 0755 2108 500:245 root/bin/mkdir 

f 0755 1728 500:245 root/bin/mkfifo 

f 0755 3820 500:245 root/bin/mknod 

f 0755 26860 500:245 root/bin/more 

f 0755 153200 500:245 root/bin/mount 

f 0755 26968 500:245 root/bin/mv 

f 0755 24216 500:245 root/bin/pause 

f 0755 63200 500:245 root/bin/ping 

f 0755 1536 500:245 root/bin/printenv 

f 0755 36728 500:245 root/bin/ps 

f 0755 4304 500:245 root/bin/pwd 

f 0755 25580 500:245 root/bin/reboot 

f 0755 2164 500:245 root/bin/rm 

f 0755 2036 500:245 root/bin/rmdir 

f 0755 81440 500:245 root/bin/route 

f 0755 88108 500:245 root/bin/sash 

f 0755 54596 500:245 root/bin/sh 

f 0755 21436 500:245 root/bin/shutdown 

f 0755 23096 500:245 root/bin/sigpending 

f 0755 24904 500:245 root/bin/sigsuspend 

f 0755 57332 500:245 root/bin/stty 

f 0755 1096 500:245 root/bin/sync 

f 0755 150584 500:245 root/bin/syscalltest 

f 0755 51976 500:245 root/bin/telnetd 

f 0755 2120 500:245 root/bin/touch 

f 0755 58120 500:245 root/bin/traceroute 

f 0755 1008 500:245 root/bin/true 

f 0755 107144 500:245 root/bin/umount 

f 0755 1892 500:245 root/bin/uname 

f 0755 28256 500:245 root/bin/uuidgen 

f 0755 5208 500:245 root/bin/wait 

f 0755 20392 500:245 root/bin/which 

f 0755 13304 500:245 root/bin/whoami 

f 0755 1356 500:245 root/bin/yes 

d 0700 800 500:245 root/dev 

c 0644 5, 1 0:0 root/dev/console 

c 0644 5, 64 0:0 root/dev/cua0 

c 0644 1, 2 0:0 root/dev/kmem 

c 0644 1, 1 0:0 root/dev/mem 

b 0644 31, 2 0:0 root/dev/mtdblock2 

c 0644 1, 3 0:0 root/dev/null 

c 0644 2, 0 0:0 root/dev/ptyp0 

c 0644 2, 1 0:0 root/dev/ptyp1 

c 0644 2, 2 0:0 root/dev/ptyp2 

c 0644 2, 3 0:0 root/dev/ptyp3 

c 0644 2, 4 0:0 root/dev/ptyp4 

c 0644 2, 5 0:0 root/dev/ptyp5 

c 0644 2, 6 0:0 root/dev/ptyp6 

c 0644 2, 7 0:0 root/dev/ptyp7 

c 0644 2, 8 0:0 root/dev/ptyp8 

c 0644 2, 9 0:0 root/dev/ptyp9 

c 0644 2, 10 0:0 root/dev/ptypa 

c 0644 2, 11 0:0 root/dev/ptypb 

c 0644 2, 12 0:0 root/dev/ptypc 

c 0644 2, 13 0:0 root/dev/ptypd 

c 0644 2, 14 0:0 root/dev/ptype 

c 0644 2, 15 0:0 root/dev/ptypf 

c 0644 4, 0 0:0 root/dev/tty0 

c 0644 4, 64 0:0 root/dev/ttyS0 

c 0644 3, 0 0:0 root/dev/ttyp0 

c 0644 3, 1 0:0 root/dev/ttyp1 

c 0644 3, 2 0:0 root/dev/ttyp2 

c 0644 3, 3 0:0 root/dev/ttyp3 

c 0644 3, 4 0:0 root/dev/ttyp4 

c 0644 3, 5 0:0 root/dev/ttyp5 

c 0644 3, 6 0:0 root/dev/ttyp6 

c 0644 3, 7 0:0 root/dev/ttyp7 

c 0644 3, 8 0:0 root/dev/ttyp8 

c 0644 3, 9 0:0 root/dev/ttyp9 

c 0644 3, 10 0:0 root/dev/ttypa 

c 0644 3, 11 0:0 root/dev/ttypb 

c 0644 3, 12 0:0 root/dev/ttypc 

c 0644 3, 13 0:0 root/dev/ttypd 

c 0644 3, 14 0:0 root/dev/ttype 

c 0644 3, 15 0:0 root/dev/ttypf 

c 0644 1, 5 0:0 root/dev/zero 

d 0700 268 500:245 root/etc 

d 0775 20 500:245 root/etc/config 

f 0664 8146 500:245 root/etc/config/boa.conf 

f 0700 547 500:245 root/etc/group 

f 0664 168 500:245 root/etc/inetd.conf 

f 0664 185 500:245 root/etc/inittab 

f 0664 47 500:245 root/etc/issue 

f 0700 1552 500:245 root/etc/mime.types 

f 0700 308 500:245 root/etc/passwd 

f 0664 1193 500:245 root/etc/protocols 

f 0664 231 500:245 root/etc/rc 

f 0664 113 500:245 root/etc/services 

f 0700 549 500:245 root/etc/shadow 

f 0700 8 500:245 root/etc/shells 

f 0700 12 500:245 root/etc/version 

d 0755 36 500:245 root/home 

d 0700 0 500:245 root/mnt 

d 0700 0 500:245 root/proc 

d 0700 36 500:245 root/sbin 

f 0775 49316 500:245 root/sbin/init 

f 0755 19396 500:245 root/sbin/testapp 

d 0700 0 500:245 root/sys 

d 0700 0 500:245 root/tmp 

d 0700 0 500:245 root/usr 

d 0700 0 500:245 root/var 

 

Regards, 

--Scott
0 Kudos
Altera_Forum
Honored Contributor II
823 Views

hi scott 

 

here, romfs.bin ..., 

i used nios IDE 5.0 and linux filesystem for generating rootfs folder. 

i gave /<filesydstem project path >/target to mkcramfs for cramfs image. 

 

but i can&#39;t get you. wher i have to writ and run int script.please tell me detail..please..............
0 Kudos
Reply