Difference between revisions of "Building U-Boot (BELK/BXELK)"

From DAVE Developer's Wiki
Jump to: navigation, search
(History)
Line 21: Line 21:
 
|July 2017
 
|July 2017
 
|[[BELK/BXELK_software_components#BELK_4.0.0_.2F_BXELK_2.0.0|4.0.0 / 2.0.0]]
 
|[[BELK/BXELK_software_components#BELK_4.0.0_.2F_BXELK_2.0.0|4.0.0 / 2.0.0]]
|Udates for BELK 4.0.0 / BXELK 2.0.0
+
|Updated for BELK 4.0.0 / BXELK 2.0.0
 
|-
 
|-
 
|3.0.0
 
|3.0.0
 
|Jan 2020
 
|Jan 2020
 
|[[BELK/BXELK_software_components#BELK_4.1.0|4.1.1]]
 
|[[BELK/BXELK_software_components#BELK_4.1.0|4.1.1]]
|Udates for BELK/BXELK 4.1.1
+
|Updated for BELK/BXELK 4.1.1
 
|-
 
|-
 
|}
 
|}

Revision as of 12:02, 28 January 2020

Info Box
Bora5-small.jpg Applies to Bora
BORA Xpress.png Applies to BORA Xpress
BORALite-TOP.png Applies to BORA Lite
200px-Emblem-important.svg.png

As the structure of the BELK/BXELK is based on several tools, it is strongly recommended the reading of this document first.

History[edit | edit source]

Version Date BELK/BXELK version Notes
1.0.0 November 2015 3.0.0 / N/A First release
2.0.0 July 2017 4.0.0 / 2.0.0 Updated for BELK 4.0.0 / BXELK 2.0.0
3.0.0 Jan 2020 4.1.1 Updated for BELK/BXELK 4.1.1

Instructions[edit | edit source]

It is assumed that the development environment has been set up properly as described here.

  • start the Linux development server and login into the system
  • assuming that a local repository has not been created, clone the remote U-Boot git repository (the “-b” option is used to automatically checkout the current branch):

git clone git@git.dave.eu:dave/bora/u-boot-xlnx.git -b bora-4.x.x

  • Setup the server environment (please refer to this section)
  • enter the source tree directory and select the desired target by issuing one of the following commands:
    • For BELK <= 3.0.2 and BXELK <= 1.0.1:
      make bora_qspi_config 
      make bora_mmc_config 
      make bora_noflash_config
    • For BELK 4.0.0 or newer and BXELK 2.0.0 or newer:
      make bora_qspi_defconfig 
      make bora_mmc_defconfig 
      make bora_noflash_defconfig 
      make borax_qspi_defconfig 
      make borax_mmc_defconfig 
      make borax_noflash_defconfig
    • BELK 4.1.1 or newer adds more targets for BoraLite booting from NAND and for the application note AN006
      make bora_nand_defconfig 
      make bora_mmc_an006_defconfig
bora_qspi and borax_qspi: U-Boot is built to use NOR flashed based environment. The resulting binary files are used to boot from serial NOR flash.
bora_mmc and borax_mmc: U-Boot environment is placed in SD/MMC card. The resulting binary files are used to boot from SD/MMC card. However, NOR flash and NAND flash are accessible.
bora_noflash and borax_noflash: U-Boot environment is placed in SD/MMC card. The resulting binary files are used to boot from SD/MMC card. NOR flash and NAND flash are disabled.
bora_nand_defconfig: U-Boot environment is placed on NAND flash.
  • build U-Boot by issuing make command. This will generate U-Boot binary images.
    • file extension .elf must be manually added on u-boot if ELF file is required (for example to build boot.bin for uSD)

Subsequent builds just require make command, without targets, to update the binary images.


200px-Emblem-important.svg.png

By default, BoraEVB and BoraXEVB are configured to boot from NOR flash. Consequently, the U-Boot image stored in the NOR flash is built with bora_qspi and borax_qspi configuration respectively.


In order to download them to the target via TFPT protocol, once the build process is complete the binary images can be copied to the tftp root directory (e.g. /tftpboot/bora/) with the following commands:

  • For BELK 4.0.0 or newer and BXELK 2.0.0 or newer:
cp spl/boot.bin /tftpboot/bora/ 
cp u-boot.img /tftpboot/bora/
  • For BELK <= 3.0.2 and BXELK <= 1.0.1 :
cp u-boot.bin /tftpboot/bora/