Task #4 - Deploy and test

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

Task #4 - Deploy and test

Task #4 - Deploy and test

Update

The source code is one week old now, so please, update it!

$ repo sync

Images - the result of a bitbake

Example of a content after bitbake

build_mx6/tmp/deploy/images:

fsl-image-gui-imx6qsabresd-20130505174618.rootfs.ext3

fsl-image-gui-imx6qsabresd-20130505174618.rootfs.sdcard

fsl-image-gui-imx6qsabresd-20130505174618.rootfs.tar.bz2

fsl-image-gui-imx6qsabresd-20130508162511.rootfs.ext3

fsl-image-gui-imx6qsabresd-20130508162511.rootfs.sdcard

fsl-image-gui-imx6qsabresd-20130508162511.rootfs.tar.bz2

fsl-image-gui-imx6qsabresd.ext3

fsl-image-gui-imx6qsabresd.sdcard

fsl-image-gui-imx6qsabresd.tar.bz2

modules-3.0.35-1.1.0+yocto+g0596856-r32.10-imx6qsabresd.tgz

README_-_DO_NOT_DELETE_FILES_IN_THIS_DIRECTORY.txt

u-boot.imx

u-boot-imx6qsabresd.imx

u-boot-imx6qsabresd-v2013.04-r3.imx*

uImage

uImage-3.0.35-r32.10-imx6qsabresd-20130505174618.bin

uImage-imx6qsabresd.bin

Get used with generated images. Understand which file is a symbolic link and which one is the image in fact. Symbolic link will always point to latest image.

sdcard image

Take a look how sdcard is generated here meta-fsl-arm - Layer containing Freescale ARM hardware support metadata

The disk layout used is:

0-> IMAGE_ROOTFS_ALIGNMENT    reserved to bootloader (not partitioned)

IMAGE_ROOTFS_ALIGNMENT -> BOOT_SPACE    kernel and other data

BOOT_SPACE -> SDIMG_SIZE     rootfs

Use IMAGE_OVERHEAD_FACTOR to add more space

Please, go to original file in order to understand the disk layout.

It´s basically some initial space for u-boot. One partition for uImage. One partition for rootfs. The total sdcard size will be calculate for every image, if you want to add more empty space inside generated sdcard, use IMAGE_OVERHEAD_FACTOR.

Deploy

Deploy the sdcard image:

$ sudo dd if=fsl-image-gui-imx6qsabresd.sdcard of=/dev/sdX bs=1M

Or, deploy the ext3 rootfs

$ sudo dd if=fsl-image-gui-imx6qsabresd.ext3 of=/dev/sdX2 bs=1M

Or deploy only the tar.bz rootfs

$ sudo mount /dev/sdX2 /mnt/card

$ sudo tar xf imagename-imx53qsb.tar.bz2 -C /mnt/card

In order to deploy only kernel

$ sudo cp uImage-3.0.35-r32.10-imx6qsabresd-20130505174618.bin /media/Boot

In order to  deploy only u-boot

$ sudo dd if=u-boot-imx6qsabresd-v2012.10-r3.imx of=/dev/sdX bs=512 seek=2

If using HDMI please, modify u-boot environment arguments:

setenv mmcargs "setenv bootargs console=${console},${baudrate} root=${mmcroot} rootwait rw video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24"

This is the how sdcards are made by meta-fsl-arm. Of course you can use your own. But double check the u-boot bootenv.

Plug your sdcard and let the board boot

To login: root

Go to HOME

Go to Task #3 - The build result

Go to Task#5 - kernel

标签 (1)
评论

Hi Daiane,

to complete the guide at the first boot on imx6qsabresd using HDMI is better to add a note to modify the uboot envvar mmcargs with commands:

setenv mmcargs=setenv bootargs console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24

saveenv

boot

Bye

Thanks a lot, Francesco. Nice comment!

Would you be available to change this bit directly in the source code and send us a patch? This is a "missing feature" that I would love to have integrated, and it´s quite simple to implement.

I could guide you if you feel like.

Hi Daiane,

I'm a newbie in this area, but I'll be happy to learn how make this

modification if you can help me!

If I can take advantage of your knowledge I would need to connect to SABRE

a CAN controller SJA1000 on bus EIM, do you have any suggestions for me on

hw and sw point of view?

Many thanks!

Francesco

For the CAN issue, could you, please, create a new discussion? I´m not the only one who can advice you about CAN (in fact, I´m not even the best one). Once you have created the new topic, please share with me :smileywink:

For the u-boot.

1- take the source code (git clone) from Commits · Freescale/u-boot-imx · GitHub

2- create one patch just like mx6qsabrelite: Change default environment to cope with OE changes · 08bb52d · Freescale/u-boot-imx ·...

But, instead, change the mmcarg for using HDMI by default.

3- OtavioSalvador, will receive your patch for u-boot and integrate it on github tree.

4- modify this file meta-fsl-arm - Layer containing Freescale ARM hardware support metadata

to make it point to the right commit id

I will be very glad to have someone working with CAN on the project. Please, ask any question during the process.

I only have one question. Would be HDMI the best default video output?

Hello, I have an error while using the setenv command on the Sabrelite board from element14.

The board has U-Boot 2009.08 (Aug 16 2012 - 10:06:42)

I think the correct format for the command should be:

setenv mmcargs 'setenv bootargs console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24'

saveenv

boot

At least this sentence doesn't give an error.

I have some trouble making the "fsl-image-gui-imx6qsabresd.sdcard" work with my Sabrelite board.

The build was ok all images were created.

Then I deployed the image to a micro SD card with the following command:

sudo dd if=fsl-image-gui-imx6qsabresd.sdcard of=/dev/sdb bs=1M


When I try to boot the Sabrelite board I have the following error in the debug console.


U-Boot 2009.08 (Aug 16 2012 - 10:06:42)

CPU:   Freescale i.MX 6 family 0.0V at 792 MHz

Temperature:   39 C, calibration data 0x5774ed7d

mx6q pll1: 792MHz

mx6q pll2: 528MHz

mx6q pll3: 480MHz

mx6q pll8: 50MHz

ipg clock     : 66000000Hz

ipg per clock : 66000000Hz

uart clock    : 80000000Hz

cspi clock    : 60000000Hz

ahb clock     : 132000000Hz

axi clock   : 264000000Hz

emi_slow clock: 29333333Hz

ddr clock     : 528000000Hz

usdhc1 clock  : 200000000Hz

usdhc2 clock  : 200000000Hz

usdhc3 clock  : 200000000Hz

usdhc4 clock  : 200000000Hz

nfc clock     : 24000000Hz

Board: MX6Q-SABRELITE:[ POR]

Boot Device: I2C

I2C:   ready

DRAM:   1 GB

MMC:   FSL_USDHC: 0,FSL_USDHC: 1

JEDEC ID: 0xbf:0x25:0x41

Reading SPI NOR flash 0xc0000 [0x2000 bytes] -> ram 0x276009b8

SUCCESS

*** Warning - bad CRC, using default environment

In:    serial

Out:   serial

Err:   serial

Net:   got MAC address from IIM: 00:00:00:00:00:00

FEC0 [PRIME]

Hit any key to stop autoboot:  3     2     1     0

Card did not respond to voltage select!

mmc0(part 0) is current device

MMC: block number 0x1 exceeds max(0x0)

** Can't read from device 0 **

** Unable to use mmc 0:1 for fatload **

** Bad partition 1 **

mmc1 is current device

reading /6q_bootscript

** Unable to read "/6q_bootscript" from mmc 1:1 **

Loading file "/6q_bootscript" from mmc device 1:1 (xxb1)

Failed to mount ext2 filesystem...

** Bad ext2 partition or disk - mmc 1:1 **

MX6Q SABRELITE U-Boot >

Any idea, what is wrong ?

Thanks,

ssinfod

Him, yes you are right! The "=" is a my copy and paste error! I'm sorry!

Hi, I'm not sure this is the issue but you are using an image compiled for qsabresd on a qsabrelite?

Bye!

Please build nitrogen6x machine and give it a try in sabrelite; I will send the patch to fix this later today.

Nitrogen6x and SabreLITE are compatible so you can do it.

For sabrelite development, please, take a look here

https://community.freescale.com/message/335684#335684

A lot of good info regarding sabrelite bootloader/kernel and so on.

In addition, use Nitrogen config file to built it when using meta-fsl-arm

:smileywink:

Hi Daiane,

I apologize but I'm not so expert to follow your procedure (only point 1 is at my level! :-P)

I've also another possible setting of mmcargs variable to exit on LVDS0 1024x600:

setenv mmcargs 'setenv bootargs console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw video=mxcfb0:dev=ldb,1024x600M@60,if=RGB666'


Bye.

Ok :smileywink:

Thanks anyway :smileysilly:

I made a new bitbake with the new target machine nitrogen6x. The file was generated successfully. (fsl-image-gui-nitrogen6x.sdcard)

However, I still have the same error. (see log below)

Anyhow, I think the SD card seems to be written correctly:

The SD card volume name is "Boot nitrog". The files visible on the SD card are:  6x_bootscript, uImage

I notice that in the log that UBoot search for: 6q_bootscript instead of 6x_bootscript. (q verus x in the name)

Could it be related to this ? I rename the x to q but now the console displays another problem...

LOG1:

U-Boot 2009.08 (Aug 16 2012 - 10:06:42)

CPU:   Freescale i.MX 6 family 0.0V at 792 MHz

Temperature:   49 C, calibration data 0x5774ed7d

mx6q pll1: 792MHz

mx6q pll2: 528MHz

mx6q pll3: 480MHz

mx6q pll8: 50MHz

ipg clock     : 66000000Hz

ipg per clock : 66000000Hz

uart clock    : 80000000Hz

cspi clock    : 60000000Hz

ahb clock     : 132000000Hz

axi clock   : 264000000Hz

emi_slow clock: 29333333Hz

ddr clock     : 528000000Hz

usdhc1 clock  : 200000000Hz

usdhc2 clock  : 200000000Hz

usdhc3 clock  : 200000000Hz

usdhc4 clock  : 200000000Hz

nfc clock     : 24000000Hz

Board: MX6Q-SABRELITE:[ POR]

Boot Device: I2C

I2C:   ready

DRAM:   1 GB

MMC:   FSL_USDHC: 0,FSL_USDHC: 1

JEDEC ID: 0xbf:0x25:0x41

Reading SPI NOR flash 0xc0000 [0x2000 bytes] -> ram 0x276009b8

SUCCESS

In:    serial

Out:   serial

Err:   serial

Net:   got MAC address from IIM: 00:00:00:00:00:00

FEC0 [PRIME]

Hit any key to stop autoboot:  3     2     1     0

Card did not respond to voltage select!

mmc0(part 0) is current device

MMC: block number 0x1 exceeds max(0x0)

** Can't read from device 0 **

** Unable to use mmc 0:1 for fatload **

** Bad partition 1 **

mmc1 is current device

reading /6q_bootscript

** Unable to read "/6q_bootscript" from mmc 1:1 **

Loading file "/6q_bootscript" from mmc device 1:1 (xxb1)

Failed to mount ext2 filesystem...

** Bad ext2 partition or disk - mmc 1:1 **

MX6Q SABRELITE U-Boot >

MX6Q SABRELITE U-Boot >

MX6Q SABRELITE U-Boot > pprriinntteennvv

bootdelay=3

baudrate=115200

ipaddr=192.168.1.103

serverip=192.168.1.101

netmask=255.255.255.0

loadaddr=0x10800000

rd_loadaddr=0x11000000

netdev=eth0

ethprime=FEC0

uboot=u-boot.bin

kernel=uImage

nfsroot=/opt/eldk/arm

bootargs_nfs=setenv bootargs ${bootargs} root=/dev/nfs ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp

bootcmd_net=run bootargs_nfs;tftpboot ${loadaddr} ${kernel}; bootm

bootcmd_mmc= for disk in 0 1 ; do mmc dev ${disk} ;for fs in fat ext2 ; do ${fs}load mmc ${disk}:1 10008000 /6q_bootscript && source 10008000 ; done ; done

bootcmd=run bootcmd_mmc

clearenv=sf probe 1 && sf erase 0xc0000 0x2000 && echo restored environment to factory default

upgradeu=for disk in 0 1 ; do mmc dev ${disk} ;for fs in fat ext2 ; do ${fs}load mmc ${disk}:1 10008000 /6q_upgrade && source 10008000 ; done ; done

ethact=FEC0

bootargs=console=ttymxc1,115200 root=/dev/mmcblk0p2 rootwait video=mxcfb0:dev=hdmi,1280x800M@60,if=RGB24 video=mxcfb1:dev=ldb,LDB-SVGA,if=RGB666

mmcargs=setenv bootargs console=ttymxc0,115200 root=/dev/mmcblk1p2 rootwait rw video=mxcfb0:dev=ldb,1024x600M@60,if=RGB666

stdin=serial

stdout=serial

stderr=serial

Environment size: 1129/8188 bytes

Same deploy "fsl-image-gui-nitrogen6x.sdcard":

Here is the other console log after I rename the file to 6q_bootscript (instead of 6x_bootscript)

LOG2:

U-Boot 2009.08 (Aug 16 2012 - 10:06:42)

CPU:   Freescale i.MX 6 family 0.0V at 792 MHz

Temperature:   69 C, calibration data 0x5774ed7d

mx6q pll1: 792MHz

mx6q pll2: 528MHz

mx6q pll3: 480MHz

mx6q pll8: 50MHz

ipg clock     : 66000000Hz

ipg per clock : 66000000Hz

uart clock    : 80000000Hz

cspi clock    : 60000000Hz

ahb clock     : 132000000Hz

axi clock   : 264000000Hz

emi_slow clock: 29333333Hz

ddr clock     : 528000000Hz

usdhc1 clock  : 200000000Hz

usdhc2 clock  : 200000000Hz

usdhc3 clock  : 200000000Hz

usdhc4 clock  : 200000000Hz

nfc clock     : 24000000Hz

Board: MX6Q-SABRELITE:[ POR]

Boot Device: I2C

I2C:   ready

DRAM:   1 GB

MMC:   FSL_USDHC: 0,FSL_USDHC: 1

JEDEC ID: 0xbf:0x25:0x41

Reading SPI NOR flash 0xc0000 [0x2000 bytes] -> ram 0x276009b8

SUCCESS

In:    serial

Out:   serial

Err:   serial

Net:   got MAC address from IIM: 00:00:00:00:00:00

FEC0 [PRIME]

Hit any key to stop autoboot:  3     2     1     0

Card did not respond to voltage select!

mmc0(part 0) is current device

MMC: block number 0x1 exceeds max(0x0)

** Can't read from device 0 **

** Unable to use mmc 0:1 for fatload **

** Bad partition 1 **

mmc1 is current device

reading /6q_bootscript

1523 bytes read

## Executing script at 10008000

Unknown command 'hdmidet' - try 'help'

------ no HDMI monitor

i2c - I2C sub-system

Usage:

i2c speed [speed] - show or set I2C bus speed

i2c md chip address[.0, .1, .2] [# of objects] - read from I2C device

i2c mm chip address[.0, .1, .2] - write to I2C device (auto-incrementing)

i2c mw chip address[.0, .1, .2] value [count] - write to I2C device (fill)

i2c nm chip address[.0, .1, .2] - write to I2C device (constant address)

i2c crc32 chip address[.0, .1, .2] count - compute CRC32 checksum

i2c probe - show devices on the I2C bus

i2c reset - re-init the I2C Controller

i2c loop chip address[.0, .1, .2] [# of objects] - looping read of device

Valid chip addresses: 00

Unknown command 'setexpr' - try 'help'

Valid chip addresses: 00

Unknown command 'setexpr' - try 'help'

Valid chip addresses: 00

Unknown command 'setexpr' - try 'help'

Unknown command 'setexpr' - try 'help'

Unknown command 'setexpr' - try 'help'

Unknown command 'setexpr' - try 'help'

Unknown command 'setexpr' - try 'help'

Unknown command 'setexpr' - try 'help'

Unknown command 'setexpr' - try 'help'

Unknown command 'setexpr' - try 'help'

Unknown command 'setexpr' - try 'help'

Unknown command 'setexpr' - try 'help'

Unknown command 'setexpr' - try 'help'

setenv - set environment variables

Usage:

setenv name value ...

    - set environment variable 'name' to 'value ...'

setenv name

    - delete environment variable 'name'

Unknown command 'setexpr' - try 'help'

setenv - set environment variables

Usage:

setenv name value ...

    - set environment variable 'name' to 'value ...'

setenv name

    - delete environment variable 'name'

Unknown command 'setexpr' - try 'help'

setenv - set environment variables

... The above message is repeated continuously... I quit with CTRL-C then..


reading uImage

3887912 bytes read

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

   Image Name:   Linux-3.0.35-1.1.0+g2dc5560

   Image Type:   ARM Linux Kernel Image (uncompressed)

   Data Size:    3887848 Bytes =  3.7 MB

   Load Address: 10008000

   Entry Point:  10008000

   Verifying Checksum ... OK

   Loading Kernel Image ... OK

OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.

Linux version 3.0.35-1.1.0+g2dc5560 (dev@dev-virtual-machine) (gcc version 4.7.2 (GCC) ) #1 SMP PREEMPT Thu Jun 27 14:58:30 EDT 2013

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

CPU: VIPT nonaliasing data cache, VIPT aliasing instruction cache

Machine: Freescale i.MX 6Quad Sabre-Lite Board

Memory policy: ECC disabled, Data cache writealloc

CPU identified as i.MX6Q, silicon rev 1.2

PERCPU: Embedded 7 pages/cpu @8c008000 s5440 r8192 d15040 u32768

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

Kernel command line: enable_wait_mode=off video=mxcfb0:dev=ldb,LDB-XGA,if=RGB666 video=mxcfb0:dev=ldb,1024x600M@60,if=RGB666 video=mxcfb0:dev=lcd,CLAA-WVGA,if=RGB666 video=mxcfb0:off vi

deo=mxcfb0:off video=mxcfb0:off video=mxcfb0:off video=mxcfb0:off video=mxcfb0:off video=mxcfb0:off video=mxcfb0:off video=mxcfb0:off video=mxcfb0:off

PID hash table entries: 4096 (order: 2, 16384 bytes)

Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)

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

Memory: 640MB 256MB = 896MB total

Memory: 900528k/900528k available, 148048k reserved, 0K highmem

Virtual kernel memory layout:

    vector  : 0xffff0000 - 0xffff1000   (   4 kB)

    fixmap  : 0xfff00000 - 0xfffe0000   ( 896 kB)

    DMA     : 0xf4600000 - 0xffe00000   ( 184 MB)

    vmalloc : 0xc0800000 - 0xf2000000   ( 792 MB)

    lowmem  : 0x80000000 - 0xc0000000   (1024 MB)

    pkmap   : 0x7fe00000 - 0x80000000   (   2 MB)

    modules : 0x7f000000 - 0x7fe00000   (  14 MB)

      .init : 0x80008000 - 0x8003a000   ( 200 kB)

      .text : 0x8003a000 - 0x806fe7b4   (6930 kB)

      .data : 0x80700000 - 0x8075a2c0   ( 361 kB)

       .bss : 0x8075a2e4 - 0x807a6584   ( 305 kB)

SLUB: Genslabs=13, HWalign=32, Order=0-3, MinObjects=0, CPUs=4, Nodes=1

Preemptible hierarchical RCU implementation.

NR_IRQS:624

MXC GPIO hardware

sched_clock: 32 bits at 3000kHz, resolution 333ns, wraps every 1431655ms

arm_max_freq=2

MXC_Early serial console at MMIO 0x21e8000 (options '115200')

bootconsole [ttymxc0] enabled

Console: colour dummy device 80x30

console [tty0] enabled, bootconsole disabled

OK, I finally got it working.

The old U-Boot was looking for 6q_bootscript instead of 6x_bootscript.

I had to update U-Boot on my Sabrelite board. I also had to clear the env variables. (command: env default -a && saveenv && boot)

More details here:

http://boundarydevices.com/6q_bootscript/

http://boundarydevices.com/switching-u-boot-versions-on-i-mx6/

http://boundarydevices.com/u-boot-on-i-mx6/

thanks

I went through the exact problems and output you got.

But I can't understand exactly what those 3 links you gave

say we should do to change the u-boot on BD-SL-i.MX6.

Can you be generous and be more specific on the exact steps you did?

i.e. To get through this final step of switching to 6x_bootscript?

I am also using Yocto "fsl-image-gui-nitrogen6x.sdcard" image to boot on

SABRE Lite Quad board (BD-SL-i.MX6)?

I am also confused on whether SD card root should be "root=/dev/mmcblk0p1"

or "root=/dev/mmcblk1p2".


Is this the only solution/work around possible on BD-SL-i.MX6 with this Yocto image?

Please clarify that in your steps.

Apparently Element14 is releasing boards with an odd configuration. From the output, I can see that:

  • The U-Boot version is based on 2009.08, and
  • The environment is still still configured for 6q_bootscript, and
  • The MAC address isn't programmed.

This U-Boot version is slightly in-compatible with the 6x_upgrade script generated by Yocto. It's possible to stick with this version, but you'll need to write a new boot script, and you won't get auto-detection of displays.

Just to clarify for everyone this is what I did to solve the problem above.

Thanks to EricNelson for help!

Here is a sequence of the actions to do in order on Ubuntu 13.04 host (Dylan Yocto):

1-- I used GParted to format a 4 GB SD card to one big fat32 file system partition.

2-- Mounted it as RW:

     $ sudo mount -t vfat -o rw /dev/sdb1 /home/aseema/Documents/my_sd_mnt

3-- Extracted the upgrade scripts from u-boot-2013-6-19.tar.gz tar ball

     into /home/aseema/extracted_u-boot-2013-6-19/

4-- Copied the files I had extracted above to the mounted fat SD card.

     $ cp /home/aseema/extracted_u-boot-2013-6-19/* /home/aseema/Documents/my_sd_mnt

5-- sudo umount /home/aseema/Documents/my_sd_mnt
     (Or eject the GUI way).

6-- To just verify, I unplugged the SD card and re-plugged to make sure

     the automatic mounting on Ubuntu 13.04 shows new files in there.

   

7-- I then plugged the SD card into the board and booted up to u-boot.

     Then I started running the Ubuntu commands below. Also shows

     the actual output I got (Note. if you are using microSD use "dev 1"

     else use "dev 0". I am using "dev 1" below.

MX6Q SABRELITE U-Boot > sf probe 1

JEDEC ID: 0xbf:0x25:0x41

2048 KiB SST25VF016B - 2MB at 0:1 is now current device

MX6Q SABRELITE U-Boot > mmc dev 1

mmc1 is current device

MX6Q SABRELITE U-Boot > fatload mmc 1:1 0x10800000 u-boot.nitrogen6q

reading u-boot.nitrogen6q

338164 bytes read

MX6Q SABRELITE U-Boot > sf erase 0 0xc0000

Erasing SPI NOR flash 0x0 [0xc0000 bytes]

................................................................................................................................................................................................SUCCESS

MX6Q SABRELITE U-Boot > sf write 0x10800000 0x400 $filesize

Writing SPI NOR flash 0x400 [0x528f4 bytes] <- ram 0x10800000

.....SUCCESS

MX6Q SABRELITE U-Boot > sf read 0x12800000 0x400 $filesize

Reading SPI NOR flash 0x400 [0x528f4 bytes] -> ram 0x12800000

SUCCESS

MX6Q SABRELITE U-Boot > cmp.b 0x10800000 0x12800000 $filesize

Total of 338164 bytes were the same

MX6Q SABRELITE U-Boot > run clearenv

JEDEC ID: 0xbf:0x25:0x41

2048 KiB SST25VF016B - 2MB at 0:1 is now current device

Erasing SPI NOR flash 0xc0000 [0x2000 bytes]

..SUCCESS

restored environment to factory default

MX6Q SABRELITE U-Boot >

8-- Now "dd" the yocto SD image you tried before and boot as you did when

     when the problems happened.

i.e.

Now write out the new SD card image to the SD card.


$ sudo dd if=tmp/deploy/images/fsl-image-gui-nitrogen6x.sdcard of=/dev/sdb bs=1M

[sudo] password for aseema:

+++++++++++++++++++++++++++++++++OUTPUT+++++++++++++++++++++++++++++++++++++

864+0 records in

864+0 records out

905969664 bytes (906 MB) copied, 11.41 s, 79.4 MB/s

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++


9--- After you eject the SD card make sure you get a Ubuntu popup saying it is OK

     to now remove it. If you don't get it there might be some corruption in the image.

     if so, try "dd" again. (This time) it should boot all the way.

More perspective here:

i.MX6x SABRE Lite SPI Flash Recovery


Hello, I followed the instructions from this page:

http://boundarydevices.com/switching-u-boot-versions-on-i-mx6/

On my windows machine, I extracted the file 6q_upgrade-20121112.zip to a micro SD card.

Then I inserted this micro SD card in the sabre lite board.

Then, I connected my computer to the serial debug port at 115200 8N1.

At the prompt, I typed the command:

U-Boot> run upgradeu

... (then the UBoot update went through)

After the update I typed the command:

env default -a && saveenv && boot


This is needed to clear the env variables.

After the reboot, UBoot was updated and was using the correct 6x_bootscript.


I put the micro SD card with Yocto and it booted perfectly.

I hope it helps.

ssinfod


Hello,

Really annoying stuff happening on my end, and can't figure out what I did wrong. Here's what is up:

1) Completed first 3 tasks and successfully built an image for imx6q SabreLITE.

2) Insert formatted SD card with fat16/fat32/ext3/ext4 (tried all 4 file formats).

3) a) sudo dd if=fsl-image-gui-imx6qsabrelite.sdcard of=/dev/sdb1 bs=1M

    b) output:

        856+0 records in

        856+0 records out

        897581056 bytes (898 MB) copied, 124.273 s, 7.2 MB/s

4) try and access SD card...no contents, no file system, displaying weird files/filenames => file-space is corrupt.

Do I need to 'bit-bake' the image again, maybe smth went awry during build?

Tried a different SD card too, same issues.

sudo dd if=fsl-image-gui-imx6qsabrelite.sdcard of=/dev/sdb1 bs=1M

I'm not sure how your sdcard is recognized on your linux distro. however, I *always* copy the image to /dev/sdb

I mean /dev/sdb ONLY not /dev/sdbX or /dev/sdb1

If you have a non formated sdcard, or a ext2/ext3/ext4/vfat it does not matter, because the *.sdcard image is partitioned.

it's not a bunch of files to be copied to a partition. It's have the partition table for the sdcards AND the partitions AND the files.

Could you, please, double check and let me know the result?

Yep, that "1" at the end of /dev/sdb was the culprit, removing that and writing just sudo dd if=fsl-image-gui-imx6qsabrelite.sdcard of=/dev/sdb bs=1M did the trick


Runing the image on the board gives following output:

perature:   49 C, calibration data 0x5894f87d                               

mx6q pll1: 792MHz                                                              

mx6q pll2: 528MHz                                                              

mx6q pll3: 480MHz                                                              

mx6q pll8: 50MHz                                                               

ipg clock     : 66000000Hz                                                     

ipg per clock : 66000000Hz                                                     

uart clock    : 80000000Hz                                                     

cspi clock    : 60000000Hz                                                     

ahb clock     : 132000000Hz                                                    

axi clock   : 264000000Hz                                                      

emi_slow clock: 29333333Hz                                                     

ddr clock     : 528000000Hz                                                    

usdhc1 clock  : 198000000Hz                                                    

usdhc2 clock  : 198000000Hz                                                    

usdhc3 clock  : 198000000Hz                                                    

usdhc4 clock  : 198000000Hz                                                    

nfc clock     : 24000000Hz                                                     

Board: MX6Q-SABRELITE:[ POR]                                                   

Boot Device: I2C                                                               

I2C:   ready                                                                   

DRAM:   1 GB                                                                   

MMC:   FSL_USDHC: 0,FSL_USDHC: 1                                               

JEDEC ID: 0xbf:0x25:0x41                                                       

Reading SPI NOR flash 0xc0000 [0x2000 bytes] -> ram 0x276009b8                 

SUCCESS                                                                        

                                                                               

*** Warning - bad CRC, using default environment                               

                                                                               

In:    serial                                                                  

Out:   serial                                                                  

Err:   serial                                                                  

Net:   got MAC address from IIM: 00:00:00:00:00:00                             

FEC0 [PRIME]                                                                   

Hit any key to stop autoboot:  0                                               

mmc1 is current device                                                         

                                                                               

MMC read: dev # 1, block # 2048, count 8192 ... 8192 blocks read: OK           

Wrong Image Format for bootm command                                           

ERROR: can't get kernel image!                                                 

MX6Q SABRELITE U-Boot >                                                        

                                                                               

U-Boot 2009.08-dirty (Jan 17 2013 - 06:55:57)                                  

                                                                               

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

Temperature:   48 C, calibration data 0x5894f87d                               

mx6q pll1: 792MHz                                                              

mx6q pll2: 528MHz                                                              

mx6q pll3: 480MHz                                                              

mx6q pll8: 50MHz                                                               

ipg clock     : 66000000Hz                                                     

ipg per clock : 66000000Hz                                                     

uart clock    : 80000000Hz                                                     

cspi clock    : 60000000Hz                                                     

ahb clock     : 132000000Hz                                                    

axi clock   : 264000000Hz                                                      

emi_slow clock: 29333333Hz                                                     

ddr clock     : 528000000Hz                                                    

usdhc1 clock  : 198000000Hz                                                    

usdhc2 clock  : 198000000Hz                                                    

usdhc3 clock  : 198000000Hz                                                    

usdhc4 clock  : 198000000Hz                                                    

nfc clock     : 24000000Hz                                                     

Board: MX6Q-SABRELITE:[ POR]                                                   

Boot Device: I2C                                                               

I2C:   ready                                                                   

DRAM:   1 GB                                                                   

MMC:   FSL_USDHC: 0,FSL_USDHC: 1                                               

JEDEC ID: 0xbf:0x25:0x41                                                       

Reading SPI NOR flash 0xc0000 [0x2000 bytes] -> ram 0x276009b8                 

SUCCESS                                                                        

                                                                               

*** Warning - bad CRC, using default environment                               

                                                                               

In:    serial                                                                  

Out:   serial                                                                  

Err:   serial                                                                  

Net:   got MAC address from IIM: 00:00:00:00:00:00                             

FEC0 [PRIME]                                                                   

Hit any key to stop autoboot:  0                                               

mmc1 is current device                                                         

                                                                               

MMC read: dev # 1, block # 2048, count 8192 ... 8192 blocks read: OK           

Wrong Image Format for bootm command                                           

ERROR: can't get kernel image!                                                 

MX6Q SABRELITE U-Boot >

What did i do wrong?

Hi Peter. Please, take a look on past comments on this doc (starting like on https://community.freescale.com/docs/DOC-94989#comment-5273) and see how you can ajust your board to load bootloader from sdcard.

from your log, your u-boot is 2009.08, the old one. You booting from your internal memory, not your sdcard.

Rightly so, u-boot is old, but have upgraded to 2013.06 via latest u-Boot production branch tar. However, I am still getting the same error. I have ran the setenv command from the u-Boot command line. If you think it's trying to boot from a different sd-card partition, please advise how I can alter that behavior.

NOTE: I've accessed the links from #comment-5273 beforehand, have made it through to make update of u-boot successfully, but not to change the primary boot partition...

the link I sent you only point to comments on this Doc.

anyway, I copy some reference:

http://boundarydevices.com/6q_bootscript/

http://boundarydevices.com/switching-u-boot-versions-on-i-mx6/

http://boundarydevices.com/u-boot-on-i-mx6/

I have never re-created the steps on sabre lite, so I´m not sure what you may try.

I just found another link that may help you

https://community.freescale.com/message/335684#335684

Hello, I followed your steps correctly,

now when i boot the SD image it says,

================================================

U-Boot 2013.01-rc1-00120-g7c28db0 (Nov 12 2012 - 09:15:04)

CPU:   Freescale i.MX6Q rev1.2 at 792 MHz

Reset cause: POR

Board: Nitrogen6X

DRAM:  1 GiB

WARNING: Caches not enabled

MMC:   FSL_SDHC: 0, FSL_SDHC: 1

SF: Detected SST25VF016B with page size 4 KiB, total 2 MiB

auto-detected panel wsvga-lvds

Display: wsvga-lvds (1024x600)

In:    serial

Out:   serial

Err:   serial

Net:   FEC [PRIME]

Warning: FEC using MAC address from net device

Hit any key to stop autoboot:  0

AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode

flags: ncq stag pm led clo only pmp pio slum part

No port device detected!

** Bad device size - sata 0 **

** Bad device size - sata 0 **

SATA device 1: unknown device

** Bad device sata 1 **

** Bad device sata 1 **

mmc0 is current device

reading /6x_bootscript

** Unable to read file /6x_bootscript **

Failed to mount ext2 filesystem...

** Unrecognized filesystem type **

MMC: no card present

mmc1(part 0) is current device

MMC: no card present

** Bad device mmc 1 **

MMC: no card present

** Bad device mmc 1 **

6x_bootscript not found

serial console at 115200, 8N1

details at http://boundarydevices.com/6q_bootscript

U-Boot >

====================================================================

when i did, sudo dd if=fsl-image-gui-imx6qsabresd.sdcard of=/dev/sdb bs=1M

and check with windows The files visible on the SD card is only uImage

no 6x_bootscript is there.


Im using Yocto dora branch and fsl-image-gui

Hi Daiane,

Thank you for your excellent work.

Im following your tutorial.

I compiled the fsl-image-gui form dora branch.

did dd the fsl-image-gui-imx6qsabresd-20131101005105.rootfs.sdcard to SD card,

and boot form SD. got the following message.

================================================

U-Boot 2013.01-rc1-00120-g7c28db0 (Nov 12 2012 - 09:15:04)

CPU:   Freescale i.MX6Q rev1.2 at 792 MHz

Reset cause: POR

Board: Nitrogen6X

DRAM:  1 GiB

WARNING: Caches not enabled

MMC:   FSL_SDHC: 0, FSL_SDHC: 1

SF: Detected SST25VF016B with page size 4 KiB, total 2 MiB

auto-detected panel wsvga-lvds

Display: wsvga-lvds (1024x600)

In:    serial

Out:   serial

Err:   serial

Net:   FEC [PRIME]

Warning: FEC using MAC address from net device

Hit any key to stop autoboot:  0

AHCI 0001.0300 32 slots 1 ports 3 Gbps 0x1 impl SATA mode

flags: ncq stag pm led clo only pmp pio slum part

No port device detected!

** Bad device size - sata 0 **

** Bad device size - sata 0 **

SATA device 1: unknown device

** Bad device sata 1 **

** Bad device sata 1 **

mmc0 is current device

reading /6x_bootscript

** Unable to read file /6x_bootscript **

Failed to mount ext2 filesystem...

** Unrecognized filesystem type **

MMC: no card present

mmc1(part 0) is current device

MMC: no card present

** Bad device mmc 1 **

MMC: no card present

** Bad device mmc 1 **

6x_bootscript not found

serial console at 115200, 8N1

details at http://boundarydevices.com/6q_bootscript

U-Boot >

====================================================================

It seems that 6x_bootscript is not placed on the SD card.

After reading all the comments it seems that after dd the sdcardimage to SD card there should be two files visible

(6x_bootscript, uImage), but in my case only uImage can be seen.

Hi Nil,

You need to set MACHINE="nitrogen6x" in your local.conf file for SABRE Lite or Nitrogen6x builds.

Note that in your image name above, you have a machine name of "imx6qsabresd"...

Again, you need MACHINE="nitrogen6x" in local.conf

Thanks Eric for information, Im working on that changing MACHINE variable, but unfortunately build failed because of the unavailability of

xserver-common-1.34.tar.gz . It appears that server is down for 2 days now. Do you have an idea about a way to resolve that except waiting for server up?

Im building fsl-image-gui on Dora branch

----------------------------------------------------------------------------------------------------------

WARNING: Failed to fetch URL http://gpe.linuxtogo.org/download/source/xserver-common-1.34.tar.gz, attempting MIRRORS if available

ERROR: Fetcher failure: Fetch command failed with exit code 4, no output

ERROR: Function failed: Fetcher failure for URL: 'http://gpe.linuxtogo.org/download/source/xserver-common-1.34.tar.gz'. Unable to fetch URL from any source.

ERROR: Logfile of failure stored in: /home/user/work/FreescaleYP/fsl-community-bsp/build/tmp/work/all-poky-linux/xserver-common/1.34-r8/temp/log.do_fetch.10417

ERROR: Task 6049 (/home/user/work/FreescaleYP/fsl-community-bsp/sources/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb, do_fetch) failed with exit code '1'

NOTE: Tasks Summary: Attempted 3618 tasks of which 3611 didn't need to be rerun and 1 failed.

Waiting for 0 running tasks to finish:

Summary: 1 task failed:

  /home/user/work/FreescaleYP/fsl-community-bsp/sources/meta-openembedded/meta-oe/recipes-graphics/xserver-common/xserver-common_1.34.bb, do_fetch

Summary: There was 1 WARNING message shown.

Summary: There were 2 ERROR messages shown, returning a non-zero exit code.

user@user-virtual-machine:~/work/FreescaleYP/fsl-community-bsp/build$

----------------------------------------------------------------------------------------------------------

Seems that the linuxtogo site is down. As a workaround, find the tarball somewhere else, then move to downloads folder, from there do this

$ wget URL_OF_TAR_BALL -O xserver-common-1.34.tar.gz

$ > xserver-common-1.34.tar.gz.done


Then build again. I found a good tarball here


Leo

Thsnks Leo, it solved the problem.

I contacted OpenEmbedded admins and we now have this file in their mirror. This should be good for all users now.

无评分
版本历史
最后更新:
‎06-17-2013 07:22 AM
更新人: