why u-boot doesnot load linux in my board of mx28

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

why u-boot doesnot load linux in my board of mx28

2,048 Views
jieliu
Contributor II

I want my board of imx28 boot from u-boot,but u-boot cannot load linux .the log file and printenv log file are  as fellow.

PowerPrep start initialize power...

Configured for 5v only power source. Battery powered operation disabled.
PowerPrep start initialize power...

Configured for 5v only power source. Battery powered operation disabled.
Oct 15 201616:44:12
FRAC 0x92925552
memory type is DDR2
Wait for ddr ready 1
power 0x00820710
Frac 0x92925552
start change cpu freq
hbus 0x00000003
cpu 0x00010002


U-Boot 2009.08 (10月 15 2016 - 15:58:31)

Freescale i.MX28 family
CPU: 227 MHz
BUS: 75 MHz
EMI: 205 MHz
GPMI: 24 MHz
DRAM: 64 MB
NAND: mfr_id: c2
Manufacturer : MXIC (0xc2)
Device Code : 0xf1
Cell Technology : SLC
Chip Size : 128 MiB
Pages per Block : 64
Page Geometry : 2048+64
ECC Strength : 4 bits
ECC Size : 512 B
Data Setup Time : 20 ns
Data Hold Time : 10 ns
Address Setup Time: 20 ns
GPMI Sample Delay : 6 ns
tREA : Unknown
tRLOH : Unknown
tRHOH : Unknown
Description : MX30LF1G08AA
128 MiB
MMC: IMX_SSP_MMC: 0, IMX_SSP_MMC: 1
*** Warning - bad CRC or NAND, using default environment

get ddr2 infromation fail,check it!
In: serial
Out: serial
Err: serial
Net: fec_get_mac_addr
got MAC address from IIM: 00:04:00:00:00:00
FEC0

Warning: FEC0 MAC addresses don't match:
Address in SROM is         00:04:00:00:00:00
Address in environment is  02:00:92:b3:c4:a8

Hit any key to stop autoboot:  0

NAND read: device 0 offset 0x200000, size 0x300000
 3145728 bytes read: OK
Wrong Image Format for bootm command
ERROR: can't get kernel image!
MX28 U-Boot >

printenv log is:

bootcmd=run nand_boot
bootdelay=0
baudrate=115200
ipaddr=192.168.12.62
serverip=192.168.12.61
netmask=255.255.255.0
bootfile="uImage"
loadaddr=0x41600000
kernel=uImage
kernelsize=0x300000
rootfs=rootfs.ubifs
kerneladdr=0x00200000
nfsroot=/home/notroot/nfs/rootfs
bootargs_nfs=setenv bootargs ${bootargs} root=/dev/nfs ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp fec_mac=${ethaddr}
bootcmd_net=run bootargs_nfs; dhcp; bootm
bootcmd_mmc=run bootargs_mmc; mmc read 0 ${loadaddr} 100 3000; bootm
bootargs_nand=gpmi=g console=ttyAM0,115200n8 console=tty0 ubi.mtd=1 root=ubi0:rootfs rootfstype=ubifs ip=192.168.12.180:192.168.12.48:192.68.12
.1:255.255.255.0::eht0: fec_mac= ethact
                        bootargs_mmc=gpmi=g console=ttyAM0,115200n8 console=tty0 root=/dev/mmcblk0p3 rw ip=192.168.12.180:192.168.12.48:192.68.
12.1:255.255.255.0::eht0: fec_mac= ethact console=tty0 root=/dev/mmcblk0p3 rw ip=192.168.12.180:192.168.12.48:192.168.12.1:255.255.255.0::eht0:
 fec_mac= console=tty0  
bootargs=gpmi=g console=ttyAM0,115200n8  ubi.mtd=1 root=ubi0:rootfs rootfstype=ubifs fec_mac= ethact mem=64M
kernel=uImage
upuboot=tftp $(loadaddr) $(serverip):imx28_ivt_uboot.sb;nand erase 0x0 0x100000; nand write $(loadaddr) 0x0 0x100000
upkernel=tftp $(loadaddr) $(serverip):$(kernel);nand erase  $(kerneladdr) $(kernelsize);nand write $(loadaddr) $(kerneladdr) $(kernelsize);
setenv kernelsize $(filesize); saveenv
uprootfs=mtdparts default;nand erase rootfs;ubi part rootfs;ubi create  rootfs;tftp $(loadaddr) $(rootfs);ubi write $(loadaddr) rootfs $(filesi
ze)
tftp_boot=tftp $(loadaddr) $(serverip):uImage; bootm;
nand_boot=nand read.jffs2 $(loadaddr) $(kerneladdr) $(kernelsize);bootm $(loadaddr)
setnandboot=setenv bootcmd 'run  nand_boot';saveenv
settftpboot=setenv bootcmd 'run  tftp_boot';saveenv
upsystem=run upkernel;run uprootfs;reset
ethaddr=02:00:92:b3:c4:a8
mem=64M
stdin=serial
stdout=serial
stderr=serial
ethact=FEC0
ver=U-Boot 2009.08 (10月 15 2016 - 15:58:31)

Environment size: 1955/131068 bytes

Labels (5)
0 Kudos
Reply
4 Replies

1,533 Views
igorpadykov
NXP Employee
NXP Employee

Hi jie

please check supported modes (streams imx28_linux.sb, imx28_uboot.sb)
in attached Linux Guide sect.5.3.2 MMC/NAND Boot, sect.5.3.3 Network Boot.
So after booting uboot please use TFTP for running linux.

Board Support Packages (4)
i.MX28 Linux 2.6.35 Source Code Files and documentation (REV L2.6.35_1.1.0)
http://www.nxp.com/products/software-and-tools/software-development-tools/i.mx-software-and-tools/i....

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos
Reply

1,532 Views
jieliu
Contributor II

My board has not Network,so I cannot use  TFTP .my board only has one nand flash. I use mfgtool download linux to mx28.

I set these in mfgtool as fellow:

<LIST name="NAND uboot-kernel-rootfs(128MB)" desc="Install on singlechip NAND">

<CMD type="boot" body="Recovery" file="updater_ivt.sb" timeout="60" if="HabEnable">Booting update firmware.</CMD>
<CMD type="find" body="Updater" timeout="180"/>
<CMD type="push" body="mknod class/mtd,mtd0,/dev/mtd0" timeout="180" />
<CMD type="push" body="mknod class/mtd,mtd1,/dev/mtd1" timeout="180" />
<CMD type="push" body="mknod class/misc,ubi_ctrl,/dev/ubi_ctrl"/>
<CMD type="push" body="$ flash_eraseall /dev/mtd0">Erasing mtd0 partition</CMD>

<CMD type="push" body="send" file="files/imx28_ivt_uboot.sb">Sending uboot</CMD>
<CMD type="push" body="$ kobs-ng init -v $FILE">Flashing uboot firmware</CMD>
<CMD type="push" body="$ flash_erase /dev/mtd0 0x200000 32">Erasing 0x200000 32</CMD>
<CMD type="push" body="send" file="files/uImage">Sending uImage</CMD>
<CMD type="push" body="$ dd if=$FILE of=/dev/mtdblock0 bs=1M seek=2">Flashing uImage firmware</CMD>

<CMD type="push" body="$ echo Update Complete!">Done</CMD>

I set env as fellow:

bootfile="uImage"
loadaddr=0x41600000
kernel=uImage
kernelsize=0x300000
rootfs=rootfs.ubifs
kerneladdr=0x00200000

nand_boot=nand read.jffs2 $(loadaddr) $(kerneladdr) $(kernelsize);bootm $(loadaddr)

0 Kudos
Reply

1,532 Views
igorpadykov
NXP Employee
NXP Employee

other boot options, except described in attached previously Linux Guide

are not supported.

0 Kudos
Reply

1,532 Views
jieliu
Contributor II

When I have changed DDR clock from 205Mhz  to 85Mhz and  CPU clock from 454 Mhz clock to 151Mhz,the u-boot cannot load linux either.

0 Kudos
Reply