[U-Boot-Users] RAM disk.. Almost there.. Some success... then failure

I know that this is probably in the 'infra-red' region of the 'visible' U-boot spectrum but I managed to get my root file system runnning from a RAM disk held in RAM but the same RAM disk placed in FLASH failed.
For example if I tftpboot my kernel to RAM, tftpboot my RAMDISK to RAM and then issue bootm 30300000 30500000 it mounts an ext2 file system, calls init and the world is a good place to be!
BUT if I tftpboot my kernel to RAM, store my root file system in FLASH (the exact same RAM disk as above) at address 8200000 and then issue bootm 30300000 8200000 I get the following errors:
Kernel command line: root=/dev/ram ramdisk=12000 DEBUG: timer count 15626 Console: colour dummy device 80x30 Calibrating delay loop... 49.86 BogoMIPS Memory: 64MB = 64MB total Memory: 62880KB available (1253K code, 257K data, 76K init) Dentry-cache hash table entries: 8192 (order: 4, 65536 bytes) Inode-cache hash table entries: 4096 (order: 3, 32768 bytes) Mount-cache hash table entries: 1024 (order: 1, 8192 bytes) Buffer-cache hash table entries: 4096 (order: 2, 16384 bytes) Page-cache hash table entries: 16384 (order: 4, 65536 bytes) POSIX conformance testing by UNIFIX Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Initializing RT netlink socket CPU clock = 200.000 Mhz, HCLK = 100.000 Mhz, PCLK = 50.000 Mhz Starting kswapd devfs: v1.10 (20020120) Richard Gooch (rgooch@atnf.csiro.au) devfs: boot_options: 0x1 ttyS%d0 at I/O 0x50000000 (irq = 52) is a S3C2410 ttyS%d1 at I/O 0x50004000 (irq = 55) is a S3C2410 ttyS%d2 at I/O 0x50008000 (irq = 58) is a S3C2410 Console: switching to colour frame buffer device 30x40 Installed S3C2410 frame buffer pty: 256 Unix98 ptys configured s3c2410-ts initialized S3C2410 Real Time Clock Driver v0.1 block: 128 slots per queue, batch=32 RAMDISK driver initialized: 16 RAM disks of 12000K size 1024 blocksize eth0: cs8900 rev J(3.3 Volts) found at 0xd0000300 cs89x0 media RJ-45, IRQ 37 No NAND device found!!! NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP, IGMP IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 4096 bind 4096) NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. NetWinder Floating Point Emulator V0.95 (c) 1998-1999 Rebel.com Unable to handle kernel paging request at virtual address 98200040 pgd = c0004000 *pgd = 00000000, *pmd = 00000000 Internal error: Oops: 0 CPU: 0 pc : [<c0127acc>] lr : [<c00b60f0>] Not tainted sp : c02efd48 ip : 00000000 fp : c02efd78 r10: ffffffff r9 : 00000000 r8 : c02eff38 r7 : 00000000 r6 : c02eff38 r5 : 00000200 r4 : 00000000 r3 : 00000000 r2 : 000001fc r1 : 98200040 r0 : c03f8400 Flags: nzCv IRQs on FIQs on Mode SVC_32 Segment kernel Control: 317F Table: 30004000 DAC: 0000001D Process swapper (pid: 1, stackpage=c02ef000) Stack: (0xc02efd38 to 0xc02f0000) fd20: c00b60f0 c0127acc fd40: 20000013 ffffffff 00000200 00000000 00000200 c02eff38 00000000 c00b60f0 fd60: 00000000 c03f8400 c02eff18 c02efda4 c02efd7c c0010f34 c00b608c c02efdd8 fd80: c02eff18 c0160edc c02ee000 c02db660 000001fa c02db860 c02effa8 c02efda8 fda0: c001127c c0010ea8 c02efeb0 000000fa 00000100 00000100 c02efdd4 00000000 fdc0: 00000000 000001f0 00000000 00000000 00000000 5c2d2f7c 00000000 00000000 fde0: c02db860 00000000 00000000 00000000 00000000 00000000 00000000 00000000 fe00: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 fe20: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 fe40: 00000000 00000000 00000000 c02db660 00000000 00000000 00000000 00000000 fe60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 fe80: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 fea0: 00000000 00000000 00000000 00000000 00000000 00000000 c02efdd8 00000000 fec0: c0160edc 00000000 00020000 00000003 00000000 00000000 00000000 00000000 fee0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ff00: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ff20: c02efe44 00000000 c0166958 00000000 00020000 00000001 00000000 00000000 ff40: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ff60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000 ff80: c015ea2c c016b240 c0175b74 00000000 c0166930 41129200 3001629c c02effb8 ffa0: c02effac c00116cc c0011104 c02effe0 c02effbc c001b12c c00116bc c0034998 ffc0: 00000000 c018d540 c016ba7c c016ba64 c015ec48 c02efff4 c02effe4 c001b230 ffe0: c001b0e0 00000000 00000000 c02efff8 c001cbf8 c001b22c 00000000 00000000 Backtrace: Function entered at [<c00b607c>] from [<c0010f34>] r6 = C02EFF18 r5 = C03F8400 r4 = 00000000 Function entered at [<c0010e98>] from [<c001127c>] Function entered at [<c00110f4>] from [<c00116cc>] Function entered at [<c00116ac>] from [<c001b12c>] Function entered at [<c001b0d0>] from [<c001b230>] r8 = C015EC48 r7 = C016BA64 r6 = C016BA7C r5 = C018D540 r4 = 00000000 Function entered at [<c001b21c>] from [<c001cbf8>] r4 = 00000000 Code: 1a00002c e2522004 4282c004 4a00001b (e4913004) Kernel panic: Attempted to kill init!
ANY IDEAS? Is there something different between a RAM disk stored in RAM and a RAM disk stored in FLASH. Or am I missing a boot argument?
Thanks, Luke
[[[By the way for anyone that is interested ...here's a summary of the state of my working configuration for running a RAMDISK from a RAM location. #define CONFIG_CMDLINE_TAG 1 /* enable passing of ATAGs */ #define CONFIG_SETUP_MEMORY_TAGS 1 #define CONFIG_INITRD_TAG 1
The command line I pass to the kernel is setenv bootargs root=/dev/ram ramdisk=12000 I found that if I didn't specify a ramdisk size then I get the following error RAMDISK: Compressed image found at block 0 RAMDISK: incomplete write (ramdisk too small?) (-28 != 32768) I think this might be related to CONFIG_BLK_DEV_RAM_SIZE=4096. But haven't had a chance to check it out. My uncompressed RAM is 12M, my compressed RAM is 4M
I also had to enable devfs in the kernel or else I get the following error Warning: unable to open an initial console.]]]
Thanks again Luke
_________________________________________________________________ All the action. All the drama. Get NCAA hoops coverage at MSN Sports by ESPN. http://msn.espn.go.com/index.html?partnersite=espn
participants (1)
-
Luke Fimmerzane