Difference between revisions of "The bootloader U-Boot"

From IGEP - ISEE Wiki

Jump to: navigation, search
(u-boot Texas Instruments AM335x, OMAP3, DM3730 series)
Line 4: Line 4:
 
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.
 
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.
  
=What is U-Boot?=
+
===What is U-Boot?===
 
[http://www.denx.de/wiki/U-Boot/ Das U-Boot] (Universal Bootloader) is an open source, primary boot loader used in embedded devices. It is available for a number of different computer architectures, including PPC, ARM, MIPS, AVR32, x86.
 
[http://www.denx.de/wiki/U-Boot/ Das U-Boot] (Universal Bootloader) is an open source, primary boot loader used in embedded devices. It is available for a number of different computer architectures, including PPC, ARM, MIPS, AVR32, x86.
  
 
=How to cross compile the U-Boot=
 
=How to cross compile the U-Boot=
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-.
+
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-.
  
 
As example, once you've downloaded the u-boot source, you should follow these steps:
 
As example, once you've downloaded the u-boot source, you should follow these steps:
Line 14: Line 14:
 
  make CROSS_COMPILE=[cross compiler] [board config]
 
  make CROSS_COMPILE=[cross compiler] [board config]
 
  make CROSS_COMPILE=[cross compiler]
 
  make CROSS_COMPILE=[cross compiler]
The result for Texas Instruments processor based board will be a '''MLO''' and '''u-boot.img'''.
+
==Necessary package==
 +
==Download & Prepare your U-BOOT==
 +
======<span dir="auto">U-Boot Freescale-NXP iMX6 Series</span>======
  
==Config files==
+
{| class="contenttable sortable" style="width: 886px;"
IGEP0030 DM3730 Module: igep0030_defconfig
+
|- style="height: 22px;"
 +
! style="width: 871px; height: 22px;" colspan="2"|
 +
=====Downloading binary files=====
 +
|- style="height: 44px;"
 +
| style="width: 268px; height: 44px;"|
 +
======<span id="Clone_the_u-boot_repo" class="mw-headline">Clone the u-boot repo</span>======
 +
| style="width: 603px; height: 44px;"|
 +
Clone the u-boot repository using git address:<br />$ git clone git@git.isee.biz:arm-boot/u-boot-imx.git 
  
IGEP0020 DM3730 IGEPv2: igep0020_defconfig
+
or<br />$ git clone [https://git.isee.biz/arm-boot/u-boot-imx.git https://git.isee.biz/arm-boot/u-boot-imx.git]
  
IGEP0033 AM335x AQUILA Module: am335x_igep0033_defconfig
+
|- style="height: 89px;"
 +
| style="width: 268px; height: 89px;"|
 +
======<span id="Checkout_u-boot_repo" class="mw-headline">Checkout u-boot repo </span>======
 +
<span id="Checkout_u-boot_repo" class="mw-headline">Go to the u-boot-imx directory and checkout the version 2015.04.y as:</span>
  
IGEP0032 OMAP3530 PROTON Module: igep0032_defconfig
+
| style="width: 603px; height: 89px;"|$ cd u-boot-imx<br />$ 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
 +
|}
  
IGEP0034 SMARC AM335x Module: am335x_igep0034_defconfig
+
{| class="contenttable sortable" style="width: 886px;"
 +
|-
 +
! style="width: 871px;" colspan="2"|
 +
=====<span id="Set_the_board_configuration" class="mw-headline">Set the board configuration</span>=====
 +
|-
 +
| style="width: 213px;"|
 +
======IGEP0046 SMARC Quad======
 +
| style="width: 658px;"|$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- igep0046_imx6dl_2G_defconfig
 +
|-
 +
| style="width: 213px;"|
 +
======IGEP0046 SMARC Dual lite======
 +
| style="width: 658px;"|$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- igep0046_imx6q_2G_defconfig
 +
|-
 +
| style="width: 213px;"|
 +
======IGEP0046 SMARC Solo======
 +
| style="width: 658px;"|$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- xxxxx
 +
|}
  
IGEP0034 SMARC AM335x Module lite: am335x_igep0034_lite_defconfig
+
===<span id="Build_u-boot" class="mw-headline">Build u-boot</span>===
 +
<span class="mw-headline">You can build u-boot executing this command:</span>
  
IGEP0050 OMAP5 IGEPv5:
+
<code>$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-</code>
  
The result for iMX6 processor based will be a '''u-boot.imx.'''
 
  
IGEP0046 SMARC iMX6 Duallite 2GB: igep0046_imx6dl_2G_defconfig
+
==Configurations files==
 +
The result for Texas Instruments processor based board will be a '''MLO''' and '''u-boot.img'''. (COMPROVAR)
  
IGEP0046 SMARC iMX6 DUAL:
+
{| class="contenttable sortable" style="width: 889px;"
 +
|-
 +
! style="width: 358px;"|
 +
Modules
  
IGEP0046 SMARC iMX6 QUAD: igep0046_imx6q_2G_defconfig
+
! style="width: 513px;"|"Files"
 +
|-
 +
! style="background-color: #ffffff; text-align: left;"|IGEP0030 DM3730 Module
 +
| style="width: 513px;"|igep0030_defconfig
 +
|-
 +
! style="background-color: #ffffff; text-align: left;"|IGEP0020 DM3730 IGEPv2
 +
| style="width: 513px;"|igep0020_defconfig
 +
|-
 +
! style="background-color: #ffffff; text-align: left;"|IGEP0033 AM335x AQUILA Module
 +
| style="width: 513px;"|am335x_igep0033_defconfig
 +
|-
 +
! style="background-color: #ffffff; text-align: left;"|IGEP0032 OMAP3530 PROTON Module
 +
| style="width: 513px;"|igep0032_defconfig
 +
|-
 +
! style="background-color: #ffffff; text-align: left;"|IGEP0034 SMARC AM335x Module
 +
| style="width: 513px;"|am335x_igep0034_defconfig
 +
|-
 +
! style="background-color: #ffffff; text-align: left;"|IGEP0034 SMARC AM335x Module lite
 +
| style="width: 513px;"| am335x_igep0034_lite_defconfig
 +
|-
 +
! style="background-color: #ffffff; text-align: left;"|IGEP0050 OMAP5 IGEPv5
 +
| style="width: 513px;"| 
 +
|}
  
IGEP0046 SMARC iMX6 SOLO:
+
The result for iMX6 processor based will be a '''u-boot.imx.'''
  
 +
{| class="contenttable sortable" style="width: 889px;"
 +
|-
 +
! style="width: 361px;"|Modules
 +
! style="width: 494px;"|Files
 +
|-
 +
! style="background-color: #ffffff; width: 361px; text-align: left;"|IGEP0046 SMARC iMX6 Duallite 2GB
 +
| style="width: 494px;"|igep0046_imx6dl_2G_defconfig
 +
|-
 +
! style="background-color: #ffffff; width: 361px; text-align: left;"|IGEP0046 SMARC iMX6 DUAL
 +
| style="width: 494px;"| 
 +
|-
 +
! style="background-color: #ffffff; width: 361px; text-align: left;"|IGEP0046 SMARC iMX6 QUAD
 +
| style="width: 494px;"|igep0046_imx6q_2G_defconfig
 +
|-
 +
! style="background-color: #ffffff; width: 361px; text-align: left;"|IGEP0046 SMARC iMX6 SOLO
 +
| style="width: 494px;"| 
 +
|}
 
=Stable U-Boot=
 
=Stable U-Boot=
 
The software git repository is located [https://git.isee.biz/arm-boot here].
 
The software git repository is located [https://git.isee.biz/arm-boot here].

Revision as of 12:49, 4 May 2018

Overview

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.

What is U-Boot?

Das U-Boot (Universal Bootloader) is an open source, primary boot loader used in embedded devices. It is available for a number of different computer architectures, including PPC, ARM, MIPS, AVR32, x86.

How to cross compile the U-Boot

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-.

As example, once you've downloaded the u-boot source, you should follow these steps:

make CROSS_COMPILE=[cross compiler] [board config]
make CROSS_COMPILE=[cross compiler]

Necessary package

Download & Prepare your U-BOOT

U-Boot Freescale-NXP iMX6 Series
Downloading binary files
Clone the u-boot repo

Clone the u-boot repository using git address:
$ git clone git@git.isee.biz:arm-boot/u-boot-imx.git 

or
$ git clone https://git.isee.biz/arm-boot/u-boot-imx.git

Checkout u-boot repo 

Go to the u-boot-imx directory and checkout the version 2015.04.y as:

$ cd u-boot-imx
$ 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
Set the board configuration
IGEP0046 SMARC Quad
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- igep0046_imx6dl_2G_defconfig
IGEP0046 SMARC Dual lite
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- igep0046_imx6q_2G_defconfig
IGEP0046 SMARC Solo
$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- xxxxx

Build u-boot

You can build u-boot executing this command:

$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-


Configurations files

The result for Texas Instruments processor based board will be a MLO and u-boot.img. (COMPROVAR)

Modules

"Files"
IGEP0030 DM3730 Module igep0030_defconfig
IGEP0020 DM3730 IGEPv2 igep0020_defconfig
IGEP0033 AM335x AQUILA Module am335x_igep0033_defconfig
IGEP0032 OMAP3530 PROTON Module igep0032_defconfig
IGEP0034 SMARC AM335x Module am335x_igep0034_defconfig
IGEP0034 SMARC AM335x Module lite  am335x_igep0034_lite_defconfig
IGEP0050 OMAP5 IGEPv5  

The result for iMX6 processor based will be a u-boot.imx.

Modules Files
IGEP0046 SMARC iMX6 Duallite 2GB igep0046_imx6dl_2G_defconfig
IGEP0046 SMARC iMX6 DUAL  
IGEP0046 SMARC iMX6 QUAD igep0046_imx6q_2G_defconfig
IGEP0046 SMARC iMX6 SOLO  

Stable U-Boot

The software git repository is located here.

U-boot: OMAP3 boards, OMAP5 boards, AM335x boards is located here.

U-boot: iMX6 boards is located here.

u-boot firmware binaries can be downloaded from here.

[EOL] For OMAP3 based platforms, ISEE do not support u-boot, instead of, ISEE provides The IGEP X-loader

u-boot Freescale-NXP iMX6 series

u-boot Texas Instruments AM335x, OMAP3, DM3730, OMAP5432 series