[U-Boot] cuImage and multi image?
Chen, Tiejun
Tiejun.Chen at windriver.com
Thu Sep 23 23:33:41 EST 2010
> -----Original Message-----
> From: Shawn Jin [mailto:shawnxjin at gmail.com]
> Sent: Thursday, September 23, 2010 4:23 AM
> To: Chen, Tiejun
> Cc: Scott Wood; ppcdev; uboot
> Subject: Re: [U-Boot] cuImage and multi image?
>
> >> I have a large ramdisk image. The size of the image itself
> (i.e. the
> >> *.gz) is about 4MB. When the ramdisk was being decompressed
> >
> > Did you try to change link_address on the file,
> arch/powerpc/boot/wrapper?
>
> No. I don't have to. Right? The link_address is still 0x400000.
I means you can change link_address to other value according to the
Image size. Try set link_address='0x5000000'.
>
> > Did you try boot the uImage and the ramdisk separately? For
> example, you can boot this as the following command:
> > # bootm ${kernel_addr} ${ramdisk_addr} ${fdt_addr}
>
> Mine is a cuImage. I'm pretty sure that my ramdisk is valid
> when it's a separate image. I used "bootm <kernel_addr>
> <ramdisk_addr>" to boot.
>
> > Can you paste the whole log from the u-boot prompt?
>
> In the previous run the ramdisk image was corrupted because
> the single image was loaded at 0x800000. But the boot message
> showed that the initrd image was at 0x0066c000-0x009ae825. So
> it was over the 8MB area.
>
> However after the load address was changed to 0x04000000
> (64MB), the ramdisk still seemed corrupted but with different
> error messages.
This should be the same reason, 'uncompression error'.
Cheers
Tiejun
>
> => bootm
> ## Booting image at 04000000 ...
> Image Name: Linux-2.6.33.5
> Image Type: PowerPC Linux Kernel Image (gzip compressed)
> Data Size: 4424922 Bytes = 4.2 MB
> Load Address: 00400000
> Entry Point: 00400554
> Verifying Checksum ... OK
> Uncompressing Kernel Image ... OK
> Memory <- <0x0 0x8000000> (128MB)
> ENET0: local-mac-address <- 00:09:9b:01:58:64 CPU
> clock-frequency <- 0x7270e00 (120MHz) CPU timebase-frequency
> <- 0x7270e0 (8MHz) CPU bus-frequency <- 0x3938700 (60MHz)
>
> zImage starting: loaded at 0x00400000 (sp: 0x07d1cbd0)
> Allocating 0x22a1e1 bytes for kernel ...
> gunzipping (0x00000000 <- 0x0040c000:0x0066b0ac)...done
> 0x21c6c8 bytes Attached initrd image at 0x0066c000-0x009ae825
> initrd head: 0x1f8b0808
>
> Linux/PowerPC load: root=/dev/ram
> Finalizing device tree... flat tree at 0x9bb300 Using my870
> machine description Linux version 2.6.33.5 (shawn at ubuntu)
> (gcc version 4.2.2) #4 Tue Sep
> 21 09:23:51 PDT 2010
> Found initrd at 0xc066c000:0xc09ae825
> Zone PFN ranges:
> DMA 0x00000000 -> 0x00008000
> Normal 0x00008000 -> 0x00008000
> Movable zone start PFN for each node
> early_node_map[1] active PFN ranges
> 0: 0x00000000 -> 0x00008000
> MMU: Allocated 72 bytes of context maps for 16 contexts Built
> 1 zonelists in Zone order, mobility grouping on. Total
> pages: 32512 Kernel command line: root=/dev/ram PID hash
> table entries: 512 (order: -1, 2048 bytes) Dentry cache hash
> table entries: 16384 (order: 4, 65536 bytes) Inode-cache hash
> table entries: 8192 (order: 3, 32768 bytes)
> Memory: 124072k/131072k available (2080k kernel code, 6836k
> reserved, 84k data, 52k bss, 104k init) Kernel virtual memory layout:
> * 0xfffdf000..0xfffff000 : fixmap
> * 0xfde00000..0xfe000000 : consistent mem
> * 0xfddfa000..0xfde00000 : early ioremap
> * 0xc9000000..0xfddfa000 : vmalloc & ioremap
> SLUB: Genslabs=12, HWalign=16, Order=0-3, MinObjects=0,
> CPUs=1, Nodes=1 ....
> <snipped>
> ....
> RAMDISK: gzip image found at block 0
> uncompression error
> VFS: Mounted root (ext2 filesystem) readonly on device 1:0.
> Freeing unused kernel memory: 104k init
> EXT2-fs (ram0): error: ext2_check_page: bad entry in directory #336: :
> unaligned directory entry - offset=0, inode=74187384, rec_len=2081,
> name_len=126
> EXT2-fs (ram0): error: remounting filesystem read-only
> attempt to access beyond end of device
> ram0: rw=0, want=156831968, limit=32768
> Buffer I/O error on device ram0, logical block 78415983
> attempt to access beyond end of device
> ram0: rw=0, want=112233212, limit=32768
> Buffer I/O error on device ram0, logical block 56116605
> attempt to access beyond end of device
> ram0: rw=0, want=6626681482, limit=32768 Buffer I/O error on
> device ram0, logical block 3313340740 attempt to access
> beyond end of device
> ram0: rw=0, want=184684282, limit=32768
> Buffer I/O error on device ram0, logical block 92342140
> Kernel panic - not syncing: No init found. Try passing init=
> option to kernel.
> Call Trace:
> [c7821f30] [c0006cd8] show_stack+0x40/0x168 (unreliable)
> [c7821f70] [c001cefc] panic+0x8c/0x178 [c7821fc0] [c00026d4]
> init_post+0xe4/0xf4 [c7821fd0] [c01ee224]
> kernel_init+0x108/0x130 [c7821ff0] [c000dcc0]
> kernel_thread+0x4c/0x68 Rebooting in 180 seconds..
>
> Thanks,
> -Shawn.
>
More information about the Linuxppc-dev
mailing list