Axel Embedded Linux Kit (XELK)

From DAVE Developer's Wiki
(Redirected from XELK)
Jump to: navigation, search
Info Box
Dacu-top-view.png Applies to Dacu
Axel-04.png Applies to Axel Ultra
Axel-lite 02.png Applies to Axel Lite
Axel-02.png Applies to AXEL ESATTA

Introduction

Axel-on-evb-02.png

Axel Embedded Linux Kit (XELK for short) provides all the necessary components required to set up the developing environment to:

  • build the bootloader (U-Boot)
  • build and run Linux operating system on Axel-based systems
  • build Linux applications that will run on the target.

The main kit components are:

  • hardware platform composed of
    • Axel system-on-module (SOM for short)
    • AxelEVB-Lite plugged on Dacu carrier board
    • 800x480 7" LVDS display
  • Development virtual machine containing:
    • Toolchain
    • U-Boot bootloader sources
    • Linux kernel sources
    • Root file systems
  • Technical documentation such hardware manuals, mechanical drawings, reference schematics, application notes etc.

The documents related to the software issues help the user to quickly start configuring the bootloader and the operating system, by hiding most of the complexity of the underlying hardware. For more details about Axel hardware characteristics, please refer to the Axel Hardware Manual. An account for the reserved area of DAVE Embedded Systems website is required to access the kit contents.

Kit Contents

Component Description Notes
Axel-01.png Axel Ultra SOM (or Axel Lite SOM)
CPU: Freescale i.MX6
SDRAM: 2 GB DDR3
NOR: bootable SPI flash 32 MB
NAND: 1GB
Please refer to Axel Ultra Hardware Manual
Axelevb-lite-01.png AxelEVB-Lite Carrier board Please refer to AxelEVB-Lite page
Dacu-top-view.png Dacu Carrier board Please refer to Dacu page
Display.jpg Ampire AM-800480STMQW
7” 800x480 LCD display
LVDS interface
Please refer to XELK Quick Start Guide
Alimentatore.jpg AC/DC Single Output Wall Mount adapter
Output: +12V – 2.0 A
Please refer to XELK Quick Start Guide
Cavetto-seriale2.jpg DB9 Male Serial port adapter Please refer to XELK Quick Start Guide
ProdSDC-MBLY-thumb.png MicroSDHC card with SD adapter and USB adapter Please refer to XELK Quick Start Guide

XELK software components

DAVE Embedded Systems adds to the latest Linux BSP from NXP/Freescale the customization required to support the Axel platform. For this reason most of the documentation provided by NXP/Freescale remains valid for the XELK development kit. However, some customization is required, in particular at bootloader and linux kernel levels.

The following table reports the XELK releases information.

XELK version
Release number 1.0.0 1.1.0 1.2.0 2.0.0 2.1.0 2.2.0 2.3.1 3.0.1
Release type Major Maintenance Maintenance Major Maintenance Maintenance Maintenance Major
Status Released Released Released Released Released Released Released Released
Release date November, 4th 2013 January 2014 May 2014 November 2014 May 2015 February 2016 October 2016 November 2017
Release notes Ver 1.0.0 Ver 1.1.0 Ver 1.2.0 Ver 2.0.0 Ver 2.1.0 Ver 2.2.0 Ver 2.3.1 Ver 3.0.1
SOM PCB version Axel Ultra: CS030713 Axel Ultra: CS030713A Axel Ultra: CS030713A
Axel Lite: CS335013A
Axel Ultra: CS030713A
Axel Lite: CS335013A
Axel Ultra: CS030713B
Axel Lite: CS335013A
Axel Ultra: CS030713B
Axel Lite: CS335013A
Axel Ultra: CS030713B
Axel Lite: CS335013A
Axel Lite: CS335013C
Axel Ultra: CS030713B
Axel Lite: CS335013A
Axel Lite: CS335013C
Supported carrier boards AxelEVB-Lite
Dacu
AxelEVB-Lite
Dacu
AxelEVB-Lite
Dacu
AxelEVB-Lite
Dacu
AxelEVB-Lite
AxelEVB-Lite rev.A
Dacu
AxelEVB-Lite
AxelEVB-Lite rev.A
Dacu
SBCX
AxelEVB-Lite
AxelEVB-Lite rev.A
Dacu
SBCX
AxelEVB-Lite
AxelEVB-Lite rev.A
Dacu
SBCX
U-Boot version 2013.10-xelk-1.0.0 2013.10-xelk-1.1.0 2013.10-xelk-1.2.0 2013.04-xelk-2.0.0 2013.04-xelk-2.1.0 2013.04-xelk-2.2.0 2013.04-xelk-2.3.1 2016.03-xelk-3.0.2
Linux version 3.0.35-xelk-1.0.0 3.0.35-xelk-1.1.0 3.0.35-xelk-1.2.0 3.10.17-xelk-2.0.0 3.10.17-xelk-2.1.0 3.10.17-xelk-2.2.0 3.10.17-xelk-2.3.1 4.1.15-xelk-3.0.0
Drivers SPI NOR Flash (boot)
UART debug (2-wire)
USB Host
USB OTG
SD/MMC1
CAN
Touch screen controller
EMAC
SATA
HDMI
LVDS0
SPI NOR Flash (boot)
UART debug (2-wire)
USB Host
USB OTG
SD/MMC1
CAN
Touch screen controller
EMAC
SATA
HDMI
LVDS0
NAND
RTC
I2C
SPI
SPI NOR Flash (boot)
UART debug (2-wire)
USB Host
USB OTG
SD/MMC1
CAN
Touch screen controller
EMAC
SATA
HDMI
LVDS0
NAND
RTC
I2C
SPI
SPI NOR Flash (boot)
UART debug (2-wire)
USB Host
USB OTG
SD/MMC1
CAN
Touch screen controller
EMAC
SATA
HDMI
LVDS0
NAND
RTC
I2C
SPI
Video Input (MIPI)
SPI NOR Flash (boot)
UART debug (2-wire)
USB Host
USB OTG
SD/MMC1
CAN
Touch screen controller
EMAC
SATA
HDMI
LVDS0
NAND
RTC
I2C
SPI
Video Input (MIPI)
PCIe
ConfigID
SPI NOR Flash (boot)
UART debug (2-wire)
USB Host
USB OTG
SD/MMC1
CAN
Touch screen controller
EMAC
SATA
HDMI
LVDS0
NAND
RTC
I2C
SPI
Video Input (MIPI)
PCIe
ConfigID
Splash screen (U-Boot) [1]
SPI NOR Flash (boot)
UART debug (2-wire)
USB Host
USB OTG
SD/MMC1
CAN
Touch screen controller
EMAC
SATA
HDMI
LVDS0
NAND
RTC
I2C
SPI
Video Input (MIPI)
PCIe
ConfigID
Splash screen (U-Boot) [1]
SPI NOR Flash (boot)
UART debug (2-wire)
USB Host
USB OTG
SD/MMC1
CAN
Touch screen controller
EMAC
SATA
HDMI
LVDS0
NAND
RTC
I2C
SPI
Video Input (MIPI)
PCIe
ConfigID
Splash screen (U-Boot) [1]
NXP/Freescale BSP version L3.0.35-4.1.0 L3.0.35-4.1.0 L3.0.35-4.1.0 L3.10.17-1.0.0 L3.10.17-1.0.0 L3.10.17-1.0.3 L3.10.17-1.0.3 L4.1.15-2.0.0
Graphic libraries Qt 4.8 Qt 4.8 Qt 4.8 Qt 5.3.2 Qt 5.3.2 Qt 5.3.2 Qt 5.3.2 Qt 5.6.2
Build System LTIB LTIB LTIB Yocto Dora (1.5) Yocto Dora (1.5) Yocto Dora (1.5) Yocto Dora (1.5) Yocto Krogoth (2.1)
Android Kitkat 4.4.2 Marshmallow 6.0.1

[1] Splashscreen on LVDS0

Downloadable binary images

All binary images for XELK 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 table below:


200px-Emblem-important.svg.png In order to boot Linux from SD card files, the binary files must be renamed as follows:
  • bootscript: boot.scr

U-boot file u-boot.imx must be stored into first raw sector of the SD card using dd command

200px-Emblem-important.svg.png
Image XELK version 2.3.1
Platform XELK rev.A SBCX rev.A SBCX rev.A SBCX rev.B SBCX rev.B
Carrier Board ConfigID 0001 0002 0003 0012 0013
LCD panel Ampire 800 x 480 7" LVDS 262K colors (RGB666)
(AM-800480STMQW-TA1 or AM-800480SETMQW-TA1H)
Touchscreen resistive resistive capacitive resistive capacitive
bootscript boot.scr boot.scr
U-Boot u-boot (Quad - boot from NOR) u-boot (DualLite - boot from NAND)
Linux kernel uImage
Linux kernel
(Android 4.4.2)
uImage
Device tree (Quad processor) imx6q-xelk-l.dtb imx6q-sbcx-cb0002.dtb Not available imx6q-sbcx-cb0012.dtb Not available
Device tree (DualLite processor) imx6dl-xelk-l.dtb imx6dl-sbcx-cb0002.dtb imx6dl-sbcx-cb0003.dtb imx6dl-sbcx-cb0012.dtb imx6dl-sbcx-cb0013.dtb
Image XELK version 3.0.1
Platform XELK rev.A SBCX rev.B SBCX rev.B
Carrier Board ConfigID 0001 0012 0013
LCD panel Ampire 800 x 480 7" LVDS 262K colors (RGB666)
(AM-800480STMQW-TA1 or AM-800480SETMQW-TA1H)
Touchscreen resistive resistive capacitive
bootscript boot.scr boot.scr
U-Boot u-boot (Quad - boot from NOR) u-boot (DualLite - boot from NAND)
Linux kernel uImage
Device tree (Quad processor) imx6q-xelk-l.dtb imx6q-sbcx-cb0012.dtb imx6q-sbcx-cb0013.dtb
Device tree (DualLite processor) imx6dl-xelk-l.dtb imx6dl-sbcx-cb0012.dtb imx6dl-sbcx-cb0013.dtb

XELK microSD Layout

The microSD provided with XELK is used to store:

  • A bootable partition (mmcblk0p1, vfat) containing:
    • binary images (u-boot and kernel images)
    • XELK documentation
    • XELK DVDK virtual machine image
  • XELK root file system partition (mmcblk0p2, ext3)

XELK contains all the required software and documentation to start developing Linux application on the Axel platform. In particular, XELK provides a virtual machine, called DVDK, with the following features:

  • VirtualBox virtual machine (.OVA archive)
  • Based on Lubuntu 12.04 LTS (64-bit version)
  • Pre-installed VirtualBox Guest Additions
  • LXDE desktop environment
  • Boot disk with the distro and pre-configured basic Linux services:
    • TFTP: with base directory /srv/tftp/
    • NFS: configured through the /etc/exports file
  • Secondary disk containing source code and tools:
    • Bootloader (u-boot) source tree cloned from DAVE Embedded Systems public git repository
    • Linux kernel source tree cloned from DAVE Embedded Systems public git repository
    • External pre-built toolchain
    • Yocto bsp for AXEL
  • Pre-installed Yocto-based root file systems with setup scripts, makefiles, example applications, ...
  • Administrator account (dvdk) with autologin. Please note that the user account credentials are provided with the development kit (you can find them into the README file contained in the sw/dvdk folder of the kit distribution)

Please note that XELK u-boot and kernel source trees are derived from the official trees released by NXP/Freescale; these trees have been customized to add support for the Axel SOM.

XELK Updates

200px-Emblem-important.svg.png It's recommended to use the latest available XELK version. Please refer to Release notes for further information. 200px-Emblem-important.svg.png

Updating git repositories

In XELK, the following source trees are clones of DAVE Embedded Systems public git repositories:

Component GIT Remote XELK Installation Directory
Linux git@git.dave.eu:dave/axel/linux-2.6-imx.git /home/dvdk/xelk/linux-2.6-imx
U-Boot git@git.dave.eu:dave/axel/u-boot-imx.git /home/dvdk/xelk/u-boot-imx
Yocto BSP git@git.dave.eu:dave/axel/axel-bsp.git /home/dvdk/xelk/axel-bsp

This means that these components can be kept in sync and up to date with DAVE Embedded Systems repositories.

RSA key generation

Please follow the procedure reported below to generate the RSA ssh key:

  • select your username (ad es. username@myhost.com)
  • start the DVDK and login into the virtual machine
  • start a shell session
  • enter the .ssh subdirectory into your home directory: cd ~/.ssh/
  • launch the following command:
    ssh-keygen -t rsa -C "username@myhost.com" -f username@myhost.com
  • this command creates the files ~/.ssh/username@myhost.com (private key) and ~/.ssh/username@myhost.com.pub (public key)
  • edit your ~/.ssh/config adding the following lines:
Host git.dave.eu
    User git
    Hostname git.dave.eu
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/username@myhost.com

Please send the public key file to one of the following email support addresses (depending on which SOM is included in your kit version)

with the request for the creation of a new public git account associated to your username. The support team will enable the account and send you a confirmation as soon as possible.

Synchronizing the repository

When the account is enabled, you can synchronize a source tree entering the repository directory and launching the git fetch command, like in the following example:

dvdk@dvdk-vm:~$ cd /home/dvdk/xelk/linux-2.6-imx/
dvdk@dvdk-vm:/home/dvdk/xelk/linux-2.6-imx$ git fetch origin

Please note that git fetch doesn't merge the commits on the current branch. To do that, you should run

git merge origin/axel

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 types

XELK release type can be:

  • Major, when substantial changes are applied to the BSP (eg: major kernel version upgrades) or to the development kit (eg: new features, build system updates, ..). This usually means that a new DVDK is created for the XELK release
  • Maintenance, when minor updates and bug fixes are introduced. This usually means that the DVDK remains the same provided with the previous major version, and only an update of the source tree repositories (and the tftp binaries) is required

As an example, XELK 2.2.0 is a maintenance release, so it provides the DVDK released with the 2.0.0 major release; customers can easily upgrade to the 2.2.0 release by updating the software components as described in XELK Updates.

Release notes

200px-Emblem-important.svg.png After the XELK DVDK installation, please check for updates of the source tree repositories provided with the kit, as described in XELK Updates. 200px-Emblem-important.svg.png

XELK 3.0.1

  • Release date: 17/11/2017
  • Status: released
  • NXP Linux BSP: L4.1.15-2.0.0
  • Supported carrier boards: AxelEVB-Lite on Dacu, SBCX

Notes

200px-Emblem-important.svg.png New MVM must be installed for using XELK-3.0.1. The VM is available for download on DAVE's XELK Reserved Area for registered users. 200px-Emblem-important.svg.png
  • Major change to NXP BSP 4.1.15
  • Updated u-boot and kernel versions
  • Updated Yocto version
  • Updated Qt version

XELK 2.3.1

  • Release date: 18/10/2016
  • Status: released
  • Freescale Linux BSP: L3.10.17-1.0.3
  • Supported carrier boards: SBCX

Notes

200px-Emblem-important.svg.png It's highly recommended to read the ConfigID and UniqueID page. 200px-Emblem-important.svg.png
  • Added support for other ConfigID splash screen on u-boot
  • Added support for other ConfigID on linux with related device-tree source code and binaries
  • Bug fixes and minor changes

XELK 2.2.0

  • Release date: 03/02/2016
  • Status: released
  • Freescale Linux BSP: L3.10.17-1.0.3
  • Supported carrier boards: AxelEVB-Lite on Dacu, SBCX

Notes

200px-Emblem-important.svg.png It's highly recommended to read the ConfigID and UniqueID page. 200px-Emblem-important.svg.png
  • Added splash screen support in U-Boot
  • Added support for SBCX carrier board
  • Updated u-boot and kernel versions
  • Bug fixes and minor changes

Known Limitations

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

Issue Description
USB OTG Verified in Host and Device modes
Reboot from software (not on SBC AXEL) Rebooting the system from software (eg: launching the reboot command from Linux user space) can lead to a system lock. To solve it, reset the board with the dedicated button (S10). SBC AXEL is not affected by this issue.
Ethernet 10 Mbps connections have not been tested

XELK 2.1.0

  • Release date: 04/05/2015
  • Status: released
  • Freescale Linux BSP: L3.10.17-1.0.0
  • Supported carrier boards: AxelEVB-Lite on Dacu

Notes

200px-Emblem-important.svg.png It's highly recommended to read the ConfigID and UniqueID page. 200px-Emblem-important.svg.png
  • Updated u-boot and kernel versions
  • Bug fixes and minor changes

Known Limitations

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

Issue Description
USB OTG Verified in Host and Device modes
Reboot from software Rebooting the system from software (eg: launching the reboot command from Linux user space) can lead to a system lock. To solve it, reset the board with the dedicated button (S10)
Ethernet 10 Mbps connections have not been tested


XELK 2.0.0

  • Release date: 26/11/2014
  • Status: released
  • Freescale Linux BSP: L3.10.17-1.0.0
  • Supported carrier boards: AxelEVB-Lite on Dacu

Notes

  • Added support for Yocto 1.5
  • Updated u-boot and kernel versions
  • Bug fixes and minor changes

Known Limitations

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

Issue Description
ETH0 interface On AxelEVB-Lite, there is a mistake in the connection of the center tap pins. They should be separated from one another and connected through separate 0.1μF common-mode capacitors to ground (for further details (eg: connection and selection of the magnetics), please refer to the Micrel KSZ9031RNX datasheet).
USB OTG Verified in Host and Device modes
Reboot from software Rebooting the system from software (eg: launching the reboot command from Linux user space) can lead to a system lock. To solve it, reset the board with the dedicated button (S10)
Ethernet 10 Mbps connections have not been tested


XELK 1.2.0

  • Release date: 20/05/2014
  • Status: released
  • Freescale Linux BSP: L3.0.35-4.1.0
  • Supported carrier boards: AxelEVB-Lite on Dacu

Notes

  • Added support for Axel Lite SOM
  • Bug fixes and minor changes

Known Limitations

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

Issue Description
USB OTG Verified in Host and Device modes
SD1 SD1 interface (available on the Axel Lite adapter board as microSD connector) detects the card only if it is inserted before booting Linux
Reboot from software Rebooting the system from software (eg: launching the reboot command from Linux user space) can lead to a system lock. To solve it, reset the board with the dedicated button (S10)
Ethernet 10 Mbps connections have not been tested


XELK 1.1.0

  • Release date: January, 29th 2014
  • Status: released
  • Freescale Linux BSP: L3.0.35-4.1.0
  • Supported carrier boards: AxelEVB-Lite on Dacu

Notes

  • Minor update that adds support for more peripherals: nand, rtc, i2c, spi
  • Touch screen works properly
  • CAN works @ 1Mbps
  • The system can boot from SD

Known Limitations

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

Issue Description
Boot modes This kit version supports boot from USB (for recovery purpose), from SPI nor flash and from SD card. Boot from NAND flash will be available on a future release.
CPU cores Max 2 cores. 3rd and 4th cores will be available on a future release.
USB OTG Verified in Host and Device modes
Reboot from software Rebooting the system from software (eg: launching the reboot command from Linux user space) can lead to a system lock. To solve it, reset the board with the dedicated button (S10)
Ethernet Verified speeds: 1 Gbps and 100 Mbps


XELK 1.0.0

  • Release date: November, 4th 2013
  • Status: released
  • Freescale Linux BSP: L3.0.35-4.1.0
  • Supported carrier boards: AxelEVB-Lite on Dacu

Notes

  • First official release

Known Limitations

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

Issue Description
Boot modes This kit version supports boot from USB (for recovery purpose) and from SPI nor flash. Other boot devices (MicroSD, NAND flash, ..) will be available on a future release.
CPU cores Max 2 cores. 3rd and 4th cores will be available on a future release.
USB OTG Verified in Host and Device modes
Reboot from software Rebooting the system from software (eg: launching the reboot command from Linux user space) can lead to a system lock. To solve it, reset the board with the dedicated button (S10)
Ethernet Verified speeds: 1 Gbps and 100 Mbps
CAN Maximum supported speed: 500 kbps
Touch controller Touch events are detected, but touch point is not resolved with precision

Related Documents