LinRT Helium BSPs optimized for i.MX platforms
LinRT Helium, Oxygen, Mercury and Cobalt Yocto BSPs are based on Yocto Rocko 2.4.4, Yocto Thud 2.6.4 and FSL Community BSP in order to provide support for i.MX based platforms and include official Linux kernel stable updates, backported features and fixes coming from LinRT, vendors, kernel community or FSL Community itself. It includes support for many IPs such as GPU, VPU and IPU for i.MX series processors.
All LinRT distributions are designed with Long Term Support Linux kernel 4.9 and 4.14 LTS with Board Support Packages oriented full hardware features support for NXP i.MX processors.
- Secure and fast boot approach
- Optimized and rugged files system images for typical use cases
- Low-latency and Real-time extensions available
- Stable packages and Security fixes
- Multimedia and video capture support
- For network-connected devices and fieldbus applications
LinRT proposes two solutions for GUI interface Framework, one with support with i.MX multi-framebuffer FSL Community/NXP’s BSP approach and the other with DRM/KMS support from Linux mainline kernel.
Multi Framebuffer GUI interface Framework
LinRT Helium, Oxygen, Mercury and Cobalt Yocto BSPs with multi-framebuffers use Linux FSLC/NXP i.MX API Compatibility and provides most efficient IPU and VPU hardware support on Linux. This solution is recommended for applications that require the use of multiple separate-use displays, one as GUI touch panel and the other for the video screen, for example.
- i.MX multi framebuffer support with imx-gpu-vivante 6.2.4 galcore driver and openGL ES2.0/3.0 extension
- Qt 5.9.8 LTS and Qt 5.12.1 LTS framework openGL ES 2.0/3.0 support for Multi-FB and (eglfs, linuxfb minimal, offscreen and vnc platform plugins supported) or X11 server (linuxfb, minimal, offscreen, vnc and xcb platform plugins supported)
- Qt 5.9 and Qt 5.12 framework for Wayland/Weston GUI framework
- Xorg server 1.19.3 with xf86-video-imx-vivante 6.2.4 driver and vivante DRM support (for X11 images only)
Demo and Pre-build Images
LinRT proposes demonstration images for each BSP version, with limited features for testing and full development images ready to go with SDK for Phytec Mira i.MX6 SBC and new Phytec Polaris i.MX8M SBC SDKs for Pre-built image are provided with platform devicetree sources to give the possibility to rebuild it with your adaptations and own driver’s devicetree driver entries.
Available demo Images :
- LinRT full multimedia qt5 demo image
- LinRT X11 full multimedia qt5 demo image
Available Pre-build Images :
- LinRT headless tiny image
- LinRT tiny qt5 image
- LinRT tiny video capture image
- LinRT full multimedia image
- LinRT video capture image
- LinRT full multimedia Qt 5 image
- LinRT Wayland/Weston full multimedia Qt 5 image
- LinRT X11 full multimedia Qt 5 image
- LinRT X11/Sato full multimedia Qt 5 image
- LinRT HTML5 image
- LinRT X11 HTML5 image
- LinRT Debian 9 “Stretch” image (only with Mainline BSP)
Software Development Kit and IDE support
LinRT Yocto SDKs are fully designed for Linux userland and kernel drivers developers, with complete cross-debugging and validation tools solution compatible with eclipse and Qt Creator IDE. The LinRT SDKs are built by collecting all development packages from Yocto’s recipes used for building the runtime Linux image, to have all necessary headers and libraries for your application development project.
- Yocto SDK GNU GCC version 7.2 and Linux headers
- Yocto Qt 5 LTS SDK with qmake spec environment for Yocto SDK toolchain and Device Kit
- OpenCV 3.3 C/C++ SDK libraries for NXP i.MX6 and i.MX8M
- Xenomai development packages and xeno-config tools for GNU C/C++ flags and build options
- NXP Kinetis IDE support for i.Mx7 RTOS applications with JTAG debug for M4 core
Multimedia and Video Capture Support
LinRT Yocto BSP provides, with full multimedia images, gstreamer-1.0 with hardware codecs and VPU support, H264 and MPEG4 encoder/decoder. For video capture on i.MX processor, LinRT propose two solutions, with IPUv3 imx capture API, compatible with FSL Community BSP or with IPU and video4linux capture API from mainline Linux Kernel 4.14.
- Audio SDL2 with Hardware Codec Support
- Gstreamer-1.0 imx with Hardware codec support (GPU/VPU)
- Qt Multimedia Libraries
- Video4Linux with full hardware VPU encoder/decoder support (not available with Mainline BSP version)
- Video capture with Linux media capture API for i.MX from Linux kernel 4.14 (with Mainline BSP version only)
- OpenCV 3.3 image processing framework with GPU and VPU support for i.MX6/i.MX8
HTML5 Web solution
LinRT HTML5 solution is based on Qt 5.9 LTS QWebEngine Framework, itself based on Chromium version 56 with additional security fixes from newer versions, and openGL ES 2.0 support for i.MX6/i.MX8 vivante GPUs. LinRT Yocto HTML5 image embeds a Node.JS server with MRRA and UPM libraries with specific platform hardware support, and offer HTTP, REST and Websocket compatible APIs for developers.
- NodeJS 8.4
- MRRA and UPM libraries for i.MX6 phyCORE and phyFLEX SMOs
- Qt QWebEngine HTML5 render with GPU WebGL support.
- Full Chromium Web browser for X11 server with vivante GPU support
LinRT Yocto BSPs with Real-Time extension for i.MX, Rockchip and x86 processors
LinRT Yocto BSPs are available in 5 deliveries, depending on the latency requirement level expected by the application. LinRT provides Oxygen and Mercury BSPs with PREEMPT-RT to adapt standard Linux kernel API to be determinist or for Cobalt add Xenomai 3.0 extension to offer RTDM drivers and a POSIX real-time runtime for most demanding applications.
LinRT Mercury Xenomai API with VxWorks® or pSOS® emulator could be a solution to port real-time application on Linux embedded systems too.
- Helium BSP (for i.MX only) : Linux 4.9 fscl-imx and Linux 4.14 fscl-imx Server, Desktop or Low Latency Preempt Scheduling
- Mainline BSP : Linux 4.14 mainline kernel Server, Desktop or Low Latency Preempt Scheduling
- Oxygen BSP : Linux 4.14-rt mainline kernel with determinist PREEMPT-RT patch
- Mercury BSP : Linux 4.14-rt mainline kernel with PREEMPT-RT patch and Xenomai 3.0 Mercury Real Time library framework and WxWorks / pSOS emulators
- Cobalt BSP : Linux 4.14-ipipe kernel with IPIPE and Xenomai 3.0 Cobalt Hard Real-Time extension with POSIX API
Mainline LinRT BSP with DRM/KMS support for i.MX, Rockchip and x86 processors
LinRT Mainline BSP with standard Linux Kernel 4.14 LTS, is based on lastest Yocto Sumo 2.5. It is oriented for using DRM/KMS API compatible, not fully compatible with hardware IUP and VPU i.MX features and NXP API library usage. This solutions is mandatory for LinRT’s Debian 9 distribution, recommended for dual head LVDS displays and for video capture applications with standard Video4Linux Camera sensor support for example.
- Linux mainline kernel 4.14 DRM framebuffer Helper
- Linux mainline kernel 4.14 Video Media Capture for i.MX platform
- Qt 5.11 framework with KMS/DRM support and galcore openGL ES 2.0/3.0 driver
- Xorg server 1.19.3 with xf86-video-armada and Linux mainline kernel Etnaviv DRM support (for X11 images only)
- Qt 5.11 framework for X11 server with DRM/Mesa 2D openGL support (for X11 images only)
- Web Browser Chromium X11 66 revision for X11 or Chromium Ozone 64 revision for Wayland
LinRT Network stacks addon
LinRT Yocto BSP is designed to addon wire and wireless communication stacks for connected devices and industrial applications. With PREEMPT-RT, LinRT Oxygen and Mercury BSPs propose low-latency network support for applications. With Xenomai extension and RTDM drivers, LinRT Cobalt BSP provides a real-time solution for field bus as CANopen nodes and Powerlink equipment.
- C++ Qt 5 framework with QtCANbus, QtSerialPort and QtSerialBus with Modbus RTU and TCP/IP support.
- CANopen stack
- RTnet real-time network stack and drivers for Cobalt LinRT BSP
- Powerlink drivers and stack
- EtherCAT drivers and stack
- BACnet stack
- IEEE1588 PPT drivers and stack