Personal tools

Log in

Changes

From IGEP - ISEE Wiki

Jump to: navigation, search

The bootloader U-Boot

3 bytes removed, 13:21, 27 November 2018
Prepare your U-BOOT
==Necessary package==
In order to compile the u-boot it is '''necessary ''' to set up the Cross Compiler correctly. In this [[Set Up the Cross Compiler|post ]] it is detailed how to set up correctly the Cross Compiler (and the desired version).
{{Message/Information Message|message=The following steps has been tested using '''Ubuntu 16.04''' and the '''4.9 version''' of the '''arm-linux-'''<span class="mw-headline">'''gnueabihf''' compiler</span>}}
 
In order to install the Compiler we can use this command:
 
sudo apt install gcc-arm-linux-gnueabihf
==Download U-Boot Source==
 First of all, will be a distintion between '''NXP'''-processors products and '''ARM'''-processors products. Because there are different kinds of U-Boot depending of each processor.
* Once we know which U-Boot have we will clone the corresponding git repository.
==== ====
====<span dir="auto">U-Boot '''ARM''' Series</span>====
: If we have an ARM series we will follow this table to get our source of U-Boot
Clone the u-boot repository using git address:
<span style="color: #002d87000000;"><code><span style="color: #002d87;">git clone git@git.isee.biz:arm-boot/u-boot-arm.git</span></code> </span> 
or
 <code><span style="color: #002d87000000;">git clone </spancode> git clone [https://git.isee.biz/arm-boot/u-boot-arm.git https][https://git.isee.biz/arm-boot/u-boot-arm.git ://git.isee.biz/arm-boot/u-boot-arm.git]</code></span>
|- style="height: 110px;"
Go to the u-boot-arm directory and checkout the isee_v2017.03 as:
<span style="color: #002d87;"><code><span style="color: #002d87;"><span style="color: #000000;">cd u-boot-arm</span></span></code></span>
<code><span style="color: #002d87000000;"><code>git checkout remotes/origin/isee_v2017.03 -b isee_v2017.03 </spancode></codespan>
|}
! style="background-color: #ffffff; width: 223px;"|'''<span id="Clone_the_u-boot_repo" class="mw-headline">Clone the u-boot repository</span>'''
| style="width: 626px; height: 44px;"|
<span style="color: #000000;">Clone the u-boot repository using git address:</span>
<span style="color: #002d87000000;"><code><span style="color: #002d87;">git clone git@git.isee.biz:arm-boot/u-boot-imx.git</span></code></span>
<span style="color: #000000;">or</span>
 <code><span style="color: #002d87000000;">git clone </spancode> git clone [https://git.isee.biz/arm-boot/u-boot-imx.git https://git.isee.biz/arm-boot/u-boot-imx.git]</code></span>
|- style="height: 89px;"
! style="background-color: #ffffff; width: 223px;"|'''<span id="Checkout_u-boot_repo" class="mw-headline">Checkout u-boot repository</span>'''
| style="width: 626px; height: 89px;"|
<span style="color: #000000;">Go to the u-boot-imx directory and checkout the isee_imx_v2017.03.y as:</span>
<code><span style="color: #002d87000000;"><code>cd u-boot-imx</spancode></codespan>
<code><span style="color: #002d87000000;"><code>git checkout remotes/origin/isee_imx_v2017.03_4.9.11_1.0.0_ga -b isee_imx_v2017.03_4.9.11_1.0.0_ga0_ga </spancode> </codespan>
|}
In order to load the default configuration of the target board, we have to write the following command:
<span style="color: #002d87000000;"> make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- [your_defconfig]</span>
* In the following table it can be found the name of each default configuration associated to each IGEP PROCESSORS BOARDS:
| style="width: 196px;"|IGEPv2 DM3730
| style="width: 10px;"|igep0020_defconfig
| style="width: 644px;"|<code><span style="color: #002d87000000;"><code>make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- igep0020_defconfig</spancode></codespan>
|-
| style="width: 196px;"|IGEP COM MODULE DM3730/AM3703
| style="width: 10px;"|igep0030_defconfig
| style="width: 644px;"|<span style="color: #002d87000000;"><code><span style="color: #002d87;">make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- igep0030_defconfig</span></code></span>
|-
| style="width: 196px;"|IGEP COM AQUILA AM335x
am335x_igep0033_defconfig
| style="width: 644px;"|<span style="color: #002d87000000;"><code><span style="color: #002d87;">make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- am335x_igep0033_defconfig</span></code></span>
|-
| style="width: 196px;"|IGEPv5 OMAP5432
| style="width: 10px;"| 
| style="width: 644px;"|<span style="color: #002d87000000;"><code><span style="color: #002d87;">make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-</span></code></span>
|-
| style="width: 196px;"|IGEP SMARC AM335x
| style="width: 10px;"|am335x_igep0034_defconfig
| style="width: 644px;"|<span style="color: #002d87000000;"><code><span style="color: #002d87;">make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- am335x_igep0034_defconfig</span></code></span>
|-
| style="width: 196px;"|IGEP SMARC iMX6 Solo/Dual Lite
| style="width: 10px;"|igep0046_imx6dl_2G_defconfig
| style="width: 644px;"|<span style="color: #002d87000000;"><code><span style="color: #002d87;">make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- igep0046_imx6dl_2G_defconfig</span></code></span>
|-
| style="width: 196px;"|IGEP SMARC iMX6 Dual/ Quad
| style="width: 10px;"|igep0046_imx6q_2G_defconfig
| style="width: 644px;"|<span style="color: #002d87000000;"><code>make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- igep0046_imx6q_2G_defconfig</code></span>|-| style="width: 196px;"|IGEP SMARC iMX6 Ultra-Lite / Ultra Ultra-Lite| style="width: 10px;"|igep0146_imx6ul_512M_defconfig| style="width: 644px;"|<span style="color: #002d87000000;"><code>make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- igep0046_imx6q_2G_defconfigigep0146_imx6ul_512M_defconfig<br /span></code></span>
|}
 
==Build your U-BOOT==
After running the defconfig. You can build the U-Boot by executing this command:
<span style="color: #002d87000000;"> make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-</span>
Once the compile process has sucesfully finished, we will find the resulting files inside the u-boot root folder. Depending on the processor the generated files will be different:
Finally we can copy this file files in a '''boot device''', for example, a microSD Memory Card and power on . It is explained in the boardfollowing [[How to prepare a bootable MicroSD Card|post]].
{{Message/Information Message|title=TITLE|message= <span style="color: #000000;">In case of the Freescale-NXP Porcessor Boards, it is not possible to copy directly the u-boot.imx file. It is necessary to copy in the first blocks of the boot device using the dd command. It is explained in the following linkpost [[How to prepare a bootable MicroSD Card|How to prepare a bootable MicroSD Card]].</span>}}
===<span id="What_next..." class="mw-headline">What next...</span>===
After build u-boot you can use it for boot the board, exist several options for boot, check the Hardware Reference Manual about the options available for your board. * have to download and compile [[How to boot from MicroSD Card|Boot from MicroSD CardLinux Kernel 4.]]* Boot from NAND/eMMC flash9==<span style="color: #999999;">u-boot Freescale-NXP iMX6 series</span>==* <span style="color: #999999;">[[U-boot Freescale-NXP iMX6 Seriesy|u-boot Freescale-NXP iMX6 Series]]</span> ==<span style="color: #999999;">u-boot Texas Instruments AM335x, OMAP3, DM3730, OMAP5432 series</span>==* <span style="color: #999999;">[[u-boot_Texas_Instruments_Series|u-boot Texas Instruments Series]]</span> <span style="color: #999999;">[[Category:Boot_loaderskernel]]</span>