Difference between revisions of "Axel Embedded Linux Kit (XELK)"

From DAVE Developer's Wiki
Jump to: navigation, search
(Downloadable binary images)
 
(24 intermediate revisions by 2 users not shown)
Line 5: Line 5:
 
{{AppliesToAxelEsatta}}
 
{{AppliesToAxelEsatta}}
 
{{InfoBoxBottom}}
 
{{InfoBoxBottom}}
 +
 +
{{ObsoleteWikiPage|link=DESK-MX6-L}}
  
 
==Introduction==
 
==Introduction==
Line 40: Line 42:
 
|-
 
|-
 
| style="text-align: center;" | [[File:Axel-01.png|60px]]
 
| style="text-align: center;" | [[File:Axel-01.png|60px]]
|Axel Ultra SOM (or Axel Lite SOM) <br>CPU: Freescale i.MX6<br>SDRAM: 2 GB DDR3<br>NOR: bootable SPI flash 32 MB<br>NAND: 1GB
+
|Axel Ultra SOM<br>CPU: Freescale i.MX6<br>SDRAM: 2 GB DDR3<br>NOR: bootable SPI flash 32 MB<br>NAND: 1GB
 
|Please refer to [[Hardware Manual (AxelUltra) | Axel Ultra Hardware Manual]]
 
|Please refer to [[Hardware Manual (AxelUltra) | Axel Ultra Hardware Manual]]
 +
|-
 +
| style="text-align: center;" | [[File:AxelLite-SOM.jpg|80px]]
 +
|Axel Lite SOM<br>CPU: Freescale i.MX6<br>SDRAM: 2 GB DDR3<br>NOR: bootable SPI flash 32 MB<br>NAND: 1GB
 +
|Please refer to [[Hardware Manual (AxelLite) | Axel Lite Hardware Manual]]
 
|-
 
|-
 
| style="text-align: center;" | [[File:Axelevb-lite-01.png|60px]]
 
| style="text-align: center;" | [[File:Axelevb-lite-01.png|60px]]
Line 76: Line 82:
 
{| class="wikitable"  
 
{| class="wikitable"  
 
!
 
!
! colspan="10" | XELK version
+
! colspan="11" | XELK version
 
|-
 
|-
 
|Release number
 
|Release number
Line 89: Line 95:
 
|3.5.0
 
|3.5.0
 
|4.0.0
 
|4.0.0
 +
|4.1.1
 
|-
 
|-
 
|Release type
 
|Release type
Line 101: Line 108:
 
|Maintenance
 
|Maintenance
 
|Major
 
|Major
 +
|Maintenance
 
|-
 
|-
 
|Status
 
|Status
 +
|Released
 
|Released
 
|Released
 
|Released
 
|Released
Line 125: Line 134:
 
|April 2019
 
|April 2019
 
|August 2019
 
|August 2019
 +
|August 2020
 
|-
 
|-
 
|'''Release notes'''
 
|'''Release notes'''
Line 137: Line 147:
 
|[[#XELK 3.5.0 | Ver 3.5.0]]
 
|[[#XELK 3.5.0 | Ver 3.5.0]]
 
|[[#XELK 4.0.0 | Ver 4.0.0]]
 
|[[#XELK 4.0.0 | Ver 4.0.0]]
 +
| [[Axel Embedded Linux Kit (XELK)#XELK 4.1.1|Ver 4.1.1]]
 
|-
 
|-
 
|SOM PCB version
 
|SOM PCB version
Line 146: Line 157:
 
|Axel Ultra: CS030713B<br>Axel Lite: CS335013A
 
|Axel Ultra: CS030713B<br>Axel Lite: CS335013A
 
|Axel Ultra: CS030713B<br>Axel Lite: CS335013A<br>Axel Lite: CS335013C
 
|Axel Ultra: CS030713B<br>Axel Lite: CS335013A<br>Axel Lite: CS335013C
 +
|Axel Lite: CS335013A<br>Axel Lite: CS335013C
 
|Axel Lite: CS335013A<br>Axel Lite: CS335013C
 
|Axel Lite: CS335013A<br>Axel Lite: CS335013C
 
|Axel Lite: CS335013A<br>Axel Lite: CS335013C
 
|Axel Lite: CS335013A<br>Axel Lite: CS335013C
Line 161: Line 173:
 
|{{pageoldid|AxelEVB-Lite|2970}}<br>[[AxelEVB-Lite|AxelEVB-Lite rev.A]]<br>[[:Category:Dacu | Dacu]]<br>[[:Category:SBC-AXEL | SBCX]]
 
|{{pageoldid|AxelEVB-Lite|2970}}<br>[[AxelEVB-Lite|AxelEVB-Lite rev.A]]<br>[[:Category:Dacu | Dacu]]<br>[[:Category:SBC-AXEL | SBCX]]
 
|{{pageoldid|AxelEVB-Lite|2970}}<br>[[AxelEVB-Lite|AxelEVB-Lite rev.A]]<br>[[:Category:Dacu | Dacu]]<br>[[:Category:SBC-AXEL | SBCX]]
 
|{{pageoldid|AxelEVB-Lite|2970}}<br>[[AxelEVB-Lite|AxelEVB-Lite rev.A]]<br>[[:Category:Dacu | Dacu]]<br>[[:Category:SBC-AXEL | SBCX]]
 +
|{{pageoldid|AxelEVB-Lite|2970}}<br>[[AxelEVB-Lite|AxelEVB-Lite rev.A]]<br>[[:Category:Dacu | Dacu]]<br>[[:Category:SBC-AXEL | SBCX]]
 +
|-
 +
|MVM (distro version)
 +
|Ubuntu 12.04
 +
|Ubuntu 12.04
 +
|Ubuntu 12.04
 +
|Ubuntu 12.04
 +
|Ubuntu 12.04
 +
|Ubuntu 12.04
 +
|Ubuntu 12.04
 +
|Ubuntu 14.04
 +
|Ubuntu 14.04
 +
|Ubuntu 14.04
 +
|Ubuntu 14.04
 
|-
 
|-
 
|U-Boot version
 
|U-Boot version
Line 172: Line 198:
 
|2016.03-xelk-3.0.2
 
|2016.03-xelk-3.0.2
 
|2016.03-xelk-3.5.0
 
|2016.03-xelk-3.5.0
 +
|2017.03-xelk-4.0.0
 
|2017.03-xelk-4.0.0
 
|2017.03-xelk-4.0.0
 
|-
 
|-
Line 185: Line 212:
 
|4.1.15-xelk-3.0.0
 
|4.1.15-xelk-3.0.0
 
|4.9.11-xelk-4.0.0
 
|4.9.11-xelk-4.0.0
 +
|4.9.11-xelk-4.1.1
 
|-
 
|-
 
|Drivers
 
|Drivers
Line 195: Line 223:
 
| valign="top" | SPI NOR Flash (boot)<br>UART debug (2-wire)<br>USB Host<br>USB OTG<br>SD/MMC1<br>CAN<br>Touch screen controller<br>EMAC<br>SATA<br>HDMI<br>LVDS0<br>NAND<br>RTC<br>I2C<br>SPI<br>Video Input (MIPI)<br>PCIe<br>[[ConfigID_and_UniqueID | ConfigID]]<br>Splash screen (U-Boot) [1]
 
| valign="top" | SPI NOR Flash (boot)<br>UART debug (2-wire)<br>USB Host<br>USB OTG<br>SD/MMC1<br>CAN<br>Touch screen controller<br>EMAC<br>SATA<br>HDMI<br>LVDS0<br>NAND<br>RTC<br>I2C<br>SPI<br>Video Input (MIPI)<br>PCIe<br>[[ConfigID_and_UniqueID | ConfigID]]<br>Splash screen (U-Boot) [1]
 
| valign="top" | SPI NOR Flash (boot)<br>UART debug (2-wire)<br>USB Host<br>USB OTG<br>SD/MMC1<br>CAN<br>Touch screen controller<br>EMAC<br>SATA<br>HDMI<br>LVDS0<br>NAND<br>RTC<br>I2C<br>SPI<br>Video Input (MIPI)<br>PCIe<br>[[ConfigID_and_UniqueID | ConfigID]]<br>Splash screen (U-Boot) [1]
 
| valign="top" | SPI NOR Flash (boot)<br>UART debug (2-wire)<br>USB Host<br>USB OTG<br>SD/MMC1<br>CAN<br>Touch screen controller<br>EMAC<br>SATA<br>HDMI<br>LVDS0<br>NAND<br>RTC<br>I2C<br>SPI<br>Video Input (MIPI)<br>PCIe<br>[[ConfigID_and_UniqueID | ConfigID]]<br>Splash screen (U-Boot) [1]
 +
| valign="top" | SPI NOR Flash (boot)<br>UART debug (2-wire)<br>USB Host<br>USB OTG<br>SD/MMC1<br>CAN<br>Touch screen controller<br>EMAC<br>SATA<br>HDMI<br>LVDS0<br>NAND<br>RTC<br>I2C<br>SPI<br>Video Input (MIPI)<br>PCIe<br>[[ConfigID_and_UniqueID | ConfigID]]<br>Splash screen (U-Boot) [1]<br>SPL boot[2]
 
| valign="top" | SPI NOR Flash (boot)<br>UART debug (2-wire)<br>USB Host<br>USB OTG<br>SD/MMC1<br>CAN<br>Touch screen controller<br>EMAC<br>SATA<br>HDMI<br>LVDS0<br>NAND<br>RTC<br>I2C<br>SPI<br>Video Input (MIPI)<br>PCIe<br>[[ConfigID_and_UniqueID | ConfigID]]<br>Splash screen (U-Boot) [1]<br>SPL boot[2]
 
| valign="top" | SPI NOR Flash (boot)<br>UART debug (2-wire)<br>USB Host<br>USB OTG<br>SD/MMC1<br>CAN<br>Touch screen controller<br>EMAC<br>SATA<br>HDMI<br>LVDS0<br>NAND<br>RTC<br>I2C<br>SPI<br>Video Input (MIPI)<br>PCIe<br>[[ConfigID_and_UniqueID | ConfigID]]<br>Splash screen (U-Boot) [1]<br>SPL boot[2]
 
| valign="top" | SPI NOR Flash (boot)<br>UART debug (2-wire)<br>USB Host<br>USB OTG<br>SD/MMC1<br>CAN<br>Touch screen controller<br>EMAC<br>SATA<br>HDMI<br>LVDS0<br>NAND<br>RTC<br>I2C<br>SPI<br>Video Input (MIPI)<br>PCIe<br>[[ConfigID_and_UniqueID | ConfigID]]<br>Splash screen (U-Boot) [1]<br>SPL boot[2]
 
| valign="top" | SPI NOR Flash (boot)<br>UART debug (2-wire)<br>USB Host<br>USB OTG<br>SD/MMC1<br>CAN<br>Touch screen controller<br>EMAC<br>SATA<br>HDMI<br>LVDS0<br>NAND<br>RTC<br>I2C<br>SPI<br>Video Input (MIPI)<br>PCIe<br>[[ConfigID_and_UniqueID | ConfigID]]<br>Splash screen (U-Boot) [1]<br>SPL boot[2]
Line 208: Line 237:
 
|L4.1.15-2.0.0
 
|L4.1.15-2.0.0
 
|L4.1.15-2.0.0
 
|L4.1.15-2.0.0
 +
|L4.9.11_1.0.0
 
|L4.9.11_1.0.0
 
|L4.9.11_1.0.0
 
|-
 
|-
Line 220: Line 250:
 
|Qt 5.6.2
 
|Qt 5.6.2
 
|Qt 5.6.2
 
|Qt 5.6.2
 +
|Qt 5.9.8
 
|Qt 5.9.8
 
|Qt 5.9.8
 
|-
 
|-
Line 232: Line 263:
 
|Yocto Krogoth (2.1)
 
|Yocto Krogoth (2.1)
 
|Yocto Krogoth (2.1)
 
|Yocto Krogoth (2.1)
 +
|Yocto Morty (2.2)
 
|Yocto Morty (2.2)
 
|Yocto Morty (2.2)
 
|-
 
|-
Line 244: Line 276:
 
|Marshmallow 6.0.1
 
|Marshmallow 6.0.1
 
|Marshmallow 6.0.1
 
|Marshmallow 6.0.1
 +
|
 
|
 
|
 
|}
 
|}
Line 261: Line 294:
 
*bootscript: <code>boot.scr</code>
 
*bootscript: <code>boot.scr</code>
  
U-boot file <code>u-boot.imx</code> must be stored into first raw sector of the SD card using <code>dd</code> command
+
U-boot file <code>u-boot.imx</code> must be stored into first raw sector of the SD card using <code>dd</code> command}} 
  
Since XELK-3.5.0 U-boot performs 2-stage bootloader providing two files: SPL and u-boot.img.
+
{{ImportantMessage|text=Since '''XELK-3.5.0''' U-boot performs 2-stage bootloader providing two files: SPL and u-boot.img.
  
 
Both two files must be stored into SD card using <code>dd</code> command}}   
 
Both two files must be stored into SD card using <code>dd</code> command}}   
Line 326: Line 359:
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Image !! colspan="5" |XELK version 4.0.0
+
! Image !! colspan="5" |XELK version 4.1.1
 
|-
 
|-
 
| Platform || XELK rev.A || SBCX rev.B || SBCX rev.B
 
| Platform || XELK rev.A || SBCX rev.B || SBCX rev.B
Line 336: Line 369:
 
| Touchscreen || colspan="1" | resistive || colspan="1" | resistive || colspan="1" style="text-align: center" | capacitive
 
| Touchscreen || colspan="1" | resistive || colspan="1" | resistive || colspan="1" style="text-align: center" | capacitive
 
|-
 
|-
| bootscript || colspan="1" style="text-align: center" |[[mirror:axel/xelk-4.0.0/boot.scr|boot.scr]] || colspan="4" style="text-align: center" |[[mirror:axel/xelk-4.0.0/boot.scr|boot.scr]]
+
| bootscript || colspan="1" style="text-align: center" |[[mirror:axel/xelk-4.1.1/boot.scr|boot.scr]] || colspan="4" style="text-align: center" |[[mirror:axel/xelk-4.1.1/boot.scr|boot.scr]]
 
|-
 
|-
 
| U-Boot SPL || colspan="1" style="text-align: center" |[[mirror:axel/xelk-4.0.0/xelk-4.0.0_mx6qdlaxel_spi_SPL|SPL (Quad - boot from NOR)]] || colspan="4" style="text-align: center" |[[mirror:axel/xelk-4.0.0/xelk-4.0.0_mx6qdlaxel_nand_SPL|SPL (DualLite - boot from NAND)]]  
 
| U-Boot SPL || colspan="1" style="text-align: center" |[[mirror:axel/xelk-4.0.0/xelk-4.0.0_mx6qdlaxel_spi_SPL|SPL (Quad - boot from NOR)]] || colspan="4" style="text-align: center" |[[mirror:axel/xelk-4.0.0/xelk-4.0.0_mx6qdlaxel_nand_SPL|SPL (DualLite - boot from NAND)]]  
Line 342: Line 375:
 
| U-Boot || colspan="1" style="text-align: center" |[[mirror:axel/xelk-4.0.0/xelk-4.0.0_mx6qdlaxel_spi_u-boot.img|img (Quad - boot from NOR)]] || colspan="4" style="text-align: center" |[[mirror:axel/xelk-4.0.0/xelk-4.0.0_mx6qdlaxel_nand_u-boot.img|img (DualLite - boot from NAND)]]  
 
| U-Boot || colspan="1" style="text-align: center" |[[mirror:axel/xelk-4.0.0/xelk-4.0.0_mx6qdlaxel_spi_u-boot.img|img (Quad - boot from NOR)]] || colspan="4" style="text-align: center" |[[mirror:axel/xelk-4.0.0/xelk-4.0.0_mx6qdlaxel_nand_u-boot.img|img (DualLite - boot from NAND)]]  
 
|-
 
|-
| Linux kernel || colspan="5" style="text-align: center" |[[mirror:axel/xelk-4.0.0/xelk-4.0.0_uImage|uImage]]
+
| Linux kernel || colspan="5" style="text-align: center" |[[mirror:axel/xelk-4.1.1/xelk-4.1.1_uImage|uImage]]
 
|-
 
|-
| Device tree (Quad processor) || [[mirror:axel/xelk-4.0.0/xelk-4.0.0_imx6q-xelk-l-2.0.0.dtb|imx6q-xelk-l-2.0.0.dtb]] || [[mirror:axel/xelk-4.0.0/xelk-4.0.0_imx6q-sbcx-cb0012.dtb|imx6q-sbcx-cb0012.dtb]] || [[mirror:axel/xelk-4.0.0/xelk-4.0.0_imx6q-sbcx-cb0013.dtb|imx6q-sbcx-cb0013.dtb]]
+
| Device tree (Quad processor) || [[mirror:axel/xelk-4.1.1/xelk-4.1.1_imx6q-xelk-l-2.0.0.dtb|imx6q-xelk-l-2.0.0.dtb]] || [[mirror:axel/xelk-4.1.1/xelk-4.1.1_imx6q-sbcx-cb0012.dtb|imx6q-sbcx-cb0012.dtb]] || [[mirror:axel/xelk-4.1.1/xelk-4.1.1_imx6q-sbcx-cb0013.dtb|imx6q-sbcx-cb0013.dtb]]
 
|-
 
|-
| Device tree (DualLite processor) || [[mirror:axel/xelk-4.0.0/xelk-4.0.0_imx6dl-xelk-l.dtb|imx6dl-xelk-l.dtb]] || [[mirror:axel/xelk-4.0.0/xelk-4.0.0_imx6dl-sbcx-cb0012.dtb|imx6dl-sbcx-cb0012.dtb]] || [[mirror:axel/xelk-4.0.0/xelk-4.0.0_imx6dl-sbcx-cb0013.dtb|imx6dl-sbcx-cb0013.dtb]]
+
| Device tree (DualLite processor) || [[mirror:axel/xelk-4.1.1/xelk-4.1.1_imx6dl-xelk-l.dtb|imx6dl-xelk-l.dtb]] || [[mirror:axel/xelk-4.1.1/xelk-4.1.1_imx6dl-sbcx-cb0012.dtb|imx6dl-sbcx-cb0012.dtb]] || [[mirror:axel/xelk-4.1.1/xelk-4.1.1_imx6dl-sbcx-cb0013.dtb|imx6dl-sbcx-cb0013.dtb]]
 
|}
 
|}
  
Line 365: Line 398:
 
* LXDE desktop environment
 
* LXDE desktop environment
 
* Boot disk with the distro and pre-configured basic Linux services:
 
* Boot disk with the distro and pre-configured basic Linux services:
** TFTP: with base directory /srv/tftp/
+
** TFTP: with base directory <code>/srv/tftp/</code>
** NFS: configured through the /etc/exports file
+
** NFS: configured through the <code>/etc/exports</code> file
 
* Secondary disk containing source code and tools:
 
* Secondary disk containing source code and tools:
 
** Bootloader (u-boot) source tree cloned from DAVE Embedded Systems public git repository  
 
** Bootloader (u-boot) source tree cloned from DAVE Embedded Systems public git repository  
Line 382: Line 415:
  
 
==== Updating git repositories ====
 
==== Updating git repositories ====
 
+
In XELK, the following source trees are clones of the correspondent '''DAVE Embedded Systems''' git repositories:
In XELK, the following source trees are clones of '''DAVE Embedded Systems''' public git repositories:
+
{| class="wikitable"
 
 
{| class="wikitable"  
 
 
|-
 
|-
 
!| Component
 
!| Component
 
!GIT Remote
 
!GIT Remote
!XELK Installation Directory
 
 
|-
 
|-
|Linux
+
|U-Boot
|git@git.dave.eu:dave/axel/linux-2.6-imx.git
+
|<code>git@git.dave.eu:dave/axel/u-boot-imx.git</code>
|/home/dvdk/axel/linux
 
 
|-
 
|-
|U-Boot
+
|Linux kernel
|git@git.dave.eu:dave/axel/u-boot-imx.git
+
|<code>git@git.dave.eu:dave/axel/linux-2.6-imx.git</code>
|/home/dvdk/axel/u-boot
 
 
|-
 
|-
 
|Yocto BSP
 
|Yocto BSP
|git@git.dave.eu:dave/axel/axel-bsp.git
+
|<code>git@git.dave.eu:dave/axel/axel-bsp.git</code>
|/home/dvdk/axel/axel-bsp
 
|-
 
 
|}
 
|}
 +
For more information about the access to these repositories, please refer to [[Building_the_Yocto_BSP_(XELK)|this link]].
  
This means that these components can be kept in sync and up to date with '''DAVE Embedded Systems''' repositories.
+
Access to DAVE Embedded Systems' git repositories is granted to development kit's owners only. Please refer to [[Accessing_DAVE_Embedded_Systems_restricted_git_repositories|this page]] for detailed instructions on how to get access.
 
 
==== 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: <code>cd ~/.ssh/</code>
 
* launch the following command: <br><pre>ssh-keygen -t rsa -C "username@myhost.com" -f username@myhost.com</pre>
 
* this command creates the files <code>~/.ssh/username@myhost.com</code> ('''private key''') and <code>~/.ssh/username@myhost.com.pub</code> ('''public key''')
 
* edit your <code>~/.ssh/config</code> adding the following lines:
 
 
 
<pre>
 
Host git.dave.eu
 
    User git
 
    Hostname git.dave.eu
 
    PreferredAuthentications publickey
 
    IdentityFile ~/.ssh/username@myhost.com
 
</pre>
 
 
 
Please send the public key file to one of the following email support addresses (depending on which SOM is included in your kit version)
 
 
 
* [mailto:support-axel@dave.eu support-axel@dave.eu]
 
 
 
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 ====
 
==== Synchronizing the repository ====
  
When the account is enabled, you can synchronize a source tree entering the repository directory and launching the <code>git fetch</code> command, like in the following example:
+
The components listed in the table above can be kept in sync and up to date with DAVE Embedded Systems' repositories.
  
<pre class="workstation-terminal">
+
Once the git account has been enabled, the developer can:
dvdk@dvdk-vm:~$ cd /home/dvdk/axel/linux/
+
*clone the repository with the <code>git clone <git_remote_repository></code> command
dvdk@dvdk-vm:/home/dvdk/axel/linux$ git fetch origin
+
*synchronize a source tree entering the repository directory and launching the <code>git fetch origin</code> command.
</pre>
 
  
Please note that <code>git fetch</code> doesn't merge the commits on the current branch. To do that, you should run  
+
Please note that git fetch doesn't merge the commits on the current branch. To do that, the developer should run the <code>git merge</code> command or replace the ''fetch-merge'' process with a single <code>git pull</code> command. Please note that the recommended method is the ''fetch-merge'' process. For further information on Git, please refer to the official Git Documentation (http://git-scm.com
 
 
<pre class="workstation-terminal">
 
git merge origin/axel
 
</pre>
 
 
 
or replace the ''fetch-merge'' process with a single <code>git pull</code> command. Please note that the recommended method is the ''fetch-merge'' process. For further information on Git, please refer to [http://git-scm.com/documentation Git Documentation].
 
  
 
== Release types ==
 
== Release types ==
Line 462: Line 456:
 
{{ImportantMessage|text=After the XELK DVDK installation, please check for updates of the source tree repositories provided with the kit, as described in [[Axel_Embedded_Linux_Kit_(XELK)#XELK_Updates | XELK Updates]].}}
 
{{ImportantMessage|text=After the XELK DVDK installation, please check for updates of the source tree repositories provided with the kit, as described in [[Axel_Embedded_Linux_Kit_(XELK)#XELK_Updates | XELK Updates]].}}
  
=== XELK 4.0.0 ===
+
=== XELK 4.1.1 ===
 +
 
 +
Release notes:
 +
 
 +
* Added kernel support for AxelLite SOM with iMX6Q @1.2GHz and NOR SPI ISSI model
 +
 
 +
 
 +
=== XELK 4.1.0 ===
  
* Release date: 08/2019
+
Release notes:
* Status: Released
 
* NXP Linux BSP: L4.9.11-1.0.0
 
* Supported carrier boards: AxelEVB-Lite on Dacu, SBCX
 
  
==== Notes ====
+
* Updated Yocto targets recipes: added X11, browser, Qt5 Wayland root file system images
 +
 
 +
=== XELK 4.0.0 ===
  
 
{{ImportantMessage|text=New MVM must be installed for using XELK-4.0.0. The VM is available for download on DAVE's XELK Reserved Area for registered users.}}
 
{{ImportantMessage|text=New MVM must be installed for using XELK-4.0.0. The VM is available for download on DAVE's XELK Reserved Area for registered users.}}
 +
 +
Release notes:
  
 
* Major change to NXP BSP 4.9.11
 
* Major change to NXP BSP 4.9.11
Line 489: Line 491:
 
|NAND Samsung
 
|NAND Samsung
 
|NAND Model K9F4G08U0D not detected in u-boot
 
|NAND Model K9F4G08U0D not detected in u-boot
 +
|-
 +
|Linux kernel <code>xconfig</code>
 +
|<code>make xconfig</code> does not work
 +
|-
 +
|Wayland not supported
 +
|Yocto QT5 images with Wayland backend is not yet supported
 
|-
 
|-
 
|}
 
|}
Line 494: Line 502:
 
=== XELK 3.5.0 ===
 
=== XELK 3.5.0 ===
  
* Release date: 04/2019
+
{{ImportantMessage|text=NXP iMX6 silicon revision 1.4 limited the u-boot binary size (due to bug fix in bootrom code). This required the switch to u-boot <b>SPL</b> version (first and second stage).}}
* Status: Released
 
* NXP Linux BSP: L4.1.15-2.0.0
 
* Supported carrier boards: AxelEVB-Lite on Dacu, SBCX
 
  
==== Notes ====
+
Release notes:
 
 
{{ImportantMessage|text=NXP iMX6 silicon revision 1.4 limited the u-boot binary size (due to bug fix in bootrom code). This required the switch to u-boot <b>SPL</b> version (first and second stage).}}
 
  
 
* Major change to u-boot SPL version
 
* Major change to u-boot SPL version
Line 508: Line 511:
 
=== XELK 3.0.1 ===
 
=== XELK 3.0.1 ===
  
* Release date: 17/11/2017
+
{{ImportantMessage|text=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.}}
* Status: released
 
* NXP Linux BSP: L4.1.15-2.0.0
 
* Supported carrier boards: AxelEVB-Lite on Dacu, SBCX
 
  
==== Notes ====
+
Release notes:
 
 
{{ImportantMessage|text=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.}}
 
  
 
* Major change to NXP BSP 4.1.15
 
* Major change to NXP BSP 4.1.15
Line 522: Line 520:
 
* Updated Qt version
 
* Updated Qt version
  
=== XELK 2.3.1 ===
+
=== XELK older releases ===
 +
 
 +
For XELK older ''unsupported'' releases information, please click on Expand here below (on the right)
  
* Release date: 18/10/2016
+
<div class="mw-collapsible mw-collapsed">
* Status: released
 
* Freescale Linux BSP: L3.10.17-1.0.3
 
* Supported carrier boards: SBCX
 
  
==== Notes ====
+
==== XELK 2.3.1 ====
  
 
{{ImportantMessage|text=It's highly recommended to read the [[ConfigID and UniqueID]] page.}}
 
{{ImportantMessage|text=It's highly recommended to read the [[ConfigID and UniqueID]] page.}}
 +
 +
Release notes:
  
 
* Added support for other ConfigID splash screen on u-boot
 
* Added support for other ConfigID splash screen on u-boot
Line 537: Line 536:
 
* Bug fixes and minor changes
 
* Bug fixes and minor changes
  
=== XELK 2.2.0 ===
+
==== 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 ====
 
  
 
{{ImportantMessage|text=It's highly recommended to read the [[ConfigID and UniqueID]] page.}}
 
{{ImportantMessage|text=It's highly recommended to read the [[ConfigID and UniqueID]] page.}}
Line 553: Line 545:
 
* Bug fixes and minor changes
 
* Bug fixes and minor changes
  
==== Known Limitations ====
+
===== Known Limitations =====
  
 
The following table reports the known limitations of this XELK release:
 
The following table reports the known limitations of this XELK release:
Line 573: Line 565:
 
|}
 
|}
  
=== XELK 2.1.0 ===
+
==== 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 ====
 
  
 
{{ImportantMessage|text=It's highly recommended to read the [[ConfigID and UniqueID]] page.}}
 
{{ImportantMessage|text=It's highly recommended to read the [[ConfigID and UniqueID]] page.}}
Line 587: Line 572:
 
* Bug fixes and minor changes
 
* Bug fixes and minor changes
  
==== Known Limitations ====
+
===== Known Limitations =====
  
 
The following table reports the known limitations of this XELK release:
 
The following table reports the known limitations of this XELK release:
Line 607: Line 592:
 
|}
 
|}
  
=== XELK 2.0.0 ===
+
==== 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
 
* Added support for Yocto 1.5
Line 620: Line 598:
 
* Bug fixes and minor changes
 
* Bug fixes and minor changes
  
==== Known Limitations ====
+
===== Known Limitations =====
  
 
The following table reports the known limitations of this XELK release:
 
The following table reports the known limitations of this XELK release:
Line 643: Line 621:
 
|}
 
|}
  
=== XELK 1.2.0 ===
+
==== 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
 
* Added support for Axel Lite SOM
 
* Bug fixes and minor changes
 
* Bug fixes and minor changes
  
==== Known Limitations ====
+
===== Known Limitations =====
  
 
The following table reports the known limitations of this XELK release:
 
The following table reports the known limitations of this XELK release:
Line 678: Line 649:
 
|}
 
|}
  
=== XELK 1.1.0 ===
+
==== 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
 
* Minor update that adds support for more peripherals: nand, rtc, i2c, spi
Line 692: Line 656:
 
* The system can boot from SD
 
* The system can boot from SD
  
==== Known Limitations ====
+
===== Known Limitations =====
  
 
The following table reports the known limitations of this XELK release:
 
The following table reports the known limitations of this XELK release:
Line 718: Line 682:
 
|}
 
|}
  
=== XELK 1.0.0 ===
+
==== 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
 
* First official release
  
==== Known Limitations ====
+
===== Known Limitations =====
  
 
The following table reports the known limitations of this XELK release:
 
The following table reports the known limitations of this XELK release:
Line 759: Line 717:
 
|-
 
|-
 
|}
 
|}
 +
 +
</div>
  
 
== Quick start guide ==
 
== Quick start guide ==
Line 772: Line 732:
 
===Target setup and first boot===
 
===Target setup and first boot===
 
This section describes how to quick start the AxelEVB board delivered along with XELK kit (see also the following image). The hardware setup is the same for AxelUltra and AxelLite SOMs.
 
This section describes how to quick start the AxelEVB board delivered along with XELK kit (see also the following image). The hardware setup is the same for AxelUltra and AxelLite SOMs.
[[File:AxelUltra-AxelEVB.jpg|thumb|center|600px|Axel Ultra/AxelEVB setup]]
+
 
 +
The picture below shows the AxelLite SOM inserted into the AxelEVB: please note the first HW release of {{oldid|3287|AxelEVB-Lite}}
 +
[[File:AxelLite-AxelEVB.jpg|thumb|center|600px|Axel Lite SOM / (first) AxelEVB setup]]
 +
 
 +
The picture below shows the AxelUltra SOM inserted into the AxelEVB: please note the new HW release of [[AxelEVB-Lite]]
 +
[[File:AxelUltra-AxelEVB.jpg|thumb|center|600px|Axel Ultra SOM / (latest) AxelEVB setup]]
 +
 
 
The microSD provided with the XELK can be used to boot the system, since it contains a bootable partition (<code>mmcblk0p1</code>) and a root file system partition (<code>mmcblk0p2</code>).
 
The microSD provided with the XELK can be used to boot the system, since it contains a bootable partition (<code>mmcblk0p1</code>) and a root file system partition (<code>mmcblk0p2</code>).
 
#Insert the MicroSD card provided with the development kit into the microSD slot
 
#Insert the MicroSD card provided with the development kit into the microSD slot
 
#Connect the 12V power supply to the JP2 socket on the DACU board
 
#Connect the 12V power supply to the JP2 socket on the DACU board
 
#(optional) To access the serial console:
 
#(optional) To access the serial console:
#*Connect a serial cable between the J251 connector on the DACU board and PC COM port through a null-modem (https://en.wikipedia.org/wiki/Null_modem) cable (not provided)
+
#*Connect a serial cable, using a null-modem cable (https://en.wikipedia.org/wiki/Null_modem) ''not provided'', between
 +
#** the J251 connector on the DACU board and PC COM port - for the latest AxelEVB-Lite HW version (see picture above)
 +
#** the J28 connector on the AxelEVB-Lite and PC COM port - for the first AxelEVB-Lite HW version (see picture above)
 
#*Start your favorite terminal software on hist side; communication parameters are:
 
#*Start your favorite terminal software on hist side; communication parameters are:
 
#**Baud rate: 115200 Bps
 
#**Baud rate: 115200 Bps
Line 788: Line 756:
  
 
===Binary images on SD card===
 
===Binary images on SD card===
XELK SD card contains all binary images required for booting the system completely from kernel/dtb (stored on first SD <code>fat</code> card partition) to <code>ext3</code> root file system (stored on second SD card partition).
+
 
 +
{{ImportantMessage|text=The XELK bootable microSD card delivered along with the kit is set up to do a full bootstrap sequence. For more details, please refer to [[Working_with_the_Yocto_build_system#bootscript|this section]].}}
  
 
Once you got the new binaries compiled from your modified sources, they have to be installed on first SD partition preserving the original file names used into <i>boot.scr</i> u-boot bootscript.
 
Once you got the new binaries compiled from your modified sources, they have to be installed on first SD partition preserving the original file names used into <i>boot.scr</i> u-boot bootscript.

Latest revision as of 16:18, 31 August 2022

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



Attention.png THIS PAGE IS OBSOLETE, DON'T USE IT AS REFERENCE
The new documentation is available here: DESK-MX6-L

Introduction[edit | edit source]

200px-Emblem-important.svg.png

Customers are strongly recommended to register their kits. Registration grants access to reserved material such as source code and additional documentation.

To register the kit, please send an email to support-axel@dave.eu, providing the kit P/N and S/N.

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[edit | edit source]

Component Description Notes
Axel-01.png Axel Ultra SOM
CPU: Freescale i.MX6
SDRAM: 2 GB DDR3
NOR: bootable SPI flash 32 MB
NAND: 1GB
Please refer to Axel Ultra Hardware Manual
AxelLite-SOM.jpg Axel Lite SOM
CPU: Freescale i.MX6
SDRAM: 2 GB DDR3
NOR: bootable SPI flash 32 MB
NAND: 1GB
Please refer to Axel Lite 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[edit | edit source]

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 3.5.0 4.0.0 4.1.1
Release type Major Maintenance Maintenance Major Maintenance Maintenance Maintenance Major Maintenance Major Maintenance
Status Released Released Released 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 April 2019 August 2019 August 2020
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 Ver 3.5.0 Ver 4.0.0 Ver 4.1.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 Lite: CS335013A
Axel Lite: CS335013C
Axel Lite: CS335013A
Axel Lite: CS335013C
Axel Lite: CS335013A
Axel Lite: CS335013C
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
AxelEVB-Lite
AxelEVB-Lite rev.A
Dacu
SBCX
AxelEVB-Lite
AxelEVB-Lite rev.A
Dacu
SBCX
AxelEVB-Lite
AxelEVB-Lite rev.A
Dacu
SBCX
MVM (distro version) Ubuntu 12.04 Ubuntu 12.04 Ubuntu 12.04 Ubuntu 12.04 Ubuntu 12.04 Ubuntu 12.04 Ubuntu 12.04 Ubuntu 14.04 Ubuntu 14.04 Ubuntu 14.04 Ubuntu 14.04
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 2016.03-xelk-3.5.0 2017.03-xelk-4.0.0 2017.03-xelk-4.0.0
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 4.1.15-xelk-3.0.0 4.9.11-xelk-4.0.0 4.9.11-xelk-4.1.1
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]
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]
SPL boot[2]
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]
SPL boot[2]
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]
SPL boot[2]
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 L4.1.15-2.0.0 L4.9.11_1.0.0 L4.9.11_1.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 Qt 5.6.2 Qt 5.9.8 Qt 5.9.8
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) Yocto Krogoth (2.1) Yocto Morty (2.2) Yocto Morty (2.2)
Android Kitkat 4.4.2 Marshmallow 6.0.1 Marshmallow 6.0.1

[1] Splashscreen on LVDS0

[2] U-Boot SPL version

Downloadable binary images[edit | edit source]

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

Since XELK-3.5.0 U-boot performs 2-stage bootloader providing two files: SPL and u-boot.img.

Both two files must be stored into SD card using dd command

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
Image XELK version 3.5.0 (QUAD/DUAL LITE)
Platform XELK / SBCX
U-Boot SPL SPL (boot from NOR) SPL (boot from NAND)
U-Boot img img (boot from NOR) img (boot from NAND)
Image XELK version 4.1.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 SPL SPL (Quad - boot from NOR) SPL (DualLite - boot from NAND)
U-Boot img (Quad - boot from NOR) img (DualLite - boot from NAND)
Linux kernel uImage
Device tree (Quad processor) imx6q-xelk-l-2.0.0.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[edit | edit source]

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 14.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[edit | edit source]

200px-Emblem-important.svg.png

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

Updating git repositories[edit | edit source]

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

Component GIT Remote
U-Boot git@git.dave.eu:dave/axel/u-boot-imx.git
Linux kernel git@git.dave.eu:dave/axel/linux-2.6-imx.git
Yocto BSP git@git.dave.eu:dave/axel/axel-bsp.git

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

Access to DAVE Embedded Systems' git repositories is granted to development kit's owners only. Please refer to this page for detailed instructions on how to get access.

Synchronizing the repository[edit | edit source]

The components listed in the table above can be kept in sync and up to date with DAVE Embedded Systems' repositories.

Once the git account has been enabled, the developer can:

  • clone the repository with the git clone <git_remote_repository> command
  • synchronize a source tree entering the repository directory and launching the git fetch origin command.

Please note that git fetch doesn't merge the commits on the current branch. To do that, the developer 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 the official Git Documentation (http://git-scm.com

Release types[edit | edit source]

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[edit | edit source]

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.

XELK 4.1.1[edit | edit source]

Release notes:

  • Added kernel support for AxelLite SOM with iMX6Q @1.2GHz and NOR SPI ISSI model


XELK 4.1.0[edit | edit source]

Release notes:

  • Updated Yocto targets recipes: added X11, browser, Qt5 Wayland root file system images

XELK 4.0.0[edit | edit source]

200px-Emblem-important.svg.png

New MVM must be installed for using XELK-4.0.0. The VM is available for download on DAVE's XELK Reserved Area for registered users.

Release notes:

  • Major change to NXP BSP 4.9.11
  • Updated u-boot and kernel versions
  • Updated Yocto version
  • Updated Qt version

Known Limitations[edit | edit source]

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

Issue Description
NAND Samsung NAND Model K9F4G08U0D not detected in u-boot
Linux kernel xconfig make xconfig does not work
Wayland not supported Yocto QT5 images with Wayland backend is not yet supported

XELK 3.5.0[edit | edit source]

200px-Emblem-important.svg.png

NXP iMX6 silicon revision 1.4 limited the u-boot binary size (due to bug fix in bootrom code). This required the switch to u-boot SPL version (first and second stage).

Release notes:

  • Major change to u-boot SPL version
  • Updated u-boot version

XELK 3.0.1[edit | edit source]

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.

Release notes:

  • Major change to NXP BSP 4.1.15
  • Updated u-boot and kernel versions
  • Updated Yocto version
  • Updated Qt version

XELK older releases[edit | edit source]

For XELK older unsupported releases information, please click on Expand here below (on the right)

XELK 2.3.1[edit | edit source]

200px-Emblem-important.svg.png

It's highly recommended to read the ConfigID and UniqueID page.

Release notes:

  • 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[edit | edit source]

200px-Emblem-important.svg.png

It's highly recommended to read the ConfigID and UniqueID page.

  • 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[edit | edit source]

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[edit | edit source]

200px-Emblem-important.svg.png

It's highly recommended to read the ConfigID and UniqueID page.

  • Updated u-boot and kernel versions
  • Bug fixes and minor changes
Known Limitations[edit | edit source]

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[edit | edit source]

  • Added support for Yocto 1.5
  • Updated u-boot and kernel versions
  • Bug fixes and minor changes
Known Limitations[edit | edit source]

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[edit | edit source]

  • Added support for Axel Lite SOM
  • Bug fixes and minor changes
Known Limitations[edit | edit source]

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[edit | edit source]

  • 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[edit | edit source]

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[edit | edit source]

  • First official release
Known Limitations[edit | edit source]

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

Quick start guide[edit | edit source]

This chapter describes how to quickly start working with the XELK kit. The following paragraphs will guide you through the setup and installation procedures.

Kit registration[edit | edit source]

200px-Emblem-important.svg.png

Customers are strongly recommended to register their kits. Registration grants access to reserved material such as source code and additional documentation.

To register the kit, please send an email to support-axel@dave.eu, providing the kit P/N and S/N.

If you also wish to access git repositories containing source code, please follow the procedure described here.

Target setup and first boot[edit | edit source]

This section describes how to quick start the AxelEVB board delivered along with XELK kit (see also the following image). The hardware setup is the same for AxelUltra and AxelLite SOMs.

The picture below shows the AxelLite SOM inserted into the AxelEVB: please note the first HW release of AxelEVB-Lite

Axel Lite SOM / (first) AxelEVB setup

The picture below shows the AxelUltra SOM inserted into the AxelEVB: please note the new HW release of AxelEVB-Lite

Axel Ultra SOM / (latest) AxelEVB setup

The microSD provided with the XELK can be used to boot the system, since it contains a bootable partition (mmcblk0p1) and a root file system partition (mmcblk0p2).

  1. Insert the MicroSD card provided with the development kit into the microSD slot
  2. Connect the 12V power supply to the JP2 socket on the DACU board
  3. (optional) To access the serial console:
    • Connect a serial cable, using a null-modem cable (https://en.wikipedia.org/wiki/Null_modem) not provided, between
      • the J251 connector on the DACU board and PC COM port - for the latest AxelEVB-Lite HW version (see picture above)
      • the J28 connector on the AxelEVB-Lite and PC COM port - for the first AxelEVB-Lite HW version (see picture above)
    • Start your favorite terminal software on hist side; communication parameters are:
      • Baud rate: 115200 Bps
      • Data bits: 8
      • Stop bits: 1
      • Parity: none
  4. (optional) To connect the system to Ethernet LAN, please plug cable on connector J6 connector of the AXELEVB-Lite

By default, the system is configured to boot automatically from the microSD card when powered up.

Binary images on SD card[edit | edit source]

200px-Emblem-important.svg.png

The XELK bootable microSD card delivered along with the kit is set up to do a full bootstrap sequence. For more details, please refer to this section.

Once you got the new binaries compiled from your modified sources, they have to be installed on first SD partition preserving the original file names used into boot.scr u-boot bootscript.

Otherwise, you may create a new boot.scr file using different file names. Here below there is an example on how to create a boot.scr file for booting from SD card:

The bootscript.txt is the text version of the boot.scr file:

echo 'bootscript generated with command "mkimage -A ARM -T script -C none -n XELK -d bootscript.txt boot.scr"'

setenv fdtfile imx6q-xelk-l.dtb
setenv bootfile uImage

setenv mmc_loadk 'fatload mmc ${mmcdev}:1 ${loadaddr} ${bootfile}'
setenv mmc_loadfdt 'fatload mmc ${mmcdev}:1 ${fdtaddr} ${fdtfile}'
setenv mmcboot 'run mmc_loadk mmc_loadfdt mmcargs addip addcons addmisc adddisp0; bootm ${loadaddr} - ${fdtaddr}'

echo Booting AxelLite-XELK via mmcboot

run mmcboot

echo mmcboot FAILURE

and compile it using:

mkimage -A ARM -T script -C none -n XELK -d bootscript.txt boot.scr

Then copy the kernel, dtb and boot.scr into the SD card first partion (the FAT one) and boot XELK with the new images.

Host setup[edit | edit source]

As stated previously, XELK host tools are based on a Managed Virtual Machine. As indicated here, microSD card delivered along with XELK includes basic version of MVM that is the default option.

Please follows the README file on the SD card to extract the *.ova archive and to install the MVM.

It is also worth remembering that access to git repositories is required to download target source code. To enable it, please refer to this page.


200px-Emblem-important.svg.png

The MVM provides the tools required to build U-boot and Linux kernel. It does not include the tools required to run Yocto build system instead.

XELK MVM can be downloaded here. For accessing XELK Reserved area please contact our sales department

Target configuration for the development stage (net_nfs)[edit | edit source]

200px-Emblem-important.svg.png

The default XELK Virtual Machine network configuration is using NAT: this allows to accessing external network (i.e. Internet) using the host computer's networking connection. For software development using net_nfs with tftp/nfs protocols, please configure your VM network interface in Bridge mode (see below)

During the development stage, the target is usually connected via Ethernet LAN to the host machine and is configured to:

  • retrieve binary images (i.e. Linux kernel) via TFTP protocol
  • mount the development root file system via NFS protocol. This root file system is physically in the file system of the host machine as depicted here. An example of Bridge mode configuration for DIVELK can be found here

In DAVE Embedded Systems development kits, this configuration is generally denoted as net_nfs. U-Boot bootloader supports this configuration. Some U-Boot environment variables are needed to set it up. They are detailed here.

For more details about TFTP and NFS servers on host side, please refer to this page.

Target configuration for standalone boot[edit | edit source]

Please refer to this page.

Related Documents[edit | edit source]