The new page about how to add support for a custom board in YOCTO is now here:
How to develop your own software: uBoot, Linux, Filesystem, YOCTO
Note: Below is the old page, but it still can be useful.
Content
- Prepare the environment
- uBoot: Create a custom meta layer
- uBoot: Customize the source code and create a patch file
- uBoot: Add the patch into our custom meta layer
- uBoot: Procedure of updating source code and creating patches
- uBoot: How to update uBoot 2014 in SPI
- Linux: Create a custom meta layer
- Linux: Customize the source code and create a patch file
- Linux: Add the patch into our custom meta layer
- Linux: Procedure of updating source code and creating patches
See also
On this page, you will find step-by-step instructions to add support of your own custom hardware into YOCTO. As an example we will be working with u-Boot, but same applies to Linux. In your case replace imx6rex with your own board name. Also, use your own github repositories (e.g. replace https://github.com/FEDEVEL/imx6rex-uboot-2014.01.git with your own path like https://github.com/
Prepare the environment
Prepare the YOCTO environment. If you already have the fsl-community-bsp directory with YOCTO, skip this step:
cd mkdir fsl-community-bsp cd fsl-community-bsp git config --global user.email "your_email@example.com" git config --global user.name "yourname" repo init -u https://github.com/Freescale/fsl-community-bsp-platform -b daisy repo sync source setup-environment build
Once we have the fsl-community-bsp and YOCTO, we need to get all the latest source code. Run this:
cd ~/fsl-community-bsp/build bitbake core-image-minimal
After this step, all the latest source code for u-Boot is located in this temp directory:
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/
This directory is always deleted and over written after a ‘-c clean’ command. If you do any changes directly in this directory, after -c clean everything will be gone. Therefore we have to create something called meta layer.
uBoot: Create a custom meta layer
We are going to create a new meta layer (this is the place were all the changes for our board will be recorded). As an example, I will use imx6rex:
cd ~/fsl-community-bsp/sources yocto-layer create imx6rex
Go through the procedure and also create examples (here are the values I used to generate a new layer: 6, y, example, y, example, 0.1). Note: Here you can find more info about how to create new layer: YOCTO – Create a new layer
This is important, do not forget update bblayers.conf. Do this:
gedit ~/fsl-community-bsp/build/conf/bblayers.conf
and add this (add this line after ‘${BSPDIR}/sources/meta-fsl-demos \’):
${BSPDIR}/sources/meta-imx6rex \
Save the bblayers.conf and test if you can see the meta-imx6rex:
cd ~/fsl-community-bsp/build/ bitbake-layers show-layers
There should be this line:
meta-imx6rex /home/fedevel/fsl-community-bsp/sources/meta-imx6rex 6
uBoot: Customize the source code and create a patch file
Now the hard part. We have to add all our changes into our new imx6rex meta layer. The thing is, the meta layer uses patch files. To generate patch files, we will use github.
Be sure you start with empty meta-imx6rex (no patches inside). Run this to get clean starting source code. Run this:
cd ~/fsl-community-bsp/build/ bitbake -c clean u-boot-fslc bitbake -c compile -f u-boot-fslc bitbake core-image-minimal
We need to do a small correction for github. Delete the old .git:
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git rm -rf .git
and edit .gitignore
nano .gitignore
Go on the end of the file and add following line (a folder .pc/ is added during applying patches and we dont want to have it in github):
/.pc/*
We need to upload the u-Boot source code to github. Create a new repository and put it there. (Here you can find more information about these steps: YOCTO – Using a Git Workflow)
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git git init git add . git commit -m 'Initial version' git remote add origin https://github.com/FEDEVEL/imx6rex-uboot-2014.01.git git push -u origin master
I normally also create a branch:
git branch daisy git push origin daisy
Change to the branch ‘daisy’:
git checkout daisy
Just to test if everything is working oki, make a change in one of the files (e.g. change name of the board):
gedit ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/board/freescale/mx6sabresd/mx6sabresd.c
Find: ‘puts(“Board:’ and change it to your board name.
Upload the change to github:
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/ git branch git add . git diff origin/daisy git commit -m 'Initial change: Board name change' git push origin daisy
Now, run this command to generate the patch which we need for our meta-imx6rex (a *.patch file will be generated):
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/ git format-patch -1
uBoot: Add the patch into our custom meta layer
How to put these changes into our meta-imx6rex? In our meta-imx6rex we have to create exactly same path as is used in the meta-fsl-arm which defines sabresd u-boot:
cd ~/fsl-community-bsp/sources/meta-imx6rex mkdir recipes-bsp cd recipes-bsp mkdir u-boot cd u-boot
Now we will create a file with exactly the same name as the file from the meta-fsl-arm which defines sabresd u-boot and which we would like to change. Our meta layer will apply our *.bbappend file on the top of the sabresd *.bb file. Basically, it just adds our patch on the top of the patches done for the sabresd.
gedit ~/fsl-community-bsp/sources/meta-imx6rex/recipes-bsp/u-boot/u-boot-fslc_2014.01.bbappend
Copy this inside the ‘u-boot-fslc_2014.01.bbappend’ file:
FILESEXTRAPATHS_prepend := "${THISDIR}/files:" SRC_URI += "file://0001-Initial-change-Board-name-change.patch"
The “files” inside “FILESEXTRAPATHS_prepend := “${THISDIR}/files:”" defines the directory where our patch “0001-Initial-change-Board-name-change.patch” is located. This line ‘SRC_URI += “file://0001-Initial-change-Board-name-change.patch”‘ inside u-boot-fslc_2014.01.bbappend, tells about the patch file which should be applied.
Now create the “files” directory and move there the patch file:
mkdir ~/fsl-community-bsp/sources/meta-imx6rex/recipes-bsp/u-boot/files cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/ mv 0001-Initial-change-Board-name-change.patch ~/fsl-community-bsp/sources/meta-imx6rex/recipes-bsp/u-boot/files
It’s very important we store our original .git directory from the u-boot source code as it initialize the git branches for our github repositories. Later, when we get a fresh source code, we will just copy it and we can easily use it with our github.
Note for me: Without the .git it always wanted to initialize ALL the files and it always wanted to report ALL the files in the github as the new changes (not only the small changes what I really made)
We will create a directory, where we are going to backup our .git
cd ~/fsl-community-bsp/sources/ mkdir GitConfigs-iMX6Rex cd GitConfigs-iMX6Rex mkdir GitConfig-uBoot cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/ cp -prv .git ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex/GitConfig-uBoot/ cp -prv .gitignore ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex/GitConfig-uBoot/
Ideally, we want to keep copy of this directory. Zip the files and store it in the meta-imx6rex location:
cd ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex/ tar -zcvf ../meta-imx6rex/YOCTO-Git-Config-iMX6Rex-uBoot.tar.gz GitConfig-uBoot
We would like to also keep our meta files and GitConfigs in our github. Upload them under ‘daisy’ branch:
cd ~/fsl-community-bsp/sources/meta-imx6rex git init git add . git commit -m 'Initial version' git remote add origin https://github.com/FEDEVEL/meta-imx6rex.git git push -u origin master git branch daisy git push origin daisy git checkout daisy
uBoot: Procedure of updating source code and creating patches
During development, you will need to keep updating the source code. Follow this procedure to do so.
Important! You need to run all the steps up to the line starting with “NOW do all the source changes …” before you start editing your files.
Get the latest meta-imx6rex and GitConfigs:
cd ~/fsl-community-bsp/sources/meta-imx6rex git checkout daisy git branch git pull origin daisy
Update our local GitConfigs with the one from Github:
cd ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex/ rm -rf GitConfig-uBoot tar -zxvf ../meta-imx6rex/YOCTO-Git-Config-iMX6Rex-uBoot.tar.gz
We can clean the u-Boot source and build it again, with the changes defined in our meta-imx6rex layer:
cd ~/fsl-community-bsp/build/ bitbake -c clean u-boot-fslc bitbake -c compile -f u-boot-fslc bitbake core-image-minimal
Delete the old .git, initialize our own .git:
cd ~/fsl-community-bsp/build/ rm -rf tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/.git cp -prv ../sources/GitConfigs-iMX6Rex/GitConfig-uBoot/.git tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/ cp -prv ../sources/GitConfigs-iMX6Rex/GitConfig-uBoot/.gitignore tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/
Compare our u-Boot source code and the new YOCTO u-Boot source code:
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git git init git fetch origin daisy git diff origin/daisy
Check the differences, correct them if needed. Normally, there should be none.
Merge the changes and switch to ‘daisy’:
git checkout daisy
NOW do all the source changes you need to do. Don’t forget to compile and test:
cd ~/fsl-community-bsp/build/ bitbake -c compile -f u-boot-fslc bitbake core-image-minimal
Note: If you have problems with compilation, you may need tu run ‘bitbake -c clean u-boot-fslc’, but this will remove all the source code and you will need to start this procedure again.
Plug in an SD card into your host computer and run this:
sudo dd if=~/fsl-community-bsp/build/tmp/deploy/images/imx6qsabresd/core-image-minimal-imx6qsabresd.sdcard of=/dev/sdb umount /media/Boot\ imx6qs
To test it, remove the SD from PC and insert it into the iMX6 Rex SD slot placed on the edge. Connect power. Once you are in the u-Boot, insert this command to boot from SD:
mw.l 0x020d8040 0x3040; mw.l 0x020d8044 0x10000000; reset
Once you are happy, you can flash u-Boot into SPI memory. Read How to update uBoot 2014
!!! Compilation may remove your changes in some files !!!! Always check the changes before you start uploading them to Github!
Important! Once you are done with all the changes, you need to run all the commands below, down to ‘uBoot: How to update uBoot 2014 in SPI’:
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git git add . git commit -m 'Memory config update' git push origin daisy
Create a patch and copy it to our custom meta-imx6Rex layer:
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/ git format-patch -1 mv 0001-Memory-config-update.patch ~/fsl-community-bsp/sources/meta-imx6rex/recipes-bsp/u-boot/files
Open our *.bbappend file:
gedit ~/fsl-community-bsp/sources/meta-imx6rex/recipes-bsp/u-boot/u-boot-fslc_2014.01.bbappend
and add this line referencing to the new patch:
SRC_URI += "file://0001-Memory-config-update.patch"
Note: be careful how you copy and paste the line. Sometimes you may get like “ERROR: ParseError at /home/fedevel/fsl-community-bsp/sources/meta-imx6rex/recipes-bsp/u-boot/u-boot-fslc_2014.01.bbappend:4: unparsed line: ‘SRC_URI += “file://0001-Memory-config-update.patch.”. In this case, just delete it and try again. You have there probaly some unvisible characters.
Store the current .git directory, so we can use it after next fresh source code import:
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/ rm -rf ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex/GitConfig-uBoot/.git cp -prv .git ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex/GitConfig-uBoot/
Update meta-imx6rex github repository with the new patch + upload there also our GitConfigs:
cd ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex/ tar -zcvf ../meta-imx6rex/YOCTO-Git-Config-iMX6Rex-uBoot.tar.gz GitConfig-uBoot
We would like to also keep our meta files and GitConfigs in our github. Upload them under ‘daisy’ branch:
cd ~/fsl-community-bsp/sources/meta-imx6rex git checkout daisy git branch git add . git commit -m 'Memory patch added' git push origin daisy
And that’s it. If you need to do more changes, go back to Procedure of updating source code and creating patches.
This may not be the most optimal way how to work with github, but it works. If you have any suggestions how to improve this process, please send me an email. Thank you.
uBoot: How to update uBoot 2014 in SPI
Important note: This YOCTO uBoot is not ready yet!. I still need to make one for 2GB and one for 512MB. Plus I need to add support for saveenv. Use the standard uBoot.
Compile a new u-Boot 2014 as described in the Procedure of updating source code and creating patches. Then copy u-boot.imx to tftp directory:
cp -prv ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/u-boot.imx /tftp
Go to the iMX6 Rex board and run following line (dont forget to update ipaddr and serverip according to your network):
setenv ipaddr 192.168.0.150;setenv serverip 192.168.0.74;mw.b 0x10800000 0xFF 0x80000;tftp 0x10800400 u-boot.imx;sf probe;sf erase 0x0 0x80000;sf write 0x10800000 0x0 0x80000
Note for me: The *.imx file needs offset 0×400 (Memory map of the SPI: 0-0x3FF Free region; 0×400-0x41f Image Vector Table; …. for more info see http://cache.freescale.com/files/32bit/doc/app_note/AN4581.pdf).
Go through the uBoot section (above) before you go to the Linux (below)
Linux: Create a custom meta layer
Prepare the Linux source code:
cd ~/fsl-community-bsp/build/ bitbake -c clean linux-imx bitbake -c compile -f linux-imx
Update meta-imx6rex layer directory structure to support our custom modifications in kernel:
cd ~/fsl-community-bsp/sources/meta-imx6rex mkdir recipes-kernel cd recipes-kernel mkdir linux cd linux mkdir linux-imx-3.10.17 cd linux-imx-3.10.17 mkdir mx6
Create *.bbappend file:
gedit ~/fsl-community-bsp/sources/meta-imx6rex/recipes-kernel/linux/linux-imx_3.10.17.bbappend
and place there this:
FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}-${PV}:"
Copy the original .config file to our meta-imx6rex, so we can modify it for our hardware:
cp ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/.config mx6/defconfig
Linux: Customize the source code and create a patch file
Delete the old .git directory
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/ rm -rf .git
Edit .gitignore
gedit ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/.gitignore
Find and of the file and add following line:
/.pc/*
Upload source code to github. Create a new repository and put it there:
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/ git init git add . git commit -m 'Initial version' git remote add origin https://github.com/FEDEVEL/imx6rex-linux-3.10.17.git git push -u origin master
And create new branch daisy:
git branch daisy git push origin daisy
Switch to ‘daisy’:
git checkout daisy
To test if everything is working oki, make a change in one of the files (e.g. change name of the board):
gedit ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/arch/arm/boot/dts/imx6q-sabresd.dts
Find: ‘model = “Freescale i.MX6 Quad SABRE Smart Device Board”;’ and change it for ‘model = “iMX6 Rex Development Baseboard”;’
Upload the change to github:
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/ git branch git add . git diff origin/daisy git commit -m 'Initial change: Board name change' git push origin daisy
Now, run this command to generate the patch which we need for our meta-imx6rex (a *.patch file will be generated):
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/ git format-patch -1
Linux: Add the patch into our custom meta layer
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/ mv 0001-Initial-change-Board-name-change.patch ~/fsl-community-bsp/sources/meta-imx6rex/recipes-kernel/linux/linux-imx-3.10.17
Edit:
gedit ~/fsl-community-bsp/sources/meta-imx6rex/recipes-kernel/linux/linux-imx_3.10.17.bbappend
Add:
SRC_URI += "file://0001-Initial-change-Board-name-change.patch"
We will create a directory, where we are going to backup our .git
cd ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex mkdir GitConfig-Linux cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/ cp -prv .git ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex/GitConfig-Linux/ cp -prv .gitignore ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex/GitConfig-Linux/
Ideally, we want to keep copy of this directory. Zip the files and store it in the meta-imx6rex location:
cd ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex/ tar -zcvf ../meta-imx6rex/YOCTO-Git-Config-iMX6Rex-Linux.tar.gz GitConfig-Linux
We would like to also keep our meta files and GitConfigs in our github. Upload them under ‘daisy’ branch:
cd ~/fsl-community-bsp/sources/meta-imx6rex git checkout daisy git branch git add . git commit -m 'Linux: Board name udpated' git push origin daisy git checkout daisy
Linux: Procedure of updating source code and creating patches
Get the latest meta-imx6rex and GitConfigs:
cd ~/fsl-community-bsp/sources/meta-imx6rex git checkout daisy git branch git pull origin daisy
Update our local GitConfigs with the one from Github:
cd ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex/ rm -rf GitConfig-Linux tar -zxvf ../meta-imx6rex/YOCTO-Git-Config-iMX6Rex-Linux.tar.gz
We can clean the Linux source and build it again, with the changes defined in our meta-imx6rex layer:
cd ~/fsl-community-bsp/build/ bitbake -c clean linux-imx bitbake -c compile -f linux-imx
Delete the old .git, initialize our own .git:
cd ~/fsl-community-bsp/build/ rm -rf tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/.git cp -prv ../sources/GitConfigs-iMX6Rex/GitConfig-Linux/.git tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/ cp -prv ../sources/GitConfigs-iMX6Rex/GitConfig-Linux/.gitignore tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/
Compare our Linux source code and the new YOCTO Linux source code:
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/ git init git fetch origin daisy git diff origin/daisy
Check the differences, correct them if needed. Normally, there should be none.
Merge the changes and switch to ‘daisy’:
git checkout daisy
NOW do all the source changes you need to do. Don’t forget to compile and test:
cd ~/fsl-community-bsp/build/ bitbake -c compile -f linux-imx
Now you can also change defconfig Here is how:
For example, let’s disable ‘CONFIG_TOUCHSCREEN_MAX11801′. Open imx6rex defconfig:
gedit ~/fsl-community-bsp/sources/meta-imx6rex/recipes-kernel/linux/linux-imx/linux-imx-3.10.17/mx6/defconfig
Find the line with ‘CONFIG_TOUCHSCREEN_MAX11801′ and change it from:
CONFIG_TOUCHSCREEN_MAX11801=y
to:
# CONFIG_TOUCHSCREEN_MAX11801 is not set
Recompile again:
cd ~/fsl-community-bsp/build/ bitbake -c compile -f linux-imx
If you would like to test the new kernel and you already have SD card created, you can just replace the old uImage with the new one. Insert your SD card and copy our new uImage:
cp ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/arch/arm/boot/uImage /media/Boot\ imx6qs/ umount /media/Boot\ imx6qs umount /media/f0af9ccb-3217-4e68-be14-3ea3ead5f0f4
Remove the SD card from the host computer and run it on your iMX6 Rex board.
!!! Compilation may remove your changes in some files !!!! Always check the changes before you start uploading them to Github!
Important! Once you are done with all the changes, you need to run all the commands below, up to ‘APPENDIX: …’:
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/ git add . git commit -m 'MAX11801 removed from DTSI' git push origin daisy
Create a patch and copy it to our custom meta-imx6Rex layer:
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/ git format-patch -1 mv 0001-MAX11801-removed-from-DTSI.patch ~/fsl-community-bsp/sources/meta-imx6rex/recipes-kernel/linux/linux-imx-3.10.17
Edit:
gedit ~/fsl-community-bsp/sources/meta-imx6rex/recipes-kernel/linux/linux-imx_3.10.17.bbappend
Add:
SRC_URI += "file://0001-MAX11801-removed-from-DTSI.patch"
Store the current .git directory, so we can use it after next fresh source code import:
cd ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/linux-imx/3.10.17-r0/git/ rm -rf ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex/GitConfig-Linux/.git cp -prv .git ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex/GitConfig-Linux/
Update meta-imx6rex github repository with the new patch + upload there also our GitConfigs:
cd ~/fsl-community-bsp/sources/GitConfigs-iMX6Rex/ tar -zcvf ../meta-imx6rex/YOCTO-Git-Config-iMX6Rex-Linux.tar.gz GitConfig-Linux
We would like to also keep our meta files and GitConfigs in our github. Upload them under ‘daisy’ branch:
cd ~/fsl-community-bsp/sources/meta-imx6rex git checkout daisy git branch git add . git commit -m 'Linux: MAX11801 removed from DTSI' git push origin daisy
And that’s it. If you need to do more changes, go back to Procedure of updating source code and creating patches.
######################################################################
APPENDIX: Notes
APPENDIX: Important uBoot files
(Tip: Press CTRL+L show the path in Ubuntu 12.04 File Browser)
//main board file gedit ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/board/freescale/mx6sabresd/mx6sabresd.c gedit ~/fedevel/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/include/configs/mx6sabre_common.h //Memory configuration gedit ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/board/freescale/imx/ddr/mx6q_4x_mt41j128.cfg //these are also important gedit ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/include/configs/mx6sabresd.h gedit ~/fsl-community-bsp/build/tmp/work/imx6qsabresd-poky-linux-gnueabi/u-boot-fslc/v2014.01-r0/git/arch/arm/include/asm/arch/mx6q_pins.h
APPENDIX: Run make menuconfig
To run make menuconfig:
bitbake linux-imx -c menuconfig