SBC Lynx Embedded Linux Kit (XUELK 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 [[:Category:SBC Lynx|SBC Lynx board]]* build Linux and debug applications that will run be executed on top of Yocto-based Linux distribution running on the target.
The main kit components are:
* hardware platform composed of(SBC Lynx)** TBD* Development development host released in the form of [[Managed_Virtual_Machine_(MVM)|Managed Virtual Machine]] containing:** Toolchain** U, tailored for [[Managed_Virtual_Machine_(MVM)#Yocto-based_Linux_distribution|Yocto-Boot bootloader sources** Linux kernel sources** Root file systemsbased distribution]]* Technical 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. '''Reading of the [[Managed_Virtual_Machine_(MVM)|Managed Virtual Machine documentation]] is strongly recommended''', as it plays a '''major role''' in the XUELK organization. For more details about SBC Lynx hardware characteristics, please refer to the [[Hardware_Manual_(SBC_Lynx)|SBC Lynx Hardware Manual]]. An account for the reserved area of [http://www.dave.eu '''DAVE Embedded Systems''' website] is required to access the kit contents.
==Kit Contents==
!Notes
|-
|style="text-align: center;" | [[File:Axel-01Lynx.png|60px]]|Axel Ultra SOM (or Axel Lite SOM) SBC Lynx<br>CPU: Freescale NXP i.MX6MX6UL<br>SDRAM: 2 GB 512 MB DDR3<br>NOR: bootable SPI flash 32 MB<br>NAND: 1GB|Please refer to [[Hardware Manual Hardware_Manual_(AxelUltraSBC_Lynx) | Axel Ultra SBC Lynx Hardware Manual]]|-|style="text-align: center;" | [[File:Axelevb-lite-01.png|60px]]|AxelEVB-Lite Carrier board|Please refer to [[AxelEVB-Lite | AxelEVB-Lite]] page|-|style="text-align: center;" | [[File:Dacu-top-view.png|80px]]|Dacu Carrier board|Please refer to [[Dacu | Dacu]] page|-|style="text-align: center;" | [[File:Display.jpg|60px]]|Ampire AM-800480STMQW<br>7” 800x480 LCD display<br>LVDS interface|Please refer to [[XELK Quick Start Guide]]
|AC/DC Single Output Wall Mount adapter<br>Output: +12V – 2.0 A|Please refer to [[XELK Quick Start Guide]]
|-
|style="text-align: center;" | [[File:CavettoTTL-seriale2232RG-VIP-WE.jpgpng|50px]]|DB9 Male Serial port adapterFTDI TTL/USB cable|Please refer to FTDI code: [[XELK Quick Start Guide]http://www.ftdichip.com/Products/Cables/USBTTLSerial.htm TTL-232RG-VIP-WE]
SBC Lynx documentation is provided on [[:Category:SBC_Lynx|Wiki]] product pages. The most important documents are listed below:
* [[XUELK Quick Start Guide]]
* [[Hardware_Manual_(SBC_Lynx)|Hardware Manual]]
* [[Mechanicals_(SBC_Lynx)|Mechanicals]]
== XUELK software components ==
{{ImportantMessage|text=From the software perspective, XUELK supports SBC Lynx and [[:Category:AXEL_ULite|AXEL ULite SOM]]. However, physical contents of the kit include SBC Lynx only.
}}
'''DAVE SBC Lynx Embedded Systems''' adds to the latest Linux BSP Kit is largely derived from Freescale the customization required to support Yocto distributions released by NXP for the SBC Lynx platformi.MX6 product family. For this reason most of the documentation provided by Freescale NXP remains valid for the XUELK development kit. However, some customization is required, in particular at bootloader and linux kernel levels.
The following table reports the XUELK releases information.
{| class="wikitable"
!
!colspan="16" | XUELK version
|-
|Release number
|0.9.0
|1.0.0
|1.1.0
|1.1.3
|1.2.0
|2.0.1/2.0.2/2.0.3
|-
|Release type
|Major
|Major
|Minor
|Minor
|Minor
|Major
|-
|Status
|Beta
|Released
|Released
|Released
|Released
|Released
|-
|Release date
|March 2016
|August 2016
|November 2016
|March 2017
|May 2017
|Sep 2017
|-
|Release notes
|[[#XUELK 0.9.0|0.9.0]]|[[#XUELK 1.0.0|1.0.0]]|[[#XUELK 1.1.0|1.1.0]]|[[#XUELK 1.1.3|1.1.3]]|[[#XUELK 1.2.0|1.2.0]]|[[#XUELK 2.0.1/2.0.2/2.0 .3| Ver 2.0.1/2.0.2/2.0.3]]
|TBDYocto Fido (1.8)|Yocto Fido (1.8)|Yocto Fido (1.8)|Yocto Fido (1.8)|Yocto Fido (1.8)|Yocto Krogoth (2.1)|-|} [1] Not included in the kit [2] Carrier Board 0x00000013 (SBC Lynx CS214515B) uses same dtb file as 0x0000000C [3] Carrier Board 0x0000002D/2E/2F/30 have its own device tree file for different peripherals mapping====Downloadable binary images==== All binary images for XUELK are hosted on [[mirror:lynx|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: {{ImportantMessage|text=For [[AXEL_ULite_and_SBC_Lynx_Embedded_Linux_Kit_(XUELK)#XUELK_software_components|XUELK releases]] 1.1.3 and older, in order to boot Linux from SD card files, '''the binary files must be renamed''' as follows:*bootscript: <code>boot.scr</code>*Linux kernel: <code>uImage</code>*Device tree: <code>imx6ul-lynx.dtb</code>The default U-Boot enviroment variables assume in fact that these names are used.}} {| class="wikitable"|-! rowspan=2|Image !! colspan=6|XUELK version|-|style="text-align: center" |1.0.0 || style="text-align: center" |1.1.0 || style="text-align: center" |1.1.3 || style="text-align: center" |1.1.3-xenomai|| style="text-align: center" |1.2.0 || style="text-align: center" |2.0.3 |-| bootscript || [[mirror:lynx/xuelk-1.0.0/xuelk-1.0.0_boot.scr|boot.scr]] || [[mirror:lynx/xuelk-1.1.0/xuelk-1.1.0_boot.scr|boot.scr]] || colspan=2 style="text-align: center" |[[mirror:lynx/xuelk-1.1.3/xuelk-1.1.3_boot.scr|boot.scr]]|| [[mirror:lynx/xuelk-1.2.0/boot.scr|boot.scr]]|| [[mirror:lynx/xuelk-2.0.3/boot.scr|boot.scr]]|-| U-Boot || [[mirror:lynx/xuelk-1.0.0/xuelk-1.0.0_mx6ul_lynx_u-boot.imx|u-boot.imx]] || [[mirror:lynx/xuelk-1.1.0/xuelk-1.1.0_mx6ul_lynx_u-boot.imx|u-boot.imx]] || colspan=2 style="text-align: center" |[[mirror:lynx/xuelk-1.1.3/xuelk-1.1.2_mx6ul_lynx_u-boot.imx|u-boot.imx]] || [[mirror:lynx/xuelk-1.2.0/xuelk-1.2.1_mx6ul_lynx_u-boot.imx|u-boot.imx]] || [[mirror:lynx/xuelk-2.0.3/xuelk-2.0.3_mx6ul_lynx_u-boot.imx|u-boot.imx]] |-| Linux kernel || [[mirror:lynx/xuelk-1.0.0/xuelk-1.0.0_uImage|uImage]] || [[mirror:lynx/xuelk-1.1.0/xuelk-1.1.0_uImage|uImage]] || [[mirror:lynx/xuelk-1.1.3/xuelk-1.1.3_uImage|uImage]] || [[mirror:lynx/xuelk-1.1.3/xuelk-1.1.3-xeno1_uImage|xeno_uImage]] || [[mirror:lynx/xuelk-1.2.0/xuelk-1.2.1_uImage|uImage]] || [[mirror:lynx/xuelk-2.0.3/xuelk-2.0.3_uImage|uImage]] |-| Device tree || [[mirror:lynx/xuelk-1.0.0/xuelk-1.0.0_imx6ul-lynx-som000c.dtb|imx6ul-lynx-som000c.dtb]] || [[mirror:lynx/xuelk-1.1.0/xuelk-1.1.0_imx6ul-lynx-som000c.dtb|imx6ul-lynx-som000c.dtb]] || style="text-align: center" |[[mirror:lynx/xuelk-1.1.3/xuelk-1.1.3_imx6ul-lynx-som000c.dtb|imx6ul-lynx-som000c.dtb]] || [[mirror:lynx/xuelk-1.1.3/xuelk-1.1.3-xeno1_imx6ul-lynx-som000c.dtb|xeno_imx6ul-lynx-som000c.dtb]] || [[mirror:lynx/xuelk-1.2.0/xuelk-1.2.1_imx6ul-lynx-som000c.dtb|imx6ul-lynx-som000c.dtb]]<br>[[mirror:lynx/xuelk-1.2.0/xuelk-1.2.1_imx6ul-lynx-som0013-cb002f.dtb|imx6ul-lynx-som0013-cb002f.dtb]] || [[mirror:lynx/xuelk-2.0.3/xuelk-2.0.3_imx6ul-lynx-som000c.dtb|imx6ul-lynx-som000c.dtb]]<br>[[mirror:lynx/xuelk-2.0.3/xuelk-2.0.3_imx6ul-lynx-som0013-cb002f.dtb|imx6ul-lynx-som0013-cb002f.dtb]]
=== XUELK microSD Layout ===MVM specific information*TFTP server root directoryThe microSD card provided with XUELK is partitioned as shown in the following image: <code>TBD</code>*target's development root file system path: <code>TBD</code>*cross-tool chain path: <code>TBD</code>*target-specific source code paths:** TBD
==== XELK microSD Layout ====
The microSD provided with XELK is used to store[[File:* A bootable partition (mmcblk0p1, vfat) containing:** binary images (uXUELK-uSD-boot and kernel images)** XELK documentation** XELK DVDK virtual machine image* XELK root file system partition (mmcblk0p2, ext3)partitioning.png|thumb|center|600px|microSD card partitioning]]
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 servicesMost of storage space is occupied by two partitions:** TFTP: with base directory a <code>FAT32</srvcode> partition (<code>mmcblk0p1</tftp/** NFS: configured through the /etc/exports file* Secondary disk code>) containing source code and tools:** Bootloader (uU-boot) source tree cloned from DAVE Embedded Systems public git repository Boot <code>bootscript</code>** Linux kernel source tree cloned from DAVE Embedded Systems public git repositoryand DTB binary images** External pre-built toolchainXUELK virtual machine image in OFV format ([[Managed_Virtual_Machine_(MVM)|MVM]] basic version)** Yocto bsp for AXEL* Pre-installed Yocto7-based root zip Windows executable file systems with setup scripts, makefiles, example applications, ...* Administrator account an <code>ext3</code> partition (dvdk<code>mmcblk0p2</code>) with autologin. Please note that containing the user account credentials are provided with the development kit (you can find them into the README root file contained in system for the sw/dvdk folder of the kit distribution)target.
Please note that XELK u-boot <code>bootscript</code> and kernel source trees root file system are derived from the official trees released by Freescale; these trees have been customized used to add support for boot the Axel SOMtarget as described in [[#Target_setup_and_first_boot|this section]].
It is worth remembering that the microSD card is [[Booting_options_(SBC_Lynx)|bootable]], because U-Boot image is stored at address 0x400. However, even if U-Boot is run from the microSD card, '''the environment is retrieved from NOR flash'''.=== XELK Updates =How to create a bootable microSD card====Please refer to this [[How_to_create_a_bootable_microSD_card_(XUELK)|this page]].
=== XUELK updates === {{ImportantMessage|text=It's recommended to use the latest available XELK XUELK version. Please refer to [[Axel_Embedded_Linux_Kit_(XELK)#Release notes | Release notes]] for further information.}} XUELK updating process consists of updating the [[Managed_Virtual_Machine_(MVM)|Managed Virtual Machine]] it is based on. The procedure is described [[Managed_Virtual_Machine_(MVM)#Updating_MVM|here]]. Please note that this process '''implicitly updates git source code repositories of U-Boot and/or Linux kernel'''. Thus '''it is strongly recommended to create new local branches if you need to modify source code'''.
==== Updating git repositories ====
In XELKXUELK, the following source trees are clones of '''DAVE Embedded Systems''' public git repositories:
This means that these components can be kept in sync and up to date with '''DAVE Embedded Systems''' repositories.
===Release notes = RSA == ==== XUELK 2.0.1/2.0.2/2.0.3 ==== ===== Notes 2.0.3 ===== * Add support for ISSI SPI NOR flash ===== Notes 2.0.2 ===== * Update Yocto BSP to latest Krogoth to fix WPA2 key generation replay security bug (for more details see [http://git.yoctoproject.org/cgit/cgit.cgi/poky/commit/?h=krogoth&id=54e3f82bd77203c3d578e26c86506e6ef5c27000]) ===== Notes 2.0.1 =====Major update on XUELK 1.2.0:* BSP update to NXP 4.1.15-2.0.0_ga* Minor fixes for Wifi and BT ===== Known issues and limitations ===== The following table reports the known limitations of this XUELK release: {| class="wikitable" |-!Limitations!Description|-|USB OTG Current Limit|USB OTG current limit is set at 75mA in Host mode|-|Low Power Idle not supported|Low Power Idle is not supported in this release|} ==== XUELK 1.2.0 ==== ===== Notes ===== Minor update on XUELK 1.1.3:* add CPU temperature for thermal thresholds settings* add rf kill support for Bluetooth on device tree* add [[ConfigID and UniqueID|ConfigID]] support for different hardware configurations: SOM_ConfigID and CB_ConfigID* minor fixes and enhancement ===== Known issues and limitations =====
Please follow The following table reports the procedure reported below to generate the RSA ssh keyknown limitations of this XUELK release:
* 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>{| class="wikitable" |-!Issue!Description|-|USB OTG Current Limit|USB OTG current limit is set at 75mA in Host git.dave.eumode|-|Low Power Idle not supported|Low Power Idle is not supported in this release|- User git|Bridged network configuration without DHCP server Hostname git|See [[VirtualBox_Network_Configuration#LXDE|this section]].dave.eu PreferredAuthentications publickey|} IdentityFile ~/==== XUELK 1.ssh/username@myhost1.com</pre>3 ====
Please send the public key file to one of the following email support addresses (depending on which SOM is included in your kit version)===== Notes =====
Minor update on XUELK 1.1.0:* add some useful networking support (wireless WPA and bonding)* add configid support for new hardware revision* [mailto:add supportfor Xenomai extension* fix XUELK-axel@dave1.1.eu support0 commercial microSD mount issue* fix XUELK-axel@dave1.eu]1.0 reboot when rfs is on SD/MMC* minor fixes and enhancement
with the request for the creation of a new public git account associated to your username. The support team will enable the account ===== Known issues and send you a confirmation as soon as possible.limitations =====
==== Synchronizing The following table reports the repository ====known limitations of this XUELK release:
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:
<pre {| class="workstation-terminalwikitable">dvdk@dvdk|-vm:~$ cd /home/dvdk/xelk/linux!Issue!Description|-2.6|USB OTG Current Limit|USB OTG current limit is set at 75mA in Host mode|-imx/dvdk@dvdk-vm:/home/dvdk/xelk/linux-2|Low Power Idle not supported|Low Power Idle is not supported in this release|} ==== XUELK 1.1.6-imx$ git fetch origin0 ==== </pre>===== Notes =====
Please note that <code>git fetch</code> doesn't merge the commits Minor update on the current branchXUELK 1. To do that, you should run 0.0:* add some useful networking support (on both Linux and file system)* fix XUELK-1.0.0 shutdown issue* fix XUELK-1.0.0 MVM network-manager issues* minor fixes and enhancement
<pre class="workstation-terminal">git merge origin/axel</pre>==== Known issues and limitations =====
or replace The following table reports 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 [httpknown limitations of this XUELK release://git-scm.com/documentation Git Documentation].
=== Release notes ===
{{ImportantMessage|textclass=After "wikitable" |-!Issue!Description|-|Rebooting in Linux may hang|Software reboot on Linux may hang (without rebooting the XELK DVDK installation, please check for updates board) when root file system in on SD/MMC|-|USB OTG Current Limit|USB OTG current limit is set at 75mA in Host mode|-|Low Power Idle not supported|Low Power Idle is not supported in this release|-|Failing mount of root file system on microSD card|Some commercial microSD cards occasionally prevent the target from mounting the source tree repositories provided root file system stored on themselves. microSD cards delivered along with the kit, as described in XUELK do not exhibit this problem.|-|Missing firmware file for Bluetooth|In case [[Axel_Embedded_Linux_Kit_(XELK)#XELK_Updates XUELK-AN-001:_Using_WiFi-Bluetooth_combo_plugin_with_SBC_Lynx| XELK UpdatesDWM wireless plugin]]is used, the following file need to be copied in <code>/lib/firmware/ti-connectivity/</code>:*<code>TIInit_7.6.15.bts</code> (please click [https://github.com/TI-ECS/bt-firmware/blob/master/am335x/TIInit_7.6.15.}bts here] to download it)|}
==== XUELK 1.0.0 ====
===== Notes =====
TBD
First stable release with support for SBC Lynx revision A and Axel ULite ===== Known Limitations issues and limitations =====TBDThe following table reports the known limitations of this XUELK release: {| class="wikitable" |-!Issue!Description|-|Rebooting in Linux may hang|Software reboot on Linux may hang (without rebooting the board) when root file system in on SD/MMC|-|USB OTG Current Limit|USB OTG current limit is set at 75mA in Host mode|-|Low Power Idle not supported|Low Power Idle is not supported in this release|-|XUELK environment fixup for SD boot<br/>on SBC Lynx|To boot with the XUELK SD card, user may need to execute the following commands at u-boot prompt<br/><pre>setenv mmcroot /dev/mmcblk0p2setenv mmc_loadfdt 'fatload mmc 0:1 ${fdtaddr} imx6ul-lynx-som000c.dtb'saveenv</pre>|-|Failing mount of root file system on microSD card|Some commercial microSD cards occasionally prevent the target from mounting the root file system stored on themselves. microSD cards delivered along with XUELK do not exhibit this problem.|-|System shutdown mode using the <code>shutdown -h now</code> command prevent the subsequent system's power-up|Issuing a system shutdown by the command <code>shutdown -h now</code> as described in [[Supported power mode transitions (SBC Lynx)]] will prevent the subsequent system's boot.|-|Missing 7-zip Windows executable in microSD card|Please download it from http://www.7-zip.org. |-|In the MVM, <code>network-manager</code> applet is not installed by default.| Please refer to [[VirtualBox_Network_Configuration#VBox_Bridged_configuration|this page]] to install it.|-|Missing firmware file for Bluetooth|In case [[XUELK-AN-001:_Using_WiFi-Bluetooth_combo_plugin_with_SBC_Lynx|DWM wireless plugin]] is used, the following file need to be copied in <code>/lib/firmware/ti-connectivity/</code>:*<code>TIInit_7.6.15.bts</code> (please click [https://github.com/TI-ECS/bt-firmware/blob/master/am335x/TIInit_7.6.15.bts here] to download it)|}
==== XUELK 0.9.0 ========= Notes =====First beta release.===== Known issues and limitations =====The following table reports the known limitations of this XELK XUELK release:
{| class="wikitable"
!Description
|-
|Rebooting in Linux may hang|Software reboot on Linux may hang (without rebooting the board) when root file system in on SD/MMC|-|USB OTG Current Limit|USB OTG current limit is set at 75mA in Host mode|-|LDO Mode not supported|LDO Mode is not supported in this SW release|-|Low Power Idle not supported|Low Power Idle is not supported in this release|-|DDR3 Frequency limited at 306 MHz|The DDR3 RAM frequency is limited at 306 MHz in this release
|-
|}
==Quick start guide==
This chapter describes how to quickly start working with the XUELK kit. The following paragraphs will guide you through the setup and installation procedures.
===UnboxingKit registration===TBD{{ImportantMessage|text='''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 [mailto:support-lynx@dave.eu support-lynx@lynx.eu], [[Development_Kits_Identification_Codes|providing the kit P/N and S/N]]. If you also wish to access git repositories containing source code, please follow the procedure described [[Accessing_DAVE_Embedded_Systems_restricted_git_repositories|here]].}} ===Hardware Target setupand first boot===This section describes how to quick start an SBC Lynx board.delivered along with XUELK kit (see also the following image):
*connect a TTL/USB serial cable to J42 connector; J42 pinout is:
** 1: TX data
** 3: 3.3V
** 4: GND
*on host side start your favorite terminal that will be used to interact with the target's serial console; communication parameters are 11520115200-8-N-1*optionally connect the system to Ethernet LAN by plugging cable into connector J16
*connect 12V power supply to J35 connector; J35 pinout is:
**1: GND
**2: VIN*insert microSD card in the slot J43.===First [[File:SBCLynx-XUELK.png|thumb|center|600px|Target setup for first boot===]] Once power has been appliedto the target, U-Boot bootloader will be executed fetched from the SPI NOR flashand executed. Boot messages will be printed out on to the serial console. Redundant U-Boot automatically runs environment is stored in the autoboot macroNOR flash as well, that loads as depicted in the following image. [[File:Xub-nor.png|thumb|center|350px|NOR flash default partitioning]] By default, U-Boot is configured to retrieve Linux kernel and launches it with the options for mounting image stored in the microSD card [1]. In turn, Linux kernel shall mount root fi le file system from the <code>mmcblk0p2 </code> partitionof the [[#XUELK microSD Layout|microSD card itself]]. At the end of the boot process, a demo application is launched and you can interact with the system using the touchscreen.Moreover, the Linux shell is shall be available on the serial console. LastlyThe following dump shows the typical messages printed out to the console during bootstrap process.<pre class="mw-collapsible mw-collapsed">U-Boot 2015.04 (Mar 31 2016 - 23:22:16)-xuelk-0.9.0 CPU: Freescale i.MX6UL rev1.0 at 396 MHzCPU: Temperature 30 CReset cause: PORBoard: MX6UL LYNXI2C: readyDRAM: 512 MiBPMIC: PFUZE300 DEV_ID=0x30 REV_ID=0x11NAND: 1024 MiBMMC: FSL_SDHC: 0SF: Detected S25FL256S_64K with page size 256 Bytes, erase size 64 KiB, both telnet and ssh services are total 32 MiBIn: serialOut: serialErr: serialSOM ConfigID#: 00000008SOM UniqueID#: e317402a:1735b1d4CB ConfigID#: 0000000eCB UniqueID#: a0000011:0dcf672dBoard: MX6UL-LynxNet: FEC0Normal BootHit any key to stop autoboot: 0starting USB...USB0: Port not available .USB1: USB EHCI 1.00scanning bus 1 for devices... 1 USB Device(s) found scanning usb for storage devices... 0 Storage Device(s) found scanning usb for ethernet devices... 0 Ethernet Device(s) found USB device 0: unknown device** Bad device usb 0 **switch to connect partitions #0, OKmmc0 is current deviceto the system through the networkreading boot.scrPlease refer to Appendix 228 bytes read in 12 ms (18.6KiB/s)Running bootscript from mmc ...## Executing script at 80800000bootscript generated with command "mkimage -T script -C none -n SBC-Lynx -d bootscript.txt boot.scr"Booting SBC-Lynx via mmcbootreading uImage6033832 bytes read in 277 ms (20.8 MiB/s)reading imx6ul-lynx.dtb29394 bytes read in 22 ms (1.3 for an example of MiB/s)FDT: override 'som_configid' with '00000008'FDT: property cb_configid 0000000e matchFDT: override 'som_uniqueid' with 'e317402a:1735b1d4'FDT: override 'cb_uniqueid' with 'a0000011:0dcf672d'## Booting kernel from Legacy Image at 80800000 ... Image Name: Linux-3.14.52-xuelk-0.9.0 Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 6033768 Bytes = 5.8 MiB Load Address: 80008000 Entry Point: 80008000 Verifying Checksum ... OK## Flattened Device Tree blob at 83000000 Booting using the boot fdt blob at 0x83000000EHCI failed to shut down host controller.messages Loading Kernel Image ...OK Using Device Tree in place at 83000000, end 8300a2d1switch to ldo_bypass mode!
Starting kernel ...
Booting Linux on physical CPU 0x0
Linux version 3.14.52-xuelk-0.9.0 (amon@linuxserver2) (gcc version 4.9.2 (GCC) ) #2 SMP PREEMPT Thu Mar 31 22:53:29 CEST 2016
[1] <code>bootscript</code> is used to do this task.
===Host setup===
As stated previously, XUELK host tools are based on a [[Managed_Virtual_Machine_(MVM)|Managed Virtual Machine]]. As indicated [[#XUELK microSD Layout|here]], microSD card delivered along with XUELK includes basic version of MVM that is the default option.
In case you choose to use the [[Managed_Virtual_Machine_(MVM)#Advanced_version|''Advanced'' version]] of the MVM instead, the <code><i>project-name</i></code> to be used is <code>lynx</code>.
Either version you choose, please follow the procedure described [[Managed_Virtual_Machine_(MVM)#Installation_and_configuration|here]] 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 [[Accessing_DAVE_Embedded_Systems_restricted_git_repositories|this page]].
{{ImportantMessage|text=Either version of MVM is installed, it provides the tools required to build [[Building_U-Boot_(XUELK)|U-boot]] and [[Building_Linux_kernel_(XUELK)|Linux kernel]]. It does not include the tools required to run Yocto build system instead.}}
===Target configuration for the development stage (<code>net_nfs</code>)===
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 [[Deploying_Embedded_Linux_Systems#The_development_environment|here]].
In DAVE Embedded Systems development kits, this configuration is generally denoted as <code>net_nfs</code>. U-Boot bootloader supports this configuration. Some U-Boot environment variables are needed to set it up. They are detailed [[Booting_Linux_Kernel#Configuration_net_nfs|here]].
For more details about TFTP and NFS servers on host side, please refer to this [[Setting_up_tftp_and_nfs|page]].
===Target configuration for standalone boot===
Please refer to [[Standalone_boot_(XUELK)|this page]].
===How to update root file system on SD card===
RFS update on SD card consists on expanding the new tarball compressed file on SD card ext3 partition.
It is possible, for example, to perform this operation using one of the following process:
* directly on the target
* using a Linux PC (or the XUELK VM)
The ext3 partition (mmcblk0p2) containing the root file system need to be:
* erased
* written with new rfs files
==== Update rfs on target====
* start SBC Lynx via nfs. See how to boot from nfs [[AXEL_ULite_and_SBC_Lynx_Embedded_Linux_Kit_(XUELK)#Target_configuration_for_the_development_stage_.28net_nfs.29|here]]
* change directory to the ext3 partition into the filesystem: typically <code>/run/media/mmcblk0p2</code>
<pre>
root@sbc-lynx:~# cd /run/media/mmcblk0p2
root@sbc-lynx:/run/media/mmcblk0p2#
</pre>
* delete all previous files
<pre>
root@sbc-lynx:/run/media/mmcblk0p2# rm -r *
</pre>
* extract new rfs files from tarball archive previously copied into nfs directory (the following command assumes that xuelk-1.1.0 rfs have been already copied into VM '''/home/dvdk/lynx/rfs/xuelk/home/root''' nfs directory
<pre>
root@sbc-lynx:/run/media/mmcblk0p2# tar jxvpf /home/dvdk/lynx/rfs/xuelk/home/root/xuelk-1.1.0_lynx-image-gui-sbc-lynx.tar.bz2
</pre>
==== Update rfs on a Linux PC====
* insert the SD card and check its mount point
* change dir to the ext3 SD card partition
* delete previous files and extract new files from tarball archive as described [[AXEL_ULite_and_SBC_Lynx_Embedded_Linux_Kit_(XUELK)#Update_rfs_on_target|here]]
===Developing the software for the target===
Please refer to [[Developing the software for the target (XUELK)|this page]].
==Related Documents Physical devices mapping==TBDPlease refer to [[Physical_devices_mapping_(XUELK)|this page]].==Advanced topics=====Debugging with Eclipse===Please refer to [[Debugging with Eclipse (MVM)|this page]].