MPC8568MDS RAMDISK Problem

SETTE AGOSTINO - technolabs Agostino.Sette at technolabs.it
Tue Sep 2 23:18:41 EST 2008


Hi Anatolij,

I updated my u-boot

U-Boot 1.3.4-00253-g33aa4ea (Sep  2 2008 - 13:04:22)

CPU:   8568E, Version: 1.1, (0x807d0011)
Core:  E500, Version: 2.2, (0x80210022)
Clock Configuration:
       CPU:1320 MHz, CCB: 528 MHz,
       DDR: 264 MHz (528 MT/s data rate), LBC: 132 MHz
L1:    D-cache 32 kB enabled
       I-cache 32 kB enabled
Board: 8568 MDS
I2C:   ready
DRAM:  Initializing
    SDRAM: 64 MB
    DDR: 512 MB
FLASH: 32 MB
L2:    512 KB enabled
    PCI: 32 bit, 66 MHz, async, host, arbiter
               Scanning PCI bus 00
PCI on bus 00 - 00

    PCIE connected to slot as Root Complex (base address e000a000)
PCIE on bus 01 - 01
In:    serial
Out:   serial
Err:   serial
Net:   eTSEC0, eTSEC1, FSL UEC0, FSL UEC1

But now I have the following problem:

## Checking Image at 02000100 ...
   Legacy image found
   Image Name:   Linux-2.6.25.5
   Image Type:   PowerPC Linux Kernel Image (gzip compressed)
   Data Size:    1354587 Bytes =  1.3 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Booting kernel from Legacy Image at 02000100 ...
   Image Name:   Linux-2.6.25.5
   Image Type:   PowerPC Linux Kernel Image (gzip compressed)
   Data Size:    1354587 Bytes =  1.3 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 02200100 ...
   Image Name:   initrd
   Image Type:   PowerPC Linux RAMDisk Image (gzip compressed)
   Data Size:    3658157 Bytes =  3.5 MB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 021f0100
   Booting using the fdt blob at 0x21f0100
   Uncompressing Kernel Image ... OK
   Loading Device Tree to 007fa000, end 007fffff ... OK
WARNING: could not set linux,stdout-path FDT_ERR_NOTFOUND.
ERROR: /chosen node create failed - must RESET the board to recover.

Do I need to add some environment variables or set some fdt commands before booting the board?
Here are the env variables

=> printenv
ramboot=run ramargs;tftp $ramdiskaddr $ramdiskfile;tftp $loadaddr $bootfile;bootm $loadaddr $ramdiskaddr
nfsboot=run nfsargs;tftp $loadaddr $bootfile;tftp $fdtaddr $fdtfile;bootm $loadaddr - $fdtaddr
bootdelay=10
baudrate=115200
loads_echo=1
ethaddr=00:E0:0C:00:00:FD
eth1addr=00:E0:0C:00:01:FD
eth2addr=00:E0:0C:00:02:FD
eth3addr=00:E0:0C:00:03:FD
rootpath=/nfsroot
gatewayip=192.168.1.1
netmask=255.255.255.0
bootfile=your.uImage
netdev=eth0
consoledev=ttyS0
ramdiskaddr=600000
ramdiskfile=your.ramdisk.u-boot
fdtaddr=400000
fdtfile=your.fdt.dtb
nfsargs=setenv bootargs root=/dev/nfs rw nfsroot=$serverip:$rootpath ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off console=$consoledev,$bau
drate $othbootargs
ramargs=setenv bootargs root=/dev/ram rw console=$consoledev,$baudrate $othbootargs
ethact=eTSEC0
serverip=192.168.0.33
ipaddr=192.168.0.126
bootcmdFREE=run ramargs;cp.b fff00000 400000 3500;bootm ff800000 ffa00000 400000
myaps=MPC8568MDS/aps
mtdargs=mtdparts=physmap-flash.0:1M(boot),7M(aps0),7M(aps1),1M(optusr)
pram=0x100000
mem=0x3f00000
pram_start=0x3f00000
loadaddr=0x2000000
aps0_fl_start=0xfe100000
aps0_fl_size=0x00700000
aps1_fl_start=0xfe800000
aps1_fl_end=0xfeefffff
aps1_fl_size=0x00700000
aps_ram_start=0x2000000
aps_ram_kernel_start=0x2000100
aps_ram_dtb_start=0x21f0100
aps_ram_rootfs_start=0x2200100
aps=0
dl_boot=tftp ${aps_ram_start} "u-boot.bin" && protect off 0xfe000000 0xfe07ffff && cp.b ${aps_ram_start} 0xfe000000 ${filesize} && protect on 0xfe000000 0xf
e07ffff && saveenv
bootcmd=if itest ${aps} == 0; then run dl_ram0; else run dl_ram1;fi
altbootcmd=mw.b ${pram_start} 0 ${pram} && if itest ${aps} == 0; then setenv aps 1; else setenv aps 0; fi; saveenv; run bootcmd
dl_ram0=cp.b ${aps0_fl_start} ${aps_ram_start} ${aps0_fl_size};if imi ${aps_ram_kernel_start}; then run bargs;bootm ${aps_ram_kernel_start} ${aps_ram_rootfs
_start} ${aps_ram_dtb_start}; else reset; fi
dl_ram1=cp.b ${aps1_fl_start} ${aps_ram_start} ${aps1_fl_size};if imi ${aps_ram_kernel_start}; then run bargs;bootm ${aps_ram_kernel_start} ${aps_ram_rootfs
_start} ${aps_ram_dtb_start}; else reset; fi
bootlimit=5
initrd_high=no
hostname=MPC8568MDS
aps0_fl_end=0xfe7fffff
dl_aps0=tftp ${aps_ram_start} ${myaps};erase ${aps0_fl_start} ${aps0_fl_end};cp.b ${aps_ram_start} ${aps0_fl_start} ${filesize};boot
dl_aps1=tftp ${aps_ram_start} ${myaps};erase ${aps1_fl_start} ${aps1_fl_end};cp.b ${aps_ram_start} ${aps1_fl_start} ${filesize};boot
bargs=setenv bootargs ${mtdargs} console=ttyS0,$baudrate root=/dev/ram ramdisk_size=500000 rw ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}:e
th0:off panic=1 mem=${mem} aps=${aps} ${misc} ${slram}
dl_mykernel=tftp 1000000 MPC8568MDS/uImage; erase ff800000 ff9fffff; cp.b 1000000 ff800000 ${filesize}
dl_myrootfs=tftp 2000000 MPC8568MDS/RamDisk.ext2; erase ffa00000 ffefffff; cp.b 2000000 ffa00000 ${filesize}
dl_mydtb=tftp 400000 MPC8568MDS/mpc8568mds.dtb; erase fff00000 fff7ffff; cp.b 400000 fff00000 ${filesize}
fdt_file=MPC8568MDS/mpc8568mds.dtb
fdt_addr_r=0x21f0100
stdin=serial
stdout=serial
stderr=serial

With previous u-boot I was able to load the images separately, with this u-boot I have the error.

Best Regards
Agostino




> -----Original Message-----
> From: Anatolij Gustschin [mailto:agust at denx.de] 
> Sent: martedì 2 settembre 2008 12.11
> To: SETTE AGOSTINO - technolabs
> Cc: linuxppc-embedded at ozlabs.org
> Subject: Re: MPC8568MDS RAMDISK Problem
> 
> Hi Agostino,
> 
> SETTE AGOSTINO - technolabs wrote:
> 
> > First of all thanks for your help. I modified the 
> mpc8568mds_defconfig
> > 
> >>> cat kernel/linux/arch/powerpc/configs/mpc8568mds_defconfig
> > #
> 
> <snip>
> 
> > 
> > But now I face this problem
> > 
> > ## Checking Image at 02000100 ...
> >    Image Name:   Linux-2.6.25.5
> >    Image Type:   PowerPC Linux Kernel Image (gzip compressed)
> >    Data Size:    1354578 Bytes =  1.3 MB
> >    Load Address: 00000000
> >    Entry Point:  00000000
> >    Verifying Checksum ... OK
> > ## Booting image at 02000100 ...
> >    Image Name:   Linux-2.6.25.5
> >    Image Type:   PowerPC Linux Kernel Image (gzip compressed)
> >    Data Size:    1354578 Bytes =  1.3 MB
> >    Load Address: 00000000
> >    Entry Point:  00000000
> >    Verifying Checksum ... OK
> >    Uncompressing Kernel Image ... OK
> > ## Loading RAMDisk Image at 02200100 ...
> >    Image Name:   initrd
> >    Image Type:   PowerPC Linux RAMDisk Image (gzip compressed)
> >    Data Size:    3658110 Bytes =  3.5 MB
> >    Load Address: 00000000
> >    Entry Point:  00000000
> >    Verifying Checksum ... OK
> >    Booting using the fdt at 0x21f0100
> >    Loading Ramdisk to 00482000, end 007ff17e ... OK
> >    Loading Device Tree to 007fa000, end 007fcfff ... OK
> 
> Ramdisk image is partially overwritten while loading the
> Device Tree: Ramdisk ends at 0x007ff17e, Device Tree starts
> at 0x007fa000. You probably need to update U-Boot to recent
> version to solve this issue.
> 
> > Using MPC85xx MDS machine description
> > Memory CAM mapping: CAM0=16Mb, CAM1=16Mb, CAM2=16Mb residual: 15Mb
> > Linux version 2.6.25.5 (ity10223 at aqlbl05x) (gcc version 
> 4.2.2) #1 Mon Sep 1 10:44:44 CEST 2008
> > Found initrd at 0xc0482000:0xc07ff17e
> 
> <snip>
> 
> > RAMDISK: Compressed image found at block 0
> > invalid compressed format (err=1)
> 
> Ramdisk decompression failed, it's expected as ramdisk was
> overwritten by DTB while booting.
> 
> Try to update U-Boot to v1.3.4.
> 
> Best regards,
> Anatolij
> 
> -- 
> DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: +49-8142-66989-0 Fax: +49-8142-66989-80  Email: office at denx.de
> 


More information about the Linuxppc-embedded mailing list