Changes

Jump to: navigation, search

SDV04 Embedded Linux Kit (SDVX)

3,165 bytes added, 16:44, 11 March 2020
SDVX software components
==Introduction==
[[File:SDVXSDV04-C1R.pngjpg|thumb|center|600px|SDV04 with AxelLite SOM]][[File:SDV04-UL-C1R.pngjpg|thumb|center|600px|SDV04 with AxelULite SOM]]
SDV04 SDVX Embedded Linux Kit 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 [[SDV03 | SDV03]] and [[SDV04 board | SDV04 board]]carrier board
* build and debug applications that will be executed on top of Yocto-based Linux distribution running on the target.
 
The main kit components are:
* hardware platform ([[SDV04| SDV04]])- optionally [[SDV03 | SDV03]] platform can be requested
* development host released in the form of [[Managed_Virtual_Machine_(MVM)|Managed Virtual Machine]], tailored for [[Managed_Virtual_Machine_(MVM)#Yocto-based_Linux_distribution|Yocto-based distribution]]
* technical documentation (hardware manuals, mechanical drawings, reference schematics, application notes etc.)
|SDV04 Carrier board
|Please refer to [[SDV04 | SDV04]] page
|-
| style="text-align: center;" | [[File:SDV03.png|60px]]
|SDV03 Carrier board
|Please refer to [[SDV03 | SDV03]] page
|-
| style="text-align: center;" | [[File:Alimentatore.jpg|40px]]
|AC/DC Single Output Wall Mount adapter<br>Output: +12V – 2.0 A
|Please refer to [[SDV04 Embedded Linux Kit (SDVX)#Quick_start_guide | SDVX Quick_start_guideQuick start guide]]
|-
| style="text-align: center;" | [[File:Cavetto-seriale2.jpg|50px]]
|DB9 Male Serial port adapter
|Please refer to [[SDV04 Embedded Linux Kit (SDVX)#Quick_start_guide | SDVX Quick_start_guideQuick start guide]]
|-
| style="text-align: center;" | [[File:ProdSDC-MBLY-thumb.png|50px]]
|MicroSDHC card with SD adapter and USB adapter
|Please refer to [[SDV04 Embedded Linux Kit (SDVX)#Quick_start_guide | SDVX Quick_start_guideQuick start guide]]
|-
|}
==Additional documentation==
SDVX documentation is provided on [[:Category:SDVX|Wiki]] product pages. The most important documents are listed below:
 
* [[Hardware_Manual_(SDV04)|Hardware Manual]]
* [[Mechanicals_(SDV04)|Mechanicals]]
 
== SDVX 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 SDVX development kit. However, some customization is required, in particular at bootloader and linux kernel levels.
{| class="wikitable"
!
! colspan="14" | SDVX version
|-
|Release number
|1.0.0
|1.0.1
|1.0.4
|1.0.5
|-
|Release type
|Major
|Minor
|Minor
|Minor
|-
|Status
|Released
|Released
|Released
|Released
|-
|Release date
|September 2018
|October 2018
|February 2019
|March2020
|-
|'''Release notes'''
|[[#SDVX 1.0.0 | Ver 1.0.0]]
|[[#SDVX 1.0.1 | Ver 1.0.1]]
|[[#SDVX 1.0.4 | Ver 1.0.4]]
|[[#SDVX 1.0.5 | Ver 1.0.5]]
|-
|PCB version
|SDV04 CS073817<br>SDV03 CS041718
|SDV04 CS073817<br>SDV03 CS041718
|SDV04 CS073817<br>SDV04 CS073817A<br>SDV03 CS041718<br>SDV03 CS041718A
|SDV04 CS073817<br>SDV04 CS073817A<br>SDV04 CS073817B<br>SDV03 CS041718<br>SDV03 CS041718A<br>SDV05 CS114119
|-
|SOM PCB version
|Axel Lite: CS335013C<br>Axel ULite:CS184015B|Axel Lite: CS335013C<br>Axel ULite:CS184015B|Axel Lite: CS335013C<br>Axel ULite:CS184015B|Axel Lite: CS335013C<br>Axel ULite:CS184015B
|--
|Supported carrier boards
|[[:Category:SDVX SDV04 | SDV04]]|[[SDV03 | SDV03]] [[SDV04 | SDV04]]|[[SDV03 | SDV03]] [[SDV04 | SDV04]]|[[SDV03 | SDV03]] [[SDV04 | SDV04]]SDV05
|-
|U-Boot version
|2016.03-xelksdvx-31.0.0|2016.03-sdvx-1.0.1|2016.03-sdvx-1.0.2|2016.03-sdvx-1.0.5
|-
|Linux version
|4.1.15-xelksdvx-31.0.0|4.1.15-sdvx-1.0.1|4.1.15-sdvx-1.0.4|4.1.15-sdvx-1.0.5
|-
|Drivers
| valign="top" | SPI NOR Flash (boot)<br>UART debug (2-wire)<br>USB Host<br>USB OTG<br>SD/MMC1<br>eMMC/SD2<br>Touch screen controller<br>EMAC<br>LVDS0<br>NAND<br>RTC<br>I2C<br>SPI<br>[[ConfigID_and_UniqueID | ConfigID]]<br>Splash screen| valign="top" | SPI NOR Flash (boot)<br>UART debug (2-wire)<br>USB Host<br>USB OTG<br>SD/MMC1<br>eMMC/SD2<br>Touch screen controller<br>EMAC<br>LVDS0<br>NAND<br>RTC<br>RTC(M41T83)<br>I2C<br>SPI<br>Bluetooth(NINA B112)<br>[[ConfigID_and_UniqueID | ConfigID]]<br>Splash screen| valign="top" | SPI NOR Flash (boot)<br>UART debug (2-wire)<br>USB Host<br>USB OTG<br>SD/MMC1<br>eMMC/SD2<br>Touch screen controller<br>EMAC<br>LVDS0<br>NAND<br>RTC<br>RTC(M41T83)<br>I2C<br>SPI<br>Bluetooth(NINA B112)<br>[[ConfigID_and_UniqueID | ConfigID]]<br>Splash screen<br>Wifi USB| valign="top" | SPI NOR Flash (boot)<br>UART debug (2-wire)<br>USB Host<br>USB OTG<br>SD/MMC1<br>eMMC/SD2<br>Touch screen controller<br>EMAC<br>LVDS0<br>NAND<br>RTC<br>RTC(M41T83)<br>I2C<br>SPI<br>Bluetooth(NINA B112)<br>[[ConfigID_and_UniqueID | ConfigID]]<br>Splash screen<br>Wifi USB
|-
|NXP/Freescale BSP version
|L4.1.15-1.2.0-GA|L4.1.15-1.2.0-GA|L4.1.15-1.2.0-GA|L4.1.15-1.2.0-GA
|-
|Graphic libraries
|Qt 5.9.2
|Qt 5.9.2
|Qt 5.9.2
|Qt 5.9.2
|-
|Build System
|Yocto Krogoth (2.1)
|Yocto Krogoth (2.1)
|Yocto Krogoth (2.1)
|Yocto Krogoth (2.1)
|-
|Android
|Marshmallow 6.0.1
|Marshmallow 6.0.1
|Marshmallow 6.0.1
|Marshmallow 6.0.1
|}
 
====Downloadable binary images====
A summary of images with a brief description can be found into the table below:
{{ImportantMessage|text=U-In order to boot file Linux from SD card files, '''the binary files must be renamed''' as follows:*bootscript: <code>u-boot.imxscr</code> - for AxelULite module with NOR flash - must be stored into first raw sector of the SD card using <code>dd</code> command<br> U-boot file <code>u-boot.imx</code> - for AxelLite module with NAND flash - must be programmed stored into NAND flash first raw sector of the SD card using <code>kobs-ngdd</code> linux utility<br>command}}
{| class="wikitable"
|-
! Image !! colspan="56" |SDVX version 1.0.04
|-
| Platform || colspan="4" style="text-align: center" | SDV04|| colspan="1" style="text-align: center" | SDV03
|-
| Carrier Board [[ConfigID_and_UniqueID | ConfigID]]|| style="text-align: center" | 0042 || style="text-align: center" | 0044 || style="text-align: center" | 0043 || style="text-align: center" | 0045 || style="text-align: center" |004a
|-
| LCD panel || FutureLabs 1024x600 7" || Innolux 1280x800 10.1" || Innolux 1280x800 10.1" || FutureLabs 1024x600 7"|| Ampire AM-800480STMQW-TA0
|-
| Touchscreen || colspan="4" style="text-align: center" | capacitive|| colspan="1" style="text-align: center" | resistive
|-
| bootscript || colspan="45" style="text-align: center" |[[mirror:sdvx/sdvx-1.0.0/boot.scr|boot.scr]]
|-
| U-Boot || colspan="2" style="text-align: center" |[[mirror:sdvx/sdvx-1.0.04/sdvx-1.0.0_mx6ul_sfczg_spi_u2_mx6ul_sfczg_spi_u-boot.imx|u-boot(NOR)]] || colspan="2" style="text-align: center" |[[mirror:sdvx/sdvx-1.0.4/sdvx-1.0.2_mx6dl_sfczg_nand_u-boot.imx|u-boot (NAND)]] || style="text-align: center" | [[mirror:sdvx/sdvx-1.0.4/sdvx-1.0.0_mx6dl_sfczg_nand_u2_mx6dl_sfczg_u-boot.imx|u-boot(eMMC)]]
|-
| Linux kernel || colspan="2" style="text-align: center" |[[mirror:sdvx/sdvx-1.0.04/sdvx-1.0.0_ul_uImage4_ul_uImage|uImage]] || colspan="23" style="text-align: center" |[[mirror:sdvx/sdvx-1.0.04/sdvx-1.0.0_lite_uImage4_lite_uImage|uImage]]
|-
| Device tree (UL processor) || [[mirror:sdvx/sdvx-1.0.04/sdvx-1.0.0_ul_imx6ul4_ul_imx6ul-axelulite-cb0042.dtb|imx6ul-axelulite-cb0042.dtb]] || [[mirror:sdvx/sdvx-1.0.04/sdvx-1.0.0_ul_imx6ul4_ul_imx6ul-axelulite-cb0044.dtb|imx6ul-axelulite-cb0044.dtb]] || || ||
|-
| Device tree (DualLite processor) || || || [[mirror:sdvx/sdvx-1.0.04/sdvx-1.0.0_lite_imx6dl4_lite_imx6dl-sfczg-cb0043.dtb|imx6dl-sfczg-cb0043.dtb]] || [[mirror:sdvx/sdvx-1.0.04/sdvx-1.0.0_lite_imx6dl4_lite_imx6dl-sfczg-cb0045.dtb|imx6dl-sfczg-cb0045.dtb]] || style="text-align: center" | [[mirror:sdvx/sdvx-1.0.4/sdvx-1.0.4_lite_imx6dl-sdv03-cb004a.dtb|imx6dl-sdv03-cb004a.dtb]]
|}
 
=== SDVX microSD Layout ===
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'''.
=== Release notes ===
 
==== SDVX 1.0.5 ====
* Add support for SDV05
* Add CDC/ACM driver
 
==== SDVX 1.0.4 ====
* Add support for RTL8188CUS and RTL8188EUS wifi USB key (client and AP mode)
 
===== Known issues and limitations =====
 
==== SDVX 1.0.1 ====
* Add support for SDV03
 
===== Known issues and limitations =====
==== SDVX 1.0.0 ====
* Release date: September, 18th 2018
* Status: released
* Freescale Linux BSP: L4.1.15-2.0.0
* Supported carrier boards: SDV04
==== Notes ====
 
* First official release
Once power is applied to the target, the U-Boot bootloader will be fetched from the flash internal storage (NOR/NAND/eMMC depending on order code) and executed. Boot messages will be printed out to the serial console. Redundant U-Boot environment is stored in the flash as well, as depicted in the following image.
 <gallery mode="packed " heights="500px">
File:Xub-nor.png|center|thumb|500px|NOR partition table
File:Nand SDVx.png|center|thumb|500px|NAND partition table
</pre>
 
=== Boot mode ===
Please find more information [[Boot_options_(SDV04) | here]] about the selected boot device.
===Host setup===
===Developing the software for the target===
Please refer to[[Developing the software for the target (SDVX)| this page]].
 
===Accessing hardware peripherals===
Please refer to[[Accessing hardware peripherals (SDVX)| this page]].
 
==Advanced topics==
===Debugging with Eclipse===
To build your first application, start the QtCreator from the command line with the following command:
 
<pre>
sdvx-qtcreator [target]
</pre>
 
where the target is '''ul''' for ''sdvx-ul'' or '''lite''' for ''sdvx-lite''
 
<pre class="workstation-terminal">
dvdk@ubuntu-xenial:~$ sdvx-qtcreator ul
Starting QtCreator for sdvx-ul
</pre>
 
 
{{ImportantMessage|text=It is important to start QtCreator with the above script each time you close it}}
This command will take care of sourcing the correct environment for the target device. After that, one can follow this guide to compile and debug the[[XELK-AN-004: Getting Started With QT Creator#Qt application example| Qt application example]]. You should probably want to change the '''ip-address''' of your kit as explained [[XELK-AN-004: Getting Started With QT Creator#Devices | here]]
 ==== Sdvx-lite SDVX Lite ====
If the target device is '''sdvx-lite''', the command line arguments are
</pre>
==== Sdvx-ul SDVX UL ====
If the target device is '''sdvx-ul''', the command line arguments are
<pre>
-platform linuxfb:fb=/dev/fb0
</pre>
Moreover, if one intends to build '''Qml''' application for the '''sdvx-ul''' board, it is necessary to start the Qml application with
 
<pre>
export QMLSCENE_DEVICE=softwarecontext
</pre>
 
For example, to start the '''Qt5 Cinematic Experience''' application that is installed inside the
devel RFS it is necessary to run:
<pre class="workstation-terminal">
root@sdvx-ul:~# export QMLSCENE_DEVICE=softwarecontext
root@sdvx-ul:~# Qt5_CinematicExperience -platform linuxfb:fb=/dev/fb0
libpng warning: iCCP: known incorrect sRGB profile
</pre>
8,154
edits

Navigation menu