Difference between revisions of "BELK/BXELK software components"

From DAVE Developer's Wiki
Jump to: navigation, search
(BELK 3.0.2 / BXELK 1.0.1 release notes)
(fix belk-3.0.2 u-boot.bin link)
Line 146: Line 146:
 
| FSBL (QSPI) || [[mirror:bora/belk-3.0.2/belk-3.0.0_bora_fsbl.bin|fsbl.bin]] || [[mirror:bora/bxelk-1.0.1/belk-3.0.0_borax_fsbl.bin|fsbl.bin]]
 
| FSBL (QSPI) || [[mirror:bora/belk-3.0.2/belk-3.0.0_bora_fsbl.bin|fsbl.bin]] || [[mirror:bora/bxelk-1.0.1/belk-3.0.0_borax_fsbl.bin|fsbl.bin]]
 
|-
 
|-
| U-Boot (QSPI) || [[mirror:bora/belk-3.0.2/belk-3.0.3_bora_qspi_u-boot.bin|u-boot.bin]] || [[mirror:bora/bxelk-1.0.1/belk-3.0.2_bora_qspi_u-boot.bin|u-boot.bin]]
+
| U-Boot (QSPI) || [[mirror:bora/belk-3.0.2/belk-3.0.2_bora_qspi_u-boot.bin|u-boot.bin]] || [[mirror:bora/bxelk-1.0.1/belk-3.0.2_bora_qspi_u-boot.bin|u-boot.bin]]
 
|-
 
|-
 
| Boot.bin (SD) || [[mirror:bora/belk-3.0.2/belk-3.0.2_bora_mmc_boot.bin|boot.bin]] || [[mirror:bora/bxelk-1.0.1/belk-3.0.2_borax_mmc_boot.bin|boot.bin]]
 
| Boot.bin (SD) || [[mirror:bora/belk-3.0.2/belk-3.0.2_bora_mmc_boot.bin|boot.bin]] || [[mirror:bora/bxelk-1.0.1/belk-3.0.2_borax_mmc_boot.bin|boot.bin]]

Revision as of 11:06, 16 January 2017

Info Box
Bora5-small.jpg Applies to Bora
BORA Xpress.png Applies to BORA Xpress

Introduction[edit | edit source]

From the software standpoint, Bora Embedded Linux Kit (BELK) and BoraX Embedded Linux Kit (BXELK) are built on top of Zynq Linux BSP released by Xilinx. Customization are added to support for the Bora and BoraX platforms, in particular at bootloader and Linux kernel levels. BELK and BXELK share the same software modules, even if they are based on different hardware platforms.

Reading of this document is strongly recommended to understand the logical structure of the kits and how the software components are related.

Kits' composition[edit | edit source]

The following table details the software modules of BELK/BXELK releases.

Kit composition
Release number
BELK
BXELK

1.0.0
n/a

1.1.0
n/a

2.0.0
n/a

2.1.0
n/a

2.2.0
n/a

3.0.0
n/a

3.0.1
1.0.0

3.0.2
1.0.1
Status
BELK
BXELK

Released
n/a

Released
n/a

Released
n/a

Released
n/a

Released
n/a

Released
n/a

Released
Beta

Released
Beta
Release date
BELK
BXELK

July 2013
n/a

November 2013
n/a

May 2014
n/a

August 2014
n/a

September 2015
n/a

March 2016
n/a

December 2016
December 2016

January 2017
January 2017
Release notes
BELK
BXELK

Ver 1.0.0

Ver 1.1.0

Ver 2.0.0

Ver 2.1.0

Ver 2.2.0

Ver 3.0.0

Ver 3.0.1

Ver 3.0.2
SOM PCB version
BELK
BXELK

CS020313A
n/a

CS020313A
n/a

CS020313B
n/a

CS020313B
n/a

CS020313B
n/a

CS020313C
n/a

CS020313C
CS112714B

CS020313C
CS112714B
Supported carrier boards
BELK
BXELK

BoraEVB-Lite
n/a

BoraEVB-Lite
n/a

BoraEVB
n/a

BoraEVB
n/a

BoraEVB
n/a

BoraEVB
n/a

BoraEVB
BoraXEVB

BoraEVB
BoraXEVB
U-Boot version 2013.04-belk-1.0.0 2013.04-belk-1.1.0 2013.04-belk-2.0.0 2013.04-belk-2.1.0 2014.07-belk-2.2.0 2014.07-belk-3.0.0 2014.07-belk-3.0.0 2014.07-belk-3.0.2
Linux version 3.9.0-bora-1.0.0 3.9.0-bora-1.1.0 3.9.0-bora-2.0.0 3.9.0-bora-2.1.0 3.17.0-bora-2.2.0 3.17.0-bora-3.0.0 3.17.0-bora-3.0.0 3.17.0-bora-3.0.0
Drivers - - Gigabit Eth #0
UART
NOR
NAND
SD/MMC
USB Host/Device
RTC
CAN
I2C
Gigabit Eth #0
UART
NOR
NAND
SD/MMC
USB Host/Device
RTC
CAN
I2C
Gigabit Eth #0
UART
NOR
NAND
SD/MMC
USB Host/Device
RTC
CAN
I2C
ConfigID
Gigabit Eth #0
UART
NOR
NAND
SD/MMC
USB Host/Device
RTC
CAN
I2C
ConfigID
Gigabit Eth #0
UART
NOR
NAND
SD/MMC
USB Host/Device
RTC
CAN
I2C
ConfigID
Gigabit Eth #0
UART
NOR
NAND
SD/MMC
USB Host/Device
RTC
CAN
I2C
ConfigID
Vivado version 2013.2 2013.3 2013.3 2013.3 2014.4 2014.4 2014.4 2014.4
Build System - - - Yocto Daisy (1.6) Yocto Daisy (1.6) Yocto Daisy (1.6) Yocto Daisy (1.6) Yocto Daisy (1.6)

Downloadable binary images[edit | edit source]

All binary images for BELK/BXELK are hosted on DAVE Embedded System mirror server. There you can find a sub directory for each version of this development kit.

A summary of images with a brief description can be found into the tables below:

Image BELK version BXELK version
3.0.2 1.0.1
mksd.sh mksd.sh mksd.sh
bootscript boot.scr boot.scr
FSBL (QSPI) fsbl.bin fsbl.bin
U-Boot (QSPI) u-boot.bin u-boot.bin
Boot.bin (SD) boot.bin boot.bin
Boot header boot-header boot-header
Linux kernel uImage uImage
Device tree bora.dtb bora.dtb
Root File System bora.tar.gz bora.tar.gz


Image BELK version BXELK version
3.0.1 1.0.0
mksd.sh mksd.sh mksd.sh
uEnv uEnv.txt uEnv.txt
FSBL (QSPI) fsbl.bin fsbl.bin
U-Boot (QSPI) u-boot.bin u-boot.bin
Boot.bin (SD) boot.bin boot.bin
Boot header boot-header boot-header
Linux kernel uImage uImage
Device tree bora.dtb bora.dtb
Root File System bora.tar.gz bora.tar.gz

microSD layout[edit | edit source]

The microSD card provided with BELK/BXELK is partitioned as shown in the following image:


microSD card partitioning


Most of storage space is occupied by two partitions:

  • a FAT32 partition (mmcblk0p1) containing:
    • boot.bin boot image
    • U-Boot uEnv.txt environment
    • Linux kernel and DTB binary images
  • an ext3 partition (mmcblk0p2) containing the root file system for the target.

uEnv.txt and root file system are used to boot the target as described in this section.

It is worth remembering that the microSD card is bootable and U-Boot environment is retrieved from (and stored to with saveenv) into the FAT partition as bora.env

Updates[edit | edit source]

200px-Emblem-important.svg.png

It's recommended to use the latest source release available. Please refer to Release notes for further information.

Updating git repositories[edit | edit source]

In BELK/BXELK, the following source trees are clones of the correspondent DAVE Embedded Systems git repositories:

Component GIT Remote
U-Boot git@git.dave.eu:dave/bora/u-boot-xlnx.git
Linux kernel git@git.dave.eu:dave/bora/linux-xlnx.git
Yocto BSP git@git.dave.eu:dave/bora/bora-bsp.git
Vivado project git@git.dave.eu:dave/bora/bora.git

For more information about the access to these repositories, please refer to this link.

Updating the repositories from BELK 2.1.0[edit | edit source]

200px-Emblem-important.svg.png

To update the repositories from BELK 2.1.0, the following commands should be used:

git fetch origin
git checkout -b <new_branch_name> origin/bora

Synchronizing the repositories[edit | edit source]

When the account is enabled, you can synchronize a source tree entering the repository directory and launching the git fetch command. Please note that git fetch doesn't merge the commits on the current branch. To do that, you should run the git merge command or replace the fetch-merge process with a single git pull command. Please note that the recommended method is the fetch-merge process. For further information on Git, please refer to Git Documentation.

Release notes[edit | edit source]

BELK 3.0.2 / BXELK 1.0.1[edit | edit source]

Updates:

  1. Fix BELK-3.0.1/BXELK-1.0.0 software issues
  2. Use standard DAVE recovery scripts for u-boot

(BoraXEVB only) For LCD interfacing, please refer to this application note.

Known Limitations[edit | edit source]

Issue Description
External DDR3 bank (BoraEVB only) DDR3 bank can be populated on request. For more details please refer to Sales Department.
ETH1 interface Please refer to this application note for second Ethernet interface support.
RTC Date/time retention is limited to about 4 hours.


BELK 3.0.1 / BXELK 1.0.0[edit | edit source]

Updates: added support for BoraX/BoraXEVB evaluation system

(BoraXEVB only) For LCD interfacing, please refer to this application note.

Known Limitations[edit | edit source]

Issue Description
canutils package is missing is default root file system It can be downloaded directly from our package repository as described here
External DDR3 bank (BoraEVB only) DDR3 bank can be populated on request. For more details please refer to Sales Department.
ETH1 interface Please refer to this application note for second Ethernet interface support.
RTC Date/time retention is limited to about 4 hours.
Boot for NOR flash U-Boot is not configured properly to support NOR boot. Please use boot from microSD card instead.

BELK 3.0.0[edit | edit source]

Updates:

  1. Added preliminary support for BORA Xpress SOM
  2. Updated U-Boot and Linux versions

(BoraXEVB only) For LCD interfacing, please refer to this application note.

Known Limitations[edit | edit source]

Issue Description
Yocto ubi-utils command line Some Yocto ubi-utils command line are in non standard format. For ubimkvol and ubirmvol the UBI device must be the last argument (e.g. ubimkvol -m -N belk /dev/ubi0)
External DDR3 bank (BoraEVB only) DDR3 bank can be populated on request. For more details please refer to Sales Department.
ETH1 interface Please refer to this application note for second Ethernet interface support.
RTC Date/time retention is limited to about 4 hours.

BELK 2.2.0[edit | edit source]

Updates:

  1. Switched to Vivado 2014.4
  2. Added “board part” for the BORA SOM, which includes all the settings of the Zynq PS for BORA, allowing users to manage projects from the Vivado GUI (and not only using the CLI).
  3. Added ConfigID
  4. Updated U-Boot and Linux versions

Known Limitations[edit | edit source]

Issue Description
Kernel command line User should remove mem=xxx from kernel command line to avoid system hang during boot. This is fixed in current u-boot default environment
Yocto ubi-utils command line Some Yocto ubi-utils command line are in non standard format. For ubimkvol and ubirmvol the UBI device must be the last argument (e.g. ubimkvol -m -N belk /dev/ubi0)
External DDR3 bank (BoraEVB only) DDR3 bank can be populated on request. For more details please refer to Sales Department.
ETH1 interface Please refer to this application note for second Ethernet interface support.
RTC Date/time retention is limited to about 4 hours.
u-boot default environment Default u-boot environment has a syntax error on sdboot command. This is already fixed in bora-next branch, release belk-2.2.1-rc1, available on u-boot repository.

BELK 2.1.0[edit | edit source]

Updates:

  1. Fix and performance improvement on u-boot network interface
  2. Fix SD card hotplug issue in Linux
  3. First Yocto Daisy (1.6) BSP Release

Known Limitations[edit | edit source]

Issue Description
ETH0 interface Primary Gigabit Ethernet Interface (ETH0) is not working correctly at 10Mbps
Kernel command line User should remove mem=xxx from kernel command line to avoid system hang during boot
Yocto ubi-utils command line Some Yocto ubi-utils command line are in non standard format. For ubimkvol and ubirmvol the UBI device must be the last argument (e.g. ubimkvol -m -N belk /dev/ubi0)
External DDR3 bank (BoraEVB only) DDR3 bank can be populated on request. For more details please refer to Sales Department.
ETH1 interface The additional Gigabit Ethernet interface (ETH1) is not supported in this BELK version.
RTC Date/time retention is limited to about 4 hours.

BELK 2.0.0[edit | edit source]

Updates:

  1. Added support for the BoraEVB carrier board
  2. Updated supported drivers list (please refer to BELK_software_components)

Known Limitations[edit | edit source]

The following table reports the known limitations of this BELK release:

Issue Description
External DDR3 bank (BoraEVB only) DDR3 bank can be populated on request. For more details please refer to Sales Department.
ETH1 interface The additional Gigabit Ethernet interface (ETH1) is not supported in this BELK version.
RTC Date/time retention is limited to about 4 hours.

BELK 1.1.0[edit | edit source]

Updates:

  1. Switched to Vivado 2013.3
  2. Added application note "AMP on Bora"

BELK 1.0.0[edit | edit source]

First official release