Changes

Jump to: navigation, search

BELK/BXELK software components

8,284 bytes added, 10:10, 19 July 2019
no edit summary
__FORCETOC__
==Introduction==
From the software standpoint, [[Bora Embedded Linux Kit (BELK)|Bora Embedded Linux Kit (BELK)]] and [[BoraX_Embedded_Linux_Kit_(BXELK)|BoraX Embedded Linux Kit (BXELK)]] are built on top of Zynq Linux BSP released by Xilinx. Customization Customizations 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 [[Host_setup_and_development_flow_(BXELK)|this document]] is strongly recommended to understand the logical structure of the kits and how the software components are related.
The following table details the software modules of BELK/BXELK releases.
{| class="wikitable"
!colspan="810" | Kit composition
|-
|'''Release number'''<br>BELK<br>BXELK
|<br>3.0.0<br>n/a
|<br>3.0.1<br>1.0.0
|<br>3.0.2<br>1.0.1
|<br>4.0.0<br>2.0.0
|-
|'''Status'''<br>BELK<br>BXELK
|<br>Released<br>n/a
|<br>Released<br>n/a
|<br>Released<br>BetaReleased|<br>Released<br>Released|<br>Released<br>Released
|-
|'''Release date'''<br>BELK<br>BXELK
|<br>March 2016<br>n/a
|<br>December 2016<br>December 2016
|<br>January 2017<br>January 2017
|<br>July 2017<br>July 2017
|-
|'''Release notes'''<br>BELK<br>BXELK
|<br>[[#BELK 2.2.0 | Ver 2.2.0]]
|<br>[[#BELK 3.0.0 | Ver 3.0.0]]
|<br>[[#BELK BELK_3.0.1_.2F_BXELK_1.0.0 | Ver 3.0.1]]|<br>[[#BELK_3.0.2_.2F_BXELK_1.0.1 | Ver 3.0.12]]|<br>[[#BELK_4.0.0_.2F_BXELK_2.0.0 | Ver 4.0.0]]
|-
|'''SOM PCB version'''<br>BELK<br><br>BXELK|<br>CS020313A<br><br>n/a|<br>CS020313A<br><br>n/a|<br>CS020313B<br><br>n/a|<br>CS020313B<br><br>n/a|<br>CS020313B<br><br>n/a|<br>CS020313B/CS020313C<br><br>n/a|<br>CS020313B/CS020313C<br><br>CS112714B|<br>CS020313B/CS020313C<br><br>CS112714B|<br>CS020313B/CS020313C<br><br>CS112714B
|--
|'''Supported carrier boards'''<br>BELK<br>BXELK
|<br>[[BoraEVB]]<br>n/a
|<br>[[BoraEVB]]<br>n/a
|<br>[[BoraEVB]]<br>[[BoraXEVB]]
|<br>[[BoraEVB]]<br>[[BoraXEVB]]
|<br>[[BoraEVB]]<br>[[BoraXEVB]]
|-
|2014.07-belk-3.0.0
|2014.07-belk-3.0.0
|2014.07-belk-3.0.2
|2017.01-belk-4.0.1
|-
|'''Linux version'''
|3.17.0-bora-3.0.0
|3.17.0-bora-3.0.0
|3.17.0-bora-3.0.0
|4.9.0-bora-4.0.0
|-
|'''Drivers'''
|valign="top" | -|valign="top" | -|valign="top" | Gigabit Eth #0<br>UART<br>NOR<br>NAND<br>SD/MMC<br>USB Host/Device<br>RTC<br>CAN<br>I2C|valign="top" | Gigabit Eth #0<br>UART<br>NOR<br>NAND<br>SD/MMC<br>USB Host/Device<br>RTC<br>CAN<br>I2C| valign="top" | Gigabit Eth #0<br>UART<br>NOR<br>NAND<br>SD/MMC<br>USB Host/Device<br>RTC<br>CAN<br>I2C<br>[[ConfigID_and_UniqueID | ConfigID]]| valign="top" | Gigabit Eth #0<br>UART<br>NOR<br>NAND<br>SD/MMC<br>USB Host/Device<br>RTC<br>CAN<br>I2C<br>[[ConfigID_and_UniqueID | ConfigID]]|valign="top" | Gigabit Eth #0<br>UART<br>NOR<br>NAND<br>SD/MMC<br>USB Host/Device<br>RTC<br>CAN<br>I2C<br>[[ConfigID_and_UniqueID | ConfigID]]|valign="top" | Gigabit Eth #0<br>UART<br>NOR<br>NAND<br>SD/MMC<br>USB Host/Device<br>RTC<br>CAN<br>I2C<br>[[ConfigID_and_UniqueID | ConfigID]]|valign="top" | Gigabit Eth #0<br>UART<br>NOR<br>NAND<br>SD/MMC<br>USB Host/Device<br>RTC<br>CAN<br>I2C<br>[[ConfigID_and_UniqueID | ConfigID]]
|-
|'''Vivado version'''
|valign="top" | 2013.2|valign="top" | 2013.3|valign="top" | 2013.3|valign="top" | 2013.3|valign="top" | 2014.4|valign="top" | 2014.4|valign="top" | 2014.4| valign="top" | 2014.4| valign="top" | 2017.1
|-
|'''Build System'''
|valign="top" | -|valign="top" | -|valign="top" | -|valign="top" | Yocto Daisy (1.6)|valign="top" | Yocto Daisy (1.6) |valign="top" | Yocto Daisy (1.6) |valign="top" | Yocto Daisy (1.6)| valign="top" | Yocto Daisy (1.6)| valign="top" | Yocto Morty (2.2)
|-
|'''[[Managed Virtual Machine (MVM)]]'''
|N/A
|N/A
|N/A
|N/A
|N/A
|N/A
|N/A
|N/A
|belk-4.0.0 (based on Ubuntu 14.04 64 bit)
|}
All binary images for BELK/BXELK are hosted on [[mirror:lynxbora|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 in the tables below.{{ImportantMessage|text=In order to create a [[System_boot_and_recovery_via_microSD_card_(BELK/BXELK)#How_to_create_a_bootable_microSD_card|bootable microSD card]], '''the binary files must be renamed''' as follows:* For '''BELK <= 3.0.2''' and '''BXELK <= 1.0.1''' :**FSBL: <code>boot.bin</code>**Linux kernel: <code>uImage</code>**Device tree: <code>bora.dtb</code>* For '''BELK-4.0.0''' or newer and '''BXELK-2.0.0''' or newer:**U-Boot SPL: <code>boot.bin</code>**U-Boot: <code>u-boot.img</code>**[[BELK-AN-008:_Programming_the_FPGA_Bitstream_with_U-Boot|FPGA Bitstream]]: <code>fpga.bit</code>**Linux kernel: <code>uImage</code>**Device tree: <code>bora.dtb</code>}}
A summary of images with a brief description can be found into the table below{| class="wikitable"|-! rowspan="2" |Image !! colspan="1" |BELK version !! colspan="1" |BXELK version|-| 4.0.0 || 2.0.0 |-| mksd.sh || [[mirror:bora/belk-4.0.0/mksd.sh|mksd.sh]] || [[mirror:bora/belk-4.0.0/mksd.sh|mksd.sh]]|-| [[Working_with_the_Yocto_build_system#bootscript|bootscript]] || [[mirror:bora/belk-4.0.0/boot.scr|boot.scr]] || [[mirror:bora/belk-4.0.0/boot.scr|boot.scr]]|-| U-Boot SPL (for uSD boot)|| [[mirror:bora/belk-4.0.0/belk-4.0.1_bora_mmc_boot.bin|boot.bin]] || [[mirror:bora/belk-4.0.0/belk-4.0.1_borax_mmc_boot.bin|boot.bin]]|-| U-Boot SPL (for NOR flash boot)|| [[mirror:bora/belk-4.0.0/belk-4.0.1_bora_qspi_boot.bin|boot.bin]] || [[mirror:bora/belk-4.0.0/belk-4.0.1_borax_qspi_boot.bin|boot.bin]]|-| U-Boot (for uSD boot) || [[mirror:bora/belk-4.0.0/belk-4.0.1_bora_mmc_u-boot.img|u-boot.img]] || [[mirror:bora/belk-4.0.0/belk-4.0.1_borax_mmc_u-boot.img|u-boot.img]]|-| U-Boot (for NOR flash boot)|| [[mirror:bora/belk-4.0.0/belk-4.0.1_bora_qspi_u-boot.img|u-boot.img]] || [[mirror:bora/belk-4.0.0/belk-4.0.1_borax_qspi_u-boot.img|u-boot.img]]|-| [[BELK-AN-008:_Programming_the_FPGA_Bitstream_with_U-Boot|FPGA Bitstream]] || [[mirror:bora/belk-4.0.0/belk-4.0.0_bora_fpga.bit|fpga.bit]] || [[mirror:bora/belk-4.0.0/belk-4.0.0_borax_fpga.bit|fpga.bit]]|-| Linux kernel || [[mirror:bora/belk-4.0.0/belk-4.0.0_uImage|uImage]] || [[mirror:bora/belk-4.0.0/belk-4.0.0_uImage|uImage]]|-| Device tree || [[mirror:bora/belk-4.0.0/belk-4.0.0_bora.dtb|bora.dtb]] || [[mirror:bora/belk-4.0.0/belk-4.0.0_bora.dtb|bora.dtb]]|-|Root File System || [[mirror:bora/belk-4.0.0/belk-4.0.0_bora-image-devel-bora.tar.gz|bora.tar.gz]] || [[mirror:bora/belk-4.0.0/belk-4.0.0_bora-image-devel-bora.tar.gz|bora.tar.gz]]|}
{| class="wikitable"
|-
! rowspan="2" |Image !! colspan="1" |BELK version !! colspan="1" |BXELK version
|-
| 3.0.2 || 1.0.1 |-| mksd.sh || [[mirror:bora/belk-3.0.2/mksd.sh|mksd.sh]] || [[mirror:bora/bxelk-1.0.1/mksd.sh|mksd.sh]]|-| [[Working_with_the_Yocto_build_system#bootscript|bootscript]]|| [[mirror:bora/belk-3.0.2/boot.scr|boot.scr]] || [[mirror:bora/bxelk-1.0.1/boot.scr|boot.scr]]|-| 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.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 header || [[mirror:bora/belk-3.0.2/boot_header-1.0.1|boot-header]] || [[mirror:bora/bxelk-1.0.1/boot_header-1.0.1|boot-header]]|-| Linux kernel || [[mirror:bora/belk-3.0.2/belk-3.0.0_uImage|uImage]] || [[mirror:bora/bxelk-1.0.1/belk-3.0.0_uImage|uImage]]|-| Device tree || [[mirror:bora/belk-3.0.2/belk-3.0.0_bora.dtb|bora.dtb]] || [[mirror:bora/bxelk-1.0.1/belk-3.0.0_bora.dtb|bora.dtb]]|-|Root File System || [[mirror:bora/belk-3.0.2/belk-3.0.2_bora-image-devel-bora.tar.gz|bora.tar.gz]] || [[mirror:bora/belk-3.0.2/belk-3.0.2_bora-image-devel-bora.tar.gz|bora.tar.gz]]|} {| class="wikitable"|-! rowspan="2" |Image !! colspan="1" |BELK version !! colspan="1" |BXELK version|-| 3.0.1 || 1.0.0
|-
| mksd.sh || [[mirror:bora/belk-3.0.1/mksd.sh|mksd.sh]] || [[mirror:bora/bxelk-1.0.0/mksd.sh|mksd.sh]]
Most of storage space is occupied by two partitions:
*a <code>FAT32</code> partition (<code>mmcblk0p1</code>) containing:
** For '''BELK <= 3.0.2''' and '''BXELK <= 1.0.1''' :***<code>boot.bin</code> boot image (containing FSBL, FPGA Bitstream an U-boot binaries)***U-Boot <code>boot.scr</code> bootscript***Linux kernel and DTB binary images** For '''BELK 4.0.0''' or newer and '''BXELK 2.0.0''' or newer:***<code>boot.bin</code> u-boot SPL image***<code>fpga.bit</code> optional [[BELK-AN-008:_Programming_the_FPGA_Bitstream_with_U-Boot|FPGA bitstream]]***<code>u-boot.img</code> u-boot image***U-Boot <code>uEnvboot.txtscr</code> environmentbootscript***Linux kernel and DTB binary images*** MVM image in OVA format
*an <code>ext3</code> partition (<code>mmcblk0p2</code>) containing the root file system for the target.
<code>uEnv.txt</code> bootscript and root file system are used to boot the target as described in [[BoraX_Embedded_Linux_Kit_(BXELK)BELK/BXELK_Quick_Start_Guide#Target_setup_and_first_boot|this section]].
It is worth remembering that the microSD card is [[System boot and recovery via microSD card (BELK/BXELK)|bootable]] and U-Boot environment is retrieved from (and stored to with <code>saveenv</code>) into the FAT partition as <code>bora.env</code>
== Release notes ==
 
=== BELK 4.0.0 / BXELK 2.0.0 ===
 
Updates:
# Switched to Vivado 2017.1
# Updated U-Boot and Linux versions
 
==== Known Limitations ====
 
{| class="wikitable"
|-
!ID
!Component
!Subsystem
!Description
|-
|0001
|BoraEVB
|External DDR3 bank (BoraEVB only)
|DDR3 bank can be populated on request. For more details please refer to [mailto:sales@dave.eu Sales Department].
|-
|0002
|BoraEVB/BoraXEVB
|ETH1 interface
|Please refer to [[AN-BELK-006:_Enabling_dual_Gigabit_Ethernet_support_on_BoraEVB/BoraXEVB|this application note]] for second Ethernet interface support.
|-
|0003
|BoraEVB/BoraXEVB
|RTC
|Date/time retention is limited to about 4 hours.
|-
|0004
|MVM
|MVM Eclipse cross-toolchain configuration
|Cross-toolchain configuration in Eclipse in the BELK MVM cannot be saved correctly.<br />To fix the problem the following commands must be issued in the MVM terminal:
<pre>
cd /home/dvdk/bora/sdk/belk-4.0.0/sysroots/
sudo ln -s x86_64-petalinux-linux x86_64-petalinuxsdk-linux
</pre>
 
otherwise, the SDK can be updated for fixing this issue using [https://mirror.dave.eu/bora/belk-4.0.0/belk-4.0.1_sdk.sh this] file
|-
|0005
|MVM
|MVM Eclipse gdb remote debug
|Remote debug of an application using Eclipse and gdb is not working due to an issue with the Yocto SDK included in the BELK/BXELK MVM.
This issue will be fixed in next BELK/BXELK release. The SDK can be updated for fixing this issue using [https://mirror.dave.eu/bora/belk-4.0.0/belk-4.0.1_sdk.sh this] file
|-
|0006
|MVM
|Cross-building environment
|The script <code>~/env.sh</code> does not set the CC variable properly.
To fix this, please comment out the following line:
 
<code>export CC=gcc</code>
|-
|}
 
=== BELK 3.0.2 / BXELK 1.0.1 ===
 
Updates:
# Fix BELK-3.0.1/BXELK-1.0.0 software issues
# Use standard DAVE recovery scripts for u-boot
 
(BoraXEVB only) For LCD interfacing, please refer to [[AN-BELK-004:_Interfacing_BoraEVB/BoraXEVB_to_TFT_LCD_display|this application note]].
 
==== Known Limitations ====
 
{| class="wikitable"
|-
!Issue
!Description
|-
|External DDR3 bank (BoraEVB only)
|DDR3 bank can be populated on request. For more details please refer to [mailto:sales@dave.eu Sales Department].
|-
|ETH1 interface
|Please refer to [[AN-BELK-006:_Enabling_dual_Gigabit_Ethernet_support_on_BoraEVB/BoraXEVB|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 ===
Updates: added support for BoraX/BoraXEVB evaluation system
 
(BoraXEVB only) For LCD interfacing, please refer to [[AN-BELK-004:_Interfacing_BoraEVB/BoraXEVB_to_TFT_LCD_display|this application note]].
==== Known Limitations ====
|-
| <code>canutils</code> package is missing is default root file system
| It can be downloaded directly from our package repository as described [[Physical devices mapping (BELK/BXELK)#CAN|here]]
|-
|External DDR3 bank (BoraEVB only)
|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.
|-
|}
# Updated U-Boot and Linux versions
(BoraXEVB only) For LCD interfacing, please refer to [[AN-BELK-004:_Interfacing_BoraEVB/BoraXEVB_to_TFT_LCD_display|this application note]].
==== Known Limitations ====
# Fix and performance improvement on u-boot network interface
# Fix SD card hotplug issue in Linux
# First [[Building_the_software_components_via_Yocto_Advanced_use_of_Yocto_build_system_(BELK/BXELK)|Yocto Daisy (1.6) BSP Release]]
==== Known Limitations ====
4,650
edits

Navigation menu