Hi,
I'm working on a custom MPC8313 board. It was booting up fine using NOR flash and ext2 filesystem. Configured u-boot and Linux and made transition to use NAND flash and JFFS2 filesystem and now system hangs when running Linux kernel. I've tried different things but I'm stuck. Thanks in advance for any help. pat Here is my boot-up sequence: NAND SPL - U-Boot 1.3.0 (Jul 27 2009 - 12:23:07) MPC83XX Loading from NAND : ........................ U-Boot 1.3.0 (Jul 27 2009 - 12:22:36) MPC83XX Reset Status: Software Hard , External/Internal Soft , External/Internal Hard CPU: e300c3, MPC8313, Rev: 10 at 266.666 MHz, CSB: 133 MHz Board: Validator 2 Prototype NAND Base = 0xe3000000 ENV Base = 0xf8000 I2C: ready DRAM: 128 MB Top of RAM usable for U-Boot at: 08000000 Reserving 340k for U-Boot at: 07faa000 Reserving 528k for malloc() at: 07f26000 Reserving 68 Bytes for Board Info at: 07f25fbc Reserving 96 Bytes for Global Data at: 07f25f5c Stack Pointer at: 07f25f38 New Stack Pointer is: 07f25f38 Now running in RAM - U-Boot at: 07faa000 FLASH: flash detect cfi fwc addr fe000000 cmd 0 0 8bit x 8 bit fwc addr fe000055 cmd 98 98 8bit x 8 bit is= cmd 51(Q) addr fe000010 is= 0 51 fwc addr fe000555 cmd 98 98 8bit x 8 bit is= cmd 51(Q) addr fe000010 is= 0 51 fwc addr fe000000 cmd 0 0000 16bit x 8 bit fwc addr fe0000aa cmd 98 9898 16bit x 8 bit is= cmd 51(Q) addr fe000020 is= 0051 5151 fwc addr fe000aaa cmd 98 9898 16bit x 8 bit is= cmd 51(Q) addr fe000020 is= 0051 5151 fwc addr fe000000 cmd 0 0000 16bit x 16 bit fwc addr fe0000aa cmd 98 0098 16bit x 16 bit is= cmd 51(Q) addr fe000020 is= 0051 0051 is= cmd 52(R) addr fe000022 is= 0052 0052 is= cmd 59(Y) addr fe000024 is= 0059 0059 ushort addr is at fe000050 info->portwidth = 2 addr[0] = 0x0 addr[1] = 0x2 addr[2] = 0x0 addr[3] = 0x0 retval = 0x2 device interface is 2 found port 2 chip 2 port 16 bits chip 16 bits ushort addr is at fe000026 info->portwidth = 2 addr[0] = 0x0 addr[1] = 0x2 addr[2] = 0x0 addr[3] = 0x0 retval = 0x2 fwc addr fe000000 cmd f0 00f0 16bit x 16 bit fwc addr fe000aaa cmd aa 00aa 16bit x 16 bit fwc addr fe000554 cmd 55 0055 16bit x 16 bit fwc addr fe000aaa cmd 90 0090 16bit x 16 bit fwc addr fe000000 cmd f0 00f0 16bit x 16 bit fwc addr fe0000aa cmd 98 0098 16bit x 16 bit ushort addr is at fe00002a info->portwidth = 2 addr[0] = 0x0 addr[1] = 0x40 addr[2] = 0x0 addr[3] = 0x0 retval = 0x40 fe000020 : 00 51 00 52 00 59 00 02 00 00 00 40 00 00 00 00 .q.r.y.....@.... fe000030 : 00 00 00 00 00 00 00 27 00 36 00 00 00 00 00 04 .......'.6...... fe000040 : 00 00 00 0a 00 00 00 05 00 00 00 04 00 00 00 17 ................ fe000050 : 00 02 00 00 00 00 00 00 00 02 00 07 00 00 00 20 ............... fe000060 : 00 00 00 7e 00 00 00 00 00 01 00 00 00 00 00 00 ...~............ fe000070 : 00 00 00 00 00 00 00 00 00 00 ff ff ff ff ff ff ................ fe000080 : 00 50 00 52 00 49 00 31 00 31 00 00 00 02 00 04 .P.R.I.1.1...... fe000090 : 00 01 00 04 00 00 00 00 00 00 00 b5 00 c5 00 03 ................ manufacturer is 2 manufacturer id is 0xc2 device id is 0xc9 device id2 is 0x0 cfi version is 0x3131 size_ratio 1 port 16 bits chip 16 bits found 2 erase regions long addr is at fe000062 info->portwidth = 2 addr[0] = 0x0 addr[1] = 0x7e addr[2] = 0x0 addr[3] = 0x0 addr[4] = 0x0 addr[5] = 0x0 addr[6] = 0x0 addr[7] = 0x1 erase_region_count = 127 erase_region_size = 65536 long addr is at fe00005a info->portwidth = 2 addr[0] = 0x0 addr[1] = 0x7 addr[2] = 0x0 addr[3] = 0x0 addr[4] = 0x0 addr[5] = 0x20 addr[6] = 0x0 addr[7] = 0x0 erase_region_count = 8 erase_region_size = 8192 ushort addr is at fe000054 info->portwidth = 2 addr[0] = 0x0 addr[1] = 0x0 addr[2] = 0x0 addr[3] = 0x0 retval = 0x0 fwc addr fe000000 cmd f0 00f0 16bit x 16 bit 8 MB NAND: 64 MiB In: serial Out: serial Err: serial U-Boot relocated to 07faa000 Net: TSEC0: PHY is LSI ET1011C2 1000BASE-T Full duplex (282f014) TSEC1: PHY is LSI ET1011C2 1000BASE-T Full duplex (282f014) TSEC0, TSEC1 [PRIME] ### main_loop entered: bootdelay=2 ### main_loop: bootcmd="run read_kernel; run read_dtb; bootm 200000 - 500000" Hit any key to stop autoboot: 0 NAND read: device 0 offset 0x100000, size 0x300000 3145728 bytes read: OK NAND read: device 0 offset 0x400000, size 0x100000 1048576 bytes read: OK ## Booting image at 00200000 ... Image Name: Linux-2.6.23 Created: 2009-07-21 19:40:44 UTC Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size: 2084801 Bytes = 2 MB Load Address: 00000000 Entry Point: 00000000 Verifying Checksum ... OK Uncompressing Kernel Image ... OK ## Current stack ends at 0x07F25D10 => set upper limit to 0x00800000 ## cmdline at 0x007FFC00 ... 0x007FFC72 bd address = 0x07F25FBC memstart = 0x00000000 memsize = 0x08000000 flashstart = 0xFE000000 flashsize = 0x00800000 flashoffset = 0x00000000 sramstart = 0x00000000 sramsize = 0x00000000 bootflags = 0x00000001 intfreq = 266.666 MHz busfreq = 133.333 MHz ethaddr = 00:E0:0C:00:95:01 eth1addr = 00:E0:0C:00:95:02 IP addr = 10.1.133.218 baudrate = 115200 bps Kernel address = 00000000 Skipping initrd Booting using the fdt at 0x500000 No initrd CFG_BOOTMAPSZ = 0x800000 TB Freq - Couldn't find /cpus/PowerPC,8...@0: <valid offset/length> Busfreq - Couldn't find /cpus/PowerPC,8...@0: <valid offset/length> Clock freq - Couldn't find /cpus/PowerPC,8...@0: <valid offset/length> Busfreq - Couldn't find /soc8...@e0000000: <valid offset/length> Busfreq - Couldn't find /soc8...@e0000000/ser...@4500: <valid offset/length> Busfreq - Couldn't find /soc8...@e0000000/ser...@4600: <valid offset/length> ## Transferring control to Linux (at address 00000000) ... Kernel poiner = 0x0 FDT pointer = 0x500000 Physical pointer = 0x0 Running Linux Here is my u-boot environment: => printenv ramboot=setenv rootdev /dev/ram;run setbootargs;tftp $ramdiskaddr $ramdiskfile;tftp $loadaddr $bootfile;tftp $fdtaddr $fdtfile;bootm $loadaddr $ramdiskaddr $fdtaddr nfsboot=setenv rootdev /dev/nfs;run setbootargs;run setipargs;tftp $loadaddr $bootfile;tftp $fdtaddr $fdtfile;bootm $loadaddr - $fdtaddr bootdelay=2 baudrate=115200 loads_echo=1 ethaddr=00:E0:0C:00:95:01 eth1addr=00:E0:0C:00:95:02 ipaddr=10.1.133.218 serverip=10.1.133.200 rootpath=/nfs/root/path gatewayip=10.1.133.1 netmask=255.255.255.0 hostname=val2 bootfile=uImage loadaddr=200000 uboot_file=./u-boot.bin uboot_flash_addr=0xfe000000 uboot_flash_last=0xfe04ffff dt_file=./mpc8313erdb.dtb dt_flash_addr=0xfe050000 dt_flash_last=0xfe05ffff env_flash_addr=0xfe060000 env_flash_last=0xfe06ffff kernel_file=./uImage kernel_flash_addr=0xfe070000 kernel_flash_last=0xfe24ffff ramdisk_file=./rootfs.ext2.gz.uboot ramdisk_flash_addr=0xfe250000 ramdisk_flash_last=0xfe7fffff load_uboot=tftp $loadaddr $uboot_file update_uboot=protect off $uboot_flash_addr $uboot_flash_last; era $uboot_flash_addr $uboot_flash_last; cp.b $fileaddr $uboot_flash_addr $filesize; protect on $uboot_flash_addr $uboot_flash_last burn_uboot=run load_uboot;run update_uboot load_dt=tftp $loadaddr $dt_file update_dt=protect off $dt_flash_addr $dt_flash_last; era $dt_flash_addr $dt_flash_last; cp.b $fileaddr $dt_flash_addr $filesize burn_dt=run load_dt;run update_dt load_kernel=tftp $loadaddr $kernel_file update_kernel=protect off $kernel_flash_addr $kernel_flash_last; era $kernel_flash_addr $kernel_flash_last; cp.b $fileaddr $kernel_flash_addr $filesize burn_kernel=run load_kernel;run update_kernel load_ramdisk=tftp $loadaddr $ramdisk_file update_ramdisk=protect off $ramdisk_flash_addr $ramdisk_flash_last; era $ramdisk_flash_addr $ramdisk_flash_last; cp.b $fileaddr $ramdisk_flash_addr $filesize burn_ramdisk=run load_ramdisk;run update_ramdisk netdev=eth1 ethprime=TSEC1 uboot=u-boot.bin console=ttyS0 nfsargs=setenv bootargs root=/dev/nfs rw nfsroot=${serverip}:${rootpath} ramargs=setenv bootargs root=/dev/ram rw ramdisk_size=124M addip=setenv bootargs ${bootargs} ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}:${hostname}:${netdev}:o ff panic=1 addtty=setenv bootargs ${bootargs} console=ttyS0,${baudrate} run ramargs; run addtty; bootm $kernel_flash_addr $ramdisk_flash_addr $dt_flash_addr mtdids=nand0=nand0 mtdparts=mtdparts=nand0:1M(u-boot),3M(kernel),1M(dtb),-(jffs2) partition=nand0,3 mtddevnum=3 mtddevname=jffs2 bootargs=root=/dev/mtdblock3 rw rootfstype=jffs2 console=ttyS0,115200 mtdparts=nand0:1M(u-boot),3M(kernel),1M(dtb),-(jffs2) read_kernel=nand read 200000 kernel read_dtb=nand read 500000 dtb bootcmd=run read_kernel; run read_dtb; bootm 200000 - 500000 stdin=serial stdout=serial stderr=serial ethact=TSEC1 Environment size: 2777/16380 bytes
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot