A tutorial on 'Freescale Yocto Project'. Source code is located here
NOTE: When doing 'repo init -u .... -b <LATEST_STABLE_BRANCH_NAME>', make sure you are using the latest stable branch (dora is the latest when writing this note)
Is this PDF file cut off from the right side? I am getting an error:
$ repo init -u https://github.com/Freescale/fsl-community-bsp-platform -b
Usage: repo init -u url [options]
repo: error: -b option requires an argument
Oh yes! I will correct it soon. The source code for this pdf is found on the github link.
For your problem, please add 'dylan', resulting in:
$ repo init -u https://github.com/Freescale/fsl-community-bsp-platform -b dylan
Leo
Hi Thomas,
did you run the setup-environment script? After its executing, the prompt is now under the build folder, and in that folder the correct layers paths are on conf/bblayers.conf. Make sure the setup script is running fine and the bblayers.conf has correct paths.
Leo
Hi Leonardo
We are having problems with HDMI resolution on a Sabrelite board. Looking for information about the kernel graphic driver I came to your tutorial. The chapter about "Building the kernel manually" take my attention.
I clonegited the linux and then looked for the file mxc_hdmi.c (I saw a reference on another page) ... and I did not find it. Then i looked for it at our yoctodylan directory (I already did not remenber why I clonedgited before I look here) and I found it at:
build/tmp/work/imx6qsabrelite-poky-linux-gnueabi/linux-boundary/3.0.35-r0/git/drivers/video
My first question is:
If build/tmp/work/imx6qsabrelite-poky-linux-gnueabi/linux-boundary/3.0.35-r0/git seems to be the complete linux Yocto is using, why is necessary to download another copy?
And the second:
Why are the linux different?
Thanks and best regards
On your cloned Linux kernel, did you move to the correct branch? You can compile either in the Yocto or your clone kernel folder, both are clones from the same source. In the other hand, the Yocto kernel may have some patches on top (look at the recipe), and the one you clone don't.
Leo
Hi Leonardo
I do not understand what do you mean with correct branch. Be careful: here is a deep newbie, me.
The cloned linux root Makefile has:
VERSION = 3 PATCHLEVEL = 2 SUBLEVEL = 0 EXTRAVERSION = NAME = Saber-toothed Squirrel
The yocto dylan build\tmp\work\imx6qsabrelite-poky-linux-gnueabi\linux-boundary\3.0.35-r0\git Makefile has:
VERSION = 3 PATCHLEVEL = 0 SUBLEVEL = 35 EXTRAVERSION = NAME = Sneaky Weasel
So I suppose, yoctolinux is 3.0.35 and clonedlinux is 3.2.0.
The folder drivers/video/mcx is in 3.0.35 but it is not in 3.2.0. Is it supressed? or is it not implemented yet?
Thank you
New stable branch has been pushed called 'dora'. So replace 'dylan' to 'dora' in all slides to get latest stable commits.
Hi Leonardo,
I am trying to install Yocto on i.Mx6 and I am referring the above document
But I am getting following error when I give bitbake fsl-image-gui
| ERROR: Function failed: Unpack failure for URL: 'http://zlib.net/pigz/pigz-2.3.tar.gz'.
gzip: stdin: invalid compressed data--crc error
| tar: Child returned status 1
| tar: Error is not recoverable: exiting now
I checked that link manually and that link is no more exists.only pigz-2.3.1.tar.gz is available.
How to solve this problem and make bitbake to fetch latest pigz?
Thanks in advance
Hi Krishna
Unfortunately fetch issues are common. It may be the case that either the site is down temporally so you may try later. One way to overcome this problem is find the tarball somewhere and place it on the 'downloads' folder. I know, it is ugly but you do not stuck.
Leo
Hi Leanardo,
Now I am able to build the fsl-image-gui. But it is hanging while booting.
Bootlog is
In: serial
Out: serial
Err: serial
Net: FEC [PRIME]
Warning: FEC using MAC address from net device
Hit any key to stop autoboot: 0
mmc1 is current device
reading boot.scr
** Unable to read file boot.scr **
reading uImage
3872628 bytes read in 342 ms (10.8 MiB/s)
Booting from mmc ...
reading imx6q-sabresd.dtb
** Unable to read file imx6q-sabresd.dtb **
## Booting kernel from Legacy Image at 12000000 ...
Image Name: Linux-3.0.35-1.1.0+yocto+g21304e
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 3872564 Bytes = 3.7 MiB
Load Address: 10008000
Entry Point: 10008000
Verifying Checksum ... OK
After that boot is not going further,
What might be the issue?
So I am assuming your MACHINE=imx6qsabresd and your are booting it the corresponding board.
Seems that the device tree file is not being found. Which branches are you using? dora?
If problem remains, please post the question into the meta-freescale list.
Leo
Good day Leo,
Just a heads up but the curl path you have in your document (i.e. https://dl-ssl.google.com/dl/googlesource/git-repo) is no longer valid... I just tried today and I get an Error 404 in the resulting "repo" file.
Secondly, I tried to find repo and when I googled it I found repo 1.19...however this version when doing the repo init... generates the following "could not verify the tag 'v1.12.7'". When I investigated this error I found others had this issue and they ended up getting repo from "http://commondatastorage.googleapis.com/git-repo-downloads/repo". So the resulting command I used was:
"curl http://commondatastorage.googleapis.com/git-repo-downloads/repo > ~/bin/repo"
and all is fine now.
Cheers,
Sam
Hello,
The document is great! However, I have some questions, as follows:
UBOOT_MACHINE = "mx6qsabresd_config". Should this be changed to reflect the wandboard-quad?
I am used to the ./configure, make linux, make linux_install method of building an embedded kernel and similarly for applications. I am finding the whole recipes thing quite confusing although I can see its merits. Are there any other clear, current, step-by-step guides to help me?
Thanks, and
Best regards,
Peter
Adding few notes regarding "Building the Kernel Manually" after review and test on my platform (DECEMBER 2015/MCIMX6UL-EVK)
I am working with the i.MX6 UL EVK board (MCIMX6UL-EVK), my local BRANCH is imx_3.14.38_6ul_ga. The defconfig used for my setup is: imx_v7_defconfig (the configuration is stored in the kernel source code under arch/arm/configs).
To be able to run make menuconfig properly on my Ubuntu host machine (Linux 3.13.x), I had to "apt-get install" the package called:libcurses5-dev.
The SD card requires a zImage, so I just called "make zImage" to get the new image built.