i.MX6SoloLite Evaluation Kit u-boot build and test issues

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

i.MX6SoloLite Evaluation Kit u-boot build and test issues

809 Views
jayakumar2
Contributor V

Hi,

I'm trying to create a SD card image for the i.MX6SoloLite Evaluation Kit using the binaries that I build from ltib. I'm using L3.0.35_4.1.0_130816_source. After the ltib build completed, things looked okay. I did:

./ltib -m prep -p u-boot

./ltib -m scbuild -p u-boot

and got the binary:

-rwxr-xr-x 1 lucid lucid 188844 /home/lucid/6sl/ltib/rpm/BUILD/u-boot-2009.08/u-boot.bin

Since I chose the evk mfg spec by default, I correctly see:

+ make HOSTCC=ccache /usr/bin/gcc -B/usr/bin/ CROSS_COMPILE=arm-none-linux-gnueabi- O=/home/lucid/6sl/ltib/rpm/BUILD/u-boot-2009.08 mx6sl_evk_mfg_config

in the build output.

When I tested this on the EVK, I see:

U-Boot 2009.08 (Nov 06 2013 - 02:40:41)

CPU: Freescale i.MX6 family TO1.2 at 396 MHz

Thermal sensor with ratio = 182

Temperature:   33 C, calibration data 0x57f5115f

mx6q pll1: 792MHz

mx6q pll2: 528MHz

mx6q pll3: 480MHz

mx6q pll8: 50MHz

ipg clock     : 49500000Hz

ipg per clock : 49500000Hz

uart clock    : 80000000Hz

cspi clock    : 60000000Hz

ahb clock     : 99000000Hz

axi clock   : 198000000Hz

emi_slow clock: 99000000Hz

ddr clock     : 396000000Hz

usdhc1 clock  : 198000000Hz

usdhc2 clock  : 198000000Hz

usdhc3 clock  : 198000000Hz

usdhc4 clock  : 198000000Hz

Board: MX6SoloLite-EVK (0x60212): [ POR ]

Boot Device: SD

I2C:   ready

DRAM:  512 MB

MMC:   FSL_USDHC: 0,FSL_USDHC: 1,FSL_USDHC: 2

Using default environment

In:    serial

Out:   serial

Err:   serial

Found PFUZE100! deviceid=10,revid=11

Net:   got MAC address from IIM: 00:04:9f:02:c5:d9

FEC0 [PRIME]

Hit any key to stop autoboot:  0

Wrong Image Format for bootm command

ERROR: can't get kernel image!

It looks like the u-boot build does not default to reading from block 2048 of mmc1 which is where the uImage is supposed to be. If I manually do:

mmc dev 1

mmc read ${loadaddr} 0x800 0x16B8

bootm ${loadaddr}             

Then it gets further.

## Booting kernel from Legacy Image at 80800000 ...

   Image Name:   Linux-3.0.35-2666-gbdde708

   Image Type:   ARM Linux Kernel Image (uncompressed)

   Data Size:    2977428 Bytes =  2.8 MB

   Load Address: 80008000

   Entry Point:  80008000

   Verifying Checksum ... OK

   Loading Kernel Image ... OK

OK

Starting kernel ...

Linux version 3.0.35-2666-gbdde708 (lucid@ubuntu) (gcc version 4.6.2 20110630 (prerelease) (Freescale MAD -- Linaro 2011.07 -- Built at 2011/08/10 09:20) ) #1 PREEMPT Mon Nov 4 23:54:56 PST 2013

CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c53c7d

CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache

Machine: Freescale i.MX 6SoloLite EVK Board

Memory policy: ECC disabled, Data cache writeback

CPU identified as i.MX6SoloLite, silicon rev 1.2

Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 130048

Kernel command line: noinitrd console=ttymxc0,115200 root=/dev/mtdblock2 rw rootfstype=jffs2 ip=off

PID hash table entries: 2048 (order: 1, 8192 bytes)

Dentry cache hash table entries: 65536 (order: 6, 262144 bytes)

Inode-cache hash table entries: 32768 (order: 5, 131072 bytes)

Memory: 512MB = 512MB total

Memory: 513756k/513756k available, 10532k reserved, 0K highmem

Virtual kernel memory layout:

    vector  : 0xffff0000 - 0xffff1000   (   4 kB)

    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)

    DMA     : 0xf4600000 - 0xffe00000   ( 184 MB)

    vmalloc : 0xa0800000 - 0xf2000000   (1304 MB)

    lowmem  : 0x80000000 - 0xa0000000   ( 512 MB)

    pkmap   : 0x7fe00000 - 0x80000000   (   2 MB)

    modules : 0x7f000000 - 0x7fe00000   (  14 MB)

      .init : 0x80008000 - 0x80036000   ( 184 kB)

      .text : 0x80036000 - 0x8056db38   (5343 kB)

      .data : 0x8056e000 - 0x805b7ce0   ( 296 kB)

       .bss : 0x805b7d04 - 0x805d9d38   ( 137 kB)

I was wondering if I'm doing something odd or should I not expect it to work with the defaults. It looks like I'll need to modify the u-boot config to change bootcmd to get it to work.

Thanks,

jaya

Labels (2)
Tags (3)
0 Kudos
3 Replies

469 Views
AnsonHuang
NXP Employee
NXP Employee

Hi, Jaya

     I think the mx6sl_evk_mfg_config uses include/configs/mx6sl_evk_mfg.h which did NOT have CONFIG_EXTRA_ENV_SETTINGS correctly, see below:

include/configs/mx6sl_evk_mfg.h:

121 #define CONFIG_EXTRA_ENV_SETTINGS                                       \

122                 "netdev=eth0\0"                                         \

123                 "ethprime=FEC0\0"                                       \

124                 "uboot=u-boot.bin\0"                    \

125                 "kernel=uImage\0"                               \

126

     But if you look into the include/configs/mx6sl_evk.h, it will have below config:

124 #define CONFIG_EXTRA_ENV_SETTINGS                                       \

125                 "netdev=eth0\0"                                         \

126                 "ethprime=FEC0\0"                                       \

127                 "uboot=u-boot.bin\0"                    \

128                 "kernel=uImage\0"                               \

129                 "nfsroot=/opt/eldk/arm\0"                               \

130                 "bootargs_base=setenv bootargs console=ttymxc0,115200\0"\

131                 "bootargs_nfs=setenv bootargs ${bootargs} root=/dev/nfs "\

132                         "ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0"\

133                 "bootcmd_net=run bootargs_base bootargs_nfs; "          \

134                         "tftpboot ${loadaddr} ${kernel}; bootm\0"       \

135                 "bootargs_mmc=setenv bootargs ${bootargs} "     \

136                         "root=/dev/mmcblk0p1 rootwait\0"                \

137                 "bootcmd_mmc=run bootargs_base bootargs_mmc; "   \

138                 "mmc dev 1; "   \

139                 "mmc read ${loadaddr} 0x800 0x2000; bootm\0"    \

140                 "bootcmd=run bootcmd_mmc\0"

     So, you should not expect the mfg config's default setting is working for you, you may need to modify this include/configs/mx6sl_evk_mfg.h's CONFIG_EXTRA_ENV_SETTINGS to what you want.

469 Views
jayakumar2
Contributor V

Hi Yongcai,

Thanks for your reply. Ok, I understand. I will add my custom edits to the u-boot config.

Thanks,

jaya

0 Kudos

469 Views
AnsonHuang
NXP Employee
NXP Employee

Hi, Jaya

     Did you have any other question about this topic? If yes, please let me know, if not, can you close this topic?

0 Kudos