Loading linux into eMMC i.MX6 SABRE Board for Smart Devices Based on the i.MX 6 Series

cancel
Showing results for 
Search instead for 
Did you mean: 

Loading linux into eMMC i.MX6 SABRE Board for Smart Devices Based on the i.MX 6 Series

8,026 Views
andrewellis
Contributor III

Hi there,

I am new to the I.MX6 devices, and have recently acquired a SABRE Board type EBV MCIMC6Q.

I have read the document "Manufacturing Tool V2 (MFGTool2) Quick Start Guide" but I cannot get the MFGTool2 to successfully download uBoot and Linux to the eMMC card on my board. I have tried setting the DIP switch SW6 to 11010110 and also 00000000. When I run MFGTool2 it reports that it has found a HID compliant device (if I unplug the SABRE board it says "No device found") so I'm confident that the board has been successfully found. When I press start the app reports "loading uBoot", "loading kernel", then "loading initRamfs". Once it has done those 3 operations it then reports "Jumping to OS", then "no device connected".

What are the DIP settings I need to program the eMMC flash? Which document do I need to read to find out how to make this work?

Kind regards

Andrew

Labels (2)
13 Replies

300 Views
brinihamdi
Contributor II

Andrew i have the same issue as you and i cheked the ucl2.xml file and the profile chosen but still non boot  i want to boot from the eMMC can you send me please the 2 files ? the cfg.ini and the ucl2.xml ?

0 Kudos

300 Views
LeonardoSandova
Specialist I

Hi Andrew,

All this info is on the User Guide. In resume, you need to set the dip switches into 'boot mode' which is all switches off, then run the MFGtool. Once the flashing is done, move the switches to eMMC (there are actually to modes, check the guide) and reset the board. Also, make sure you are using the right profile (eMMC one) on the MFGtool.

Leo

300 Views
andrewellis
Contributor III

Hi Leo,

Thanks for that. I have worked out how to download linux to the eMMC, the thing I missed was that I needed to edit the file cfg.ini so that section [LIST] reads:

name = SabreSD-eMMC


So I can successfully load Linux into the eMMC. The next problem I have run into though is that when trying to boot, uboot runs without any problems but when trying to boot linux I see the following message:

Hit any key to stop autoboot:  0

PHY indentify @ 0x1 = 0x004dd074

FEC: Link is Up 796d

Using FEC0 device

TFTP from server 192.168.0.1; our IP address is 192.168.0.2

Filename 'uImage'.

Load address: 0x10800000

Loading: T T T


I have Tftpd32 running and have set it to look in the folder where uImage is located, but it just won't download the file. I have pinged the server from uboot on the SABRE board and it reported that the server is alive, and I pinged the SABRE board from the PC and it responded to each ping. I'm sorry if I seem to be a pain, but I cannot work out what I've missed, from what I can see it looks as though the MFGTool should load a fully operational system into the eMMC. Is there a step that I've missed?


Andrew


0 Kudos

300 Views
andrewellis
Contributor III

This issue is now solved:

The bootcmd read:

bootcmd=run bootcmd_net


I changed it to:

bootcmd=run bootcmd_mmc

And linux now boots.

300 Views
LeonardoSandova
Specialist I

Great!. Yes, U-boot always runs bootcmd, so what you did is correct, indicating u-boot to take mmc boot commands.

leo

0 Kudos

300 Views
andrewellis
Contributor III

Hi Leo,

I have a couple more problems:

Currently I'm intereacting with uBoot, and linux via J509 serial to USB debug port. When Linux has finished booting it asks for login credentials, I've tried "linaro" for both user name and password as suggested in SABRE_SD User guide, but those credentials don't work, what are the correct credentials?

Also how do I enable the HDMI display? I've tried using the following bootargs:

bootargs_base console=ttymxc0,115200 video=mxcfb0:dev=hdmi,1024x768M@60,if=RGB24

but this causes a kernel panic.

Andrew

0 Kudos

300 Views
LeonardoSandova
Specialist I

Try root/root as username and password; but you are right, the linaro/linaro password should be the correct one. Please stop the the booting process and type 'print'. Something is wrong on your bootargs. Also, share the whole kernel log as an attachment.

0 Kudos

300 Views
andrewellis
Contributor III

Hi Leo,

root/root worked, I managed to get through to the Linux command prompt.

I have attached the kernel output. I have also attached the environment variables given by typing print env

Kind regards

Andrew

0 Kudos

300 Views
LeonardoSandova
Specialist I

stop the booting process and type the following:

MX6Q SABRESD U-Boot > setenv bootargs_mmc 'setenv bootargs ${bootargs} root=/dev/

mmcblk0p1 rootwait rw video=mxcfb1:dev=ldb,LDB-XGA,if=RGB666 video=mxcfb0:dev=hdmi,

1920x1080M@60,if=RGB24 ip=dhcp'

MX6Q SABRESD U-Boot > save

MX6Q SABRESD U-Boot > boot

You have set the wrong root device, I believe.



0 Kudos

300 Views
andrewellis
Contributor III

Hi Leo,

Thank you for your answer.

I tried the above, but still got the kernel panic error, I have made several changes to the boot commands, so I decide to start with a clean sheet of paper and reprogram the eMMC. I have run into a problem when doing this, the MFGTool gets most of the way through the process then fails with the following error:

"Push" error, file="C:\AMP\Drivers\Freescale\Mfgtools\Profiles\MX6Q Linux Update\OS Firmware\files\oneiric.tgz"

I tried removing the folder where that file was and unpacked the archive where the mfg tool is again. I powered down the board made sure all dips were set to off, checked the usb otg and usb-serial ports were connected to the host pc correctly, and powered up the sabre board again. I still had the same error from the MFGTool. I have looked through this forum and seen that other people have had this problem but none of the posts offer a solution which solves the problem.

I have added the kernel log which I obtained whilst the MFGTool was running incase that helps.

0 Kudos

300 Views
andrewellis
Contributor III

Hi again,

I have solved this problem, it was caused by the file oneiric.tgz being corrupted, I couldn't open it with 7-zip. The errant file was found in Mfgtools-Rel-1.1.0_121218_MX6Q_UPDATER.tar.gz which I downloaded from this page http://www.freescale.com/webapp/sps/site/prod_summary.jsp?code=RDIMX6SABREBRD&fpsp=1&tab=Design_Tool...

I downloaded the package again and had the same problem. So I downloaded L3.0.35_1.1.0_oneiric.tgz from the same url and renamed the file to oneiric.tgz and it copied without any problems.

I can now run Ubuntu successfully on my system. My final issue I'm trying to resolve is that the screen is stuck on 640x480 and I cannot find how to change that. I'll keep you posted on that.

Andrew

0 Kudos

300 Views
LeonardoSandova
Specialist I

Hi Andrew,

I am glad you solve your issue. you mean the corrupted oneiric tarball was embedded on the MFGtool? the oneric file is huge so I wonder why it is inside the MFGtool. The oneiric file you downloaded it is the latest, so you are using the correct one. The XML configuration file that MFGtool uses indicates which files the tool picks to flash the board, so the description should match with the real file name. Yes please, post the solution once you find it.

Leo

0 Kudos

300 Views
andrewellis
Contributor III

Hi Leo,

Yes it was the oneric file included with the MFGtool. I noticed the file was large, the MFGTool was busy for a while!

I've not managed to set the screen resolution. It is stuck at 640x480. I'll post a seperate question about that.

Andrew

0 Kudos