You are on page 1of 8

STLinux Software development environment

Development environment
The STLinux Development Environment is a comprehensive set of tools and packages for developing Linux-based applications on STs consumer multimedia devices
The software tools are available free of charge and provide an optimized Linux kernel, root le system populated with over 800 packages, enhanced GCC compiler, powerful Linux aware debugger and extensive trace and proling tools, all of which can be accessed through an easy-to-use Integrated Development Environment.

FEATURES
STLinux A Linux kernel, device drivers and a root le system populated with over 800 packages, which have been ported and optimized for STs ARM and ST40 based consumer multimedia devices. STLinux is compatible with higher level driver sets such as STAPI and STKPI drivers for audio/ video and SDK2/Android. STWorkbench An Eclipse-based integrated development environment providing a feature rich C/C++ editor, ARM and ST40 STLinux specic plug-ins to support building, downloading, debugging and managing STLinux systems, plus support for working with SDK2 and Android applications. GNU Development Tools C and C++ compilers, glibc and uclibc runtime libraries and both user and kernel space GDB debuggers. These are enhanced by ST to generate highly optimized code and extended debugging features for STs ARM and ST40 based consumer multimedia devices. ST Micro Connect High performance host-target interface products that support fast code download, robust JTAG debug and a serial relay interface. Two products are available the STMC2 allowing multi-core debugging across an ARM or ST40 core running STLinux and companion cores, and the STMCLite which is a low cost USB to JTAG interface for STLinux application debug only. STM-Probe A powerful tool for the capture of system trace diagnostics from the target. The captured data is then analyzed under STWorkbench to show CPU loading, thread synchronization and inter core communications. OS21 RTOS Micro Toolsets As well as providing free software tools for developing Linux-based applications on the main application processor, ST also provide a set of Micro Toolsets that allow users to develop and debug OS21-based RTOS applications on the companion ST40 and ST200 processor cores. Inter-process communications between host and companion processors is managed by STs Multicom software. Technical Support and Training A comprehensive set of documentation is available online to help get started using the tools, plus application notes, FAQs and direct support to speed up development. A range of technical training courses are also available.

STLInUX DEVElopmEnT EnVIRonmEnT fEATURIng THE STMC2 And STM-PRoBE foR comBInEd dEBUg And TRAcE cApTURE

STLInUX
STLinux provides a Linux kernel, device drivers and a root le system and associated packages, which have been ported and optimized for ARM and ST40 based ST consumer multimedia devices. STLinux is comprised of the following tools and features:
Optimized Linux kernel and Linux kernel device drivers for both common IP and ST proprietary IP Board Support Packages (BSPs) for STs reference boards Linux root le system populated with over 800 optimized packages for ARM and for ST40 to provide a rich workstation-like development 3

environment of tools, libraries, utilities and applications. Almost any package a developer is likely to need is present and this allows the developer to pick the exact subset needed for deployment. The root le system is hosted either over NFS or using a variety of le system types on IDE or SATA HDD, USB mass storage, NOR, NAND or SPI Flash, and others. A BusyBox-based shell and basic utilities is provided for low footprint deployment systems
All software is open source and is available from the www.stlinux.com website

CompIlATIon And PRoJEcT MAnAgEmEnT


STLinux based applications can be written, edited, managed and compiled from the STWorkbench IDE. STWorkbench provides a powerful and congurable set of editing tools, including:
C  /C++ editor C  ontent assist and auto completion O  utline view S  earch C  all and type hierarchy C  ompare

Additionally numerous plug-ins are available to allow interaction with the following software tools:
C  learcase, GIT, SVN source control L  inux mock A  ndroid development kit

Applications are built as projects which are managed under the STWorkbench IDE. These can be easily congured to build an application for a particular ST consumer multimedia device through dedicated project types:
S  TLinux Kernel Project S  TAPI/SDK2 Project O  S21 RTOS Project

The following screenshot shows an STLinux based application being built under STWorkbench.

STLinux based applications are compiled using the GNU GCC cross/native compiler. The GNU C and C++ compiler is provided for both the ARM and ST40 and have been enhanced by ST to generate highly optimized code. Applications can be linked against a full glibc or reduced footprint uclibc C run-time library, with NPTL support. The underlying compilation tools also include a GNU assembler, linker and other binary utilities.

DEBUggIng
The GNU GDB debugger has been customized by ST to provide extended debugging features. GDB can be used to perform Linux kernel and user space debugging, plus concurrent debugging of companion cores. Debugging can be performed using the GDB command line interface or through STWorkbench. STWorkbench can be easily congured to launch the debugger in a number of scenarios:
Boot and debug STLinux kernel Attach and debug an already booted and running STLinux kernel Launch and debug a Linux user application Attach to a running Linux user application Debug bootstrap/loader code from reset Debug a corele Debug companion processors (only possible with STMC2)

Linux kernel and user space debugging is possible on any ST consumer multimedia device using the STMC2 or STMCLite host-target interfaces. STMC2 The STMC2 can also be used for debugging both STLinux-based applications and OS21-based applications running on the companion cores concurrently. The following features are provided:
High bandwidth connection to host computer through either networked 10/100 Mbit/s

Ethernet connection or local USB 1.1 or 2.0 connection


Connects to target boards RS-232 port for data relay Provides system startup, program download, debug and I/O services. Enables concurrent debug of multiple cores in ST consumer multimedia devices LCD and software support package for conguration and administration LVDS connection to target JTAG interface Alternatively LVDS I/O convertors are available to connect to target boards that use a 5

10/20-way connector or a standard MIPI-34 connector STMCLite The STMCLite is a low cost USB-JTAG host-target interface. Unlike the STMC2 is does not support multicore debug. It provides the following features:
Local USB 1.1 or 2.0 connection Connects to target boards RS-232 port for data relay Two variants of the STMCLite are available to connect to a target that use either a 10/20-way

connector or a standard MIPI-34 connector

STWorkbench and the underlying ST enhanced GDB debugger give the user a powerful set of debugging features, allowing users to perform both STLinux user and kernel space debugging, plus concurrent debug of companion cores under the same graphical environment. Debugging features include:
K  ernel space debugging including

debugging kernel modules


U  ser space application debug M  ulticore debug of companion cores (when

the STMC2 is used)


S  TMC Relay, SSH/Telnet Terminals G  DB Console T  hread list D  isplay Registers, Local and Global

variables
S  how CPU load, active processes and

memory usage
P  role application code D  isassembly view P  erformance Counters and

Brach Trace view


C  ode and data breakpoints 6

SYSTEm TRAcE
The STLinux Kernel can be congured to generate a trace of kernel and user events. The trace can be captured either across an NFS or using the STM-Probe. As well as Dynamic Linux System Trace, the STM-Probe can also capture OS21 Trace from companions and Inter-core communications. The combined trace is time stamped by the STM-Probe and can be displayed and analyzed under STWorkbench.

The STM-Probe features:


U  SB connection to host PC C  ongurable storage (up to 2 GBytes) for

trace capture buffering


L  VDS connection to target JTAG/System

Trace port
A  lternatively LVDS I/O convertors are

available to connect to target boards that use a standard MIPI-34 connector

DownloAdIng THE SofTwARE ToolS


The STLinux kernel and associated packages, GNU development tools, STWorkbench and RTOS Micro Toolsets can be downloaded from www.stlinux.com by following the Downloads and Updates link. The website provides full instructions to installing the tools, host system requirements and news on recent updates. STLinux and the GNU development tools are also included in the SDK2 and SDK2 / Android installations.

TEcHnIcAl SUppoRT And TRAInIng


The www.stlinux.com website contains links to online documentation, FAQs and application notes. Technical support for the STLinux distribution is provided primarily by the Bugzilla support database, hosted on the https://bugzilla.stlinux.com website. Users can search the database of existing support requests for relevant information, or submit their own specic support request directly to the STLinux development team. A range of training courses from Developing Linux based applications under STLinux to Working with the OS21 RTOS Micro Toolsets are available from ST and can be requested through your ST FAE or ST Support Centre.
7

STMicroelectronics - November 2012- Printed in United Kingdom - All rights reserved The STMicroelectronics corporate logo is a registered trademark of the STMicroelectronics group of companies All other names are the property of their respective owners

Order code: BRSTLIN1112

For more information on ST products and solutions, visit www.st.com

You might also like