Personal tools

Log in

Changes

From IGEP - ISEE Wiki

Jump to: navigation, search

The bootloader U-Boot

1,344 bytes added, 09:39, 7 May 2018
no edit summary
=Overview=
<span style="color: #000000;">This page is meant to be a starting point for people to learn build a u-boot image and show to people the current status of different u-boot versions for IGEP Processor Boards.</span>
===<span style="color: #000000;">What is U-Boot?</span>===<span style="color: #000000;">[http://www.denx.de/wiki/U-Boot/ Das U-Boot] (Universal Bootloader) is an open source, primary boot loader used in embedded devices. Its primary purpose in the shipping system is to load some operating system.</span>
<span style="color: #000000;">That means that U-Boot is necessary to perform a certain task, but it's nothing you want to throw any significant resources at. Typically U-Boot is stored in relatively small NOR flash memory, which is expensive compared to the much larger NAND devices often used to store the operating system and the application.</span>
=How to cross compile the U-Boot=
<span style="color: #000000;">In order to compile and build the U-Boot for IGEP PROCESSOR BOARDS you should set the CROSS_COMPILE variable. Set this to the prefix of your toolchain (including the trailing dash "-"). So if your toolchain is invoked as say '''arm-linux-gnueabi-gcc''', just chop off that trailing gcc and that's what you use: arm-linux-gnueabihf-.</span>
<span style="color: #000000;">As example, once you've downloaded the u-boot source, you should follow these steps:</span>
<span style="color: #002d87;">make CROSS_COMPILE=[cross compiler] [board config] make CROSS_COMPILE=[cross compiler]</span><span style="color: #000000;">The result will be a MLO and a u-boot.img file. You can install these files, for example, in the boot partition of a SD-card.</span>
==Necessary package==
! style="background-color: #ffffff;"|'''<span id="Clone_the_u-boot_repo" class="mw-headline">Clone the u-boot repo</span>'''
| style="width: 603px; height: 44px;"|
<span style="color: #000000;">Clone the u-boot repository using git address:</span><br /><span style="color: #002d87;">$ git clone git@git.isee.biz:arm-boot/u-boot-imx.git </span>
<span style="color: #000000;">or</span><br /><span style="color: #002d87;">$ git clone clone</span> [https://git.isee.biz/arm-boot/u-boot-imx.git https://git.isee.biz/arm-boot/u-boot-imx.git]
|- style="height: 89px;"
! style="background-color: #ffffff;"|'''<span id="Checkout_u-boot_repo" class="mw-headline">Checkout u-boot repo </span>'''
| style="width: 603px; height: 89px;"|
<span style="color: #000000;">Go to the u-boot-imx directory and checkout the version 2015.04.y as:</span>
<span style="color: #002d87;">$ cd u-boot-imx</span><br /><span style="color: #002d87;">$ 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_ga</span>
|}
|-
| style="background-color: #ffffff; width: 267px;"|'''IGEP0046 SMARC Quad'''
| style="width: 598px;"|<span style="color: #002d87;">$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- igep0046_imx6dl_2G_defconfig</span>
|-
| style="background-color: #ffffff; width: 267px;"|'''IGEP0046 SMARC Dual lite'''
| style="width: 598px;"|<span style="color: #002d87;">$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- igep0046_imx6q_2G_defconfig</span>
|-
| style="background-color: #ffffff; width: 267px;"|'''IGEP0046 SMARC Solo'''
| style="width: 598px;"|<span style="color: #002d87;">$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- xxxxx</span>
|}
! style="background-color: #ffffff; height: 31px; width: 341px;"|'''<span id="Clone_the_u-boot_repo" class="mw-headline">Clone the u-boot repo</span>'''
| style="width: 513px; height: 31px;"|
Clone the u-boot repository using git address:<br /><span style="color: #002d87;">$ git clone @git.isee.biz:arm-boot/u-boot-arm.git</span><br />or
$ git clone [https://git.isee.biz/arm-boot/u-boot-arm.git https://git.isee.biz/arm-boot/u-boot-arm.git]
Go to the u-boot-arm directory and checkout the isee_v2017.03 as:
<span style="color: #002d87;">$ cd u-boot-arm</span>
<span style="color: #002d87;">$ git checkout remotes/origin/isee_v2017.03 -b isee_v2017.03</span>
|}</div>
|-
! style="background-color: #ffffff; width: 350px;"|IGEP COM AQUILA RB11 (256MB RAM)
| style="width: 503px;"|<span style="color: #002d87;">$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- am335x_igep0033_defconfig</span>
|-
! style="background-color: #ffffff; width: 350px;"|IGEP COM PROTON OMAP3530 (IGEP0032)
| style="width: 503px;"|<span style="color: #002d87;">$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- igep0032_defconfig</span>
|-
! style="background-color: #ffffff; width: 350px;"|IGEP SMARC AM335x (IGEP0034)
| style="width: 503px;"|<span style="color: #002d87;">$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- am335x_igep0034_defconfig</span>
|-
! style="background-color: #ffffff; width: 350px;"|IGEP SMARC AM335x (IGEP0034) Lite
| style="width: 503px;"|<span style="color: #002d87;">$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- am335x_igep0034_lite_defconfig</span>
|-
! style="background-color: #ffffff; width: 350px;"|IGEP COM Module DM3730 (IGEP0030)
| style="width: 503px;"|<span style="color: #002d87;">$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- igep0030_defconfig</span>
|-
! style="background-color: #ffffff; width: 350px;"|IGEP COM Module DM3730 (IGEP0020)
| style="width: 503px;"|<span style="color: #002d87;">$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- igep0020_defconfig</span>
|}
You can build u-boot executing this command:
<span style="color: #002d87;"><code>$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-</code></span>
|-
! style="background-color: #ffffff; width: 361px; text-align: left;"|IGEP0046 SMARC iMX6 Duallite 2GB
! | style="background-color: #ffffff; width: 361px; text-align: left;"|<span style="color: #002d87;">igep0046_imx6dl_2G_defconfig </span>
|-
! style="background-color: #ffffff; width: 361px; text-align: left;"|IGEP0046 SMARC iMX6 DUAL
! | style="background-color: #ffffff; width: 361px; text-align: left;"| 
|-
! style="background-color: #ffffff; width: 361px; text-align: left;"|IGEP0046 SMARC iMX6 QUAD
! | style="background-color: #ffffff; width: 361px; text-align: left;"|igep0046_imx6q_2G_defconfig <span style="color: #002d87;">igep0046_imx6q_2G_defconfig''' '''</span>
|-
! style="background-color: #ffffff; width: 361px; text-align: left;"|'''IGEP0046 SMARC iMX6 SOLO'''! | style="background-color: #ffffff; width: 361px; text-align: left;"| 
|}
|-
! style="background-color: #ffffff; text-align: left;"|IGEP0030 DM3730 Module
| style="width: 513px;"|<span style="color: #002d87;">igep0030_defconfig</span>
|-
! style="background-color: #ffffff; text-align: left;"|IGEP0020 DM3730 IGEPv2
| style="width: 513px;"|<span style="color: #002d87;">igep0020_defconfig</span>
|-
! style="background-color: #ffffff; text-align: left;"|IGEP0033 AM335x AQUILA Module
| style="width: 513px;"|<span style="color: #002d87;">am335x_igep0033_defconfig</span>
|-
! style="background-color: #ffffff; text-align: left;"|IGEP0032 OMAP3530 PROTON Module
| style="width: 513px;"|<span style="color: #002d87;">igep0032_defconfig</span>
|-
! style="background-color: #ffffff; text-align: left;"|IGEP0034 SMARC AM335x Module
| style="width: 513px;"|<span style="color: #002d87;">am335x_igep0034_defconfig</span>
|-
! style="background-color: #ffffff; text-align: left;"|IGEP0034 SMARC AM335x Module lite
| style="width: 513px;"|<span style="color: #002d87;"> am335x_igep0034_lite_defconfig</span>
|-
! style="background-color: #ffffff; text-align: left;"|IGEP0050 OMAP5 IGEPv5
560
edits