Imx5solo Mfgtool cannot boot from eMMC after burning into image

Source: Internet
Author: User
Tags ftp

Problem 1:mfgtool cannot boot from eMMC after burning into image.

I2C3 Recovery Success

Found pfuze100!deviceid=10,revid=11

Net:got MAC address from iim:00:00:00:00:00:00

FEC0 [PRIME]

Hits any key tostop autoboot:0

Fec:link is down7949

ERROR: ' ethaddr ' not set

Fec:link is down7949

Wrongimage Format for BOOTM command

Error:can ' t Getkernel image!

Mx6solo sabresdu-boot >

Analysis: From a print message it should be that the MAC address is zero, causing the boot to fail.

Solve:

Uboot with someone else's call, Tip:

Net:got MAC address from iim:00:00:00:00:00:00
FEC0 [PRIME]
Hit any key to stop autoboot:0
Fec:link is up 796d
ERROR: ' ethaddr ' not set
Fec:link is up 796d
Wrong Image Format for BOOTM command
Error:can ' t get kernel image!

To add a parameter:

Setenv ethaddr 00:0c:0c:a0:02:6a;saveenv

After setting the saveenv (I called out the uboot, even this savenv command is not, but the version is:

U-boot 2009.08 (16 2013-12:53:32)

Modify:

Setenv Bootcmd runbootcmd_mmc;saveenv

Reset, start Linux kernel normal.

It seems that the fundamental reason is that the Uboot version is incorrect, resulting in a problem with post-compilation burn-in.

The U-boot-mx6solo-sabresd.bin (512Mbit DDR3) that burns into the board is bootable, but the problem is that Freescale Uboot default is set to Bootcmd=runbootcmd_net, ETH0ADDR is not set and therefore causes an error.

If default is set to Bootcmd=runbootcmd_mmc, there is no problem.

A number of uboot versions were tested, and there was no correct one, that is, the same uboot as the SABRESD reference design. Think carefully, perhaps the code is correct, that is, uboot configuration parameters, only to modify their own

Include/configs/mx6solo_sabresd.h and Include/configs/mx6solo_sabresd_mfg.h

The correct uboot parameters:

Mx6solo sabresdu-boot > Printenv

Bootdelay=3

baudrate=115200

ipaddr=192.168.1.103

Serverip=192.168.1.101

netmask=255.255.255.0

loadaddr=0x10800000

Rd_loadaddr= (0x10800000+ 0x300000)

Netdev=eth0

Ethprime=fec0

Uboot=u-boot.bin

Kernel=uimage

Nfsroot=/opt/eldk/arm

Bootargs_base=setenvbootargs console=ttymxc0,115200 NOSMP

Bootargs_nfs=setenvbootargs ${bootargs} root=/dev/nfs ip=dhcpnfsroot=${serverip}:${nfsroot},v3,tcp

Bootcmd_net=runbootargs_base Bootargs_nfs; Tftpboot ${loadaddr} ${kernel}; Bootm

Bootargs_mmc=setenvbootargs ${bootargs} ip=dhcp root=/dev/mmcblk0p1 rootwait

Bootcmd_mmc=runbootargs_base Bootargs_mmc; MMC Dev 3; MMC read ${loadaddr} 0x800 0x2000; Bootm

Stdin=serial

Stdout=serial

Stderr=serial

Ethact=fec0

BOOTARGS=CONSOLE=TTYMXC0,115200NOSMP Root=/dev/nfs ip=dhcp nfsroot=192.168.1.101:/opt/eldk/arm,v3,tcp

ethaddr=00:0c:0c:a0:02:6a

Bootcmd=runbootcmd_mmc

Environment size:851/8188 bytes

Mx6solo sabresdu-boot >

Mx6solo sabresdu-boot > Ping 192.168.1.90

Fec:link is up796d

Using FEC0 Device

Host 192.168.1.90is Alive//Network port OK.

Mx6solo sabresdu-boot >

Start Normal:

Freescale Login:root

LOGIN[2491]: Rootlogin on ' ttymxc0 '

Root@freescale ~$

After locating the problem, Uboot.bin is compiled to boot, but there are new problems:

Hits any key tostop autoboot:0

MMC3 (part 0) iscurrent device

MMC Read:dev # 3,block # 2048, Count 8192 ... 8192 blocks Read:ok

# # booting Kernelfrom Legacy Image at 10800000 ...

Image name:linux-3.0.35-2666-gbdde708

Image Type:arm Linux Kernel image (uncompressed)

Data size:3866444 Bytes = 3.7 MB

Load address:10008000

entrypoint:10008000

Verifying Checksum ... Ok

Loading Kernel Image ... Ok

Ok

Starting kernel ...

Uncompressinglinux. Done, booting the kernel.

died here. It's not moving.

Baidu, for two major reasons: machine type is wrong or the console configuration is not correct.

First, the kernel uimage on compile-time kernel hacking-kernellow-level debugging functions

To trace the cause.

Ubootinclude/asm-arm/mach-types.h:

#defineMACH_TYPE_MX6Q_SABRESD 3980

Kernel arch/arm/tools/mach-types:

MX6Q_SABRESD mach_mx6q_sabresd mx6q_sabresd 3980

Check it out is right. Instead of UBOOT-IMX, the resulting uboot.bin even MMC devices are missing.

Use make mx6q_sabresd_config to compile, resulting in no response to the serial port.

I have justdonwloaded a u-boot-v2009.08 from ftp://ftp.denx.de/pub/u-boot/, and patch it usingu-boot-v2009.08-imx_ 3.0.101_4.1.1.tar.bz2.

Download original ubootv2009.08 bag again hit Imx6patch, still is not. Freescale downloaded u-boot-2009.08 has been patch.

Thisproblem is positioned as follows:

Viinclude/configs/mx6solo_sabresd.h

#definePHYS_SDRAM_1_SIZE (512 * 1024 *1024)

Change this valuefrom 512M to 1024M would leads to this problem. But what andhow to resolve it?

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.