LinuxLink Web Portal FAQ, Help & Docs

Welcome to the LinuxLink Documentation library!

LinuxLink is the Timesys web portal for gaining access to Vigiles - a SCA vulnerability monitoring and patch mitigation tool optimized for embedded, TimeStorm - IDE optimized for Embedded Linux development, Factory - Timesys embedded Linux build system development environment, How to work with Yocto, BFC - on-premise Remote debugging cloud infrastructure tool, TAS - Test Automation infrastructure tool, Support, documentation, and more. The documents in this collection describe most aspects of Timesys tools and topics related to Embedded Linux development.

If you can’t find what you need, please send us feedback so we can improve this page.

Getting Started with LinuxLink

  • Getting Help
    Click the ‘Support’ link at the top of any LinuxLink page to find out how to contact Timesys for help, advice and assistance.
  • Getting Started with LinuxLink
    From managing security notifications to accessing Timesys Git Repos, on this page, you’ll find links to help you navigate through the site and get you on your way to developing your custom embedded Linux based device. You’ll find resources to help you make the most of the Timesys Development Environment and using Timesys tools as well as information to help you manage your LinuxLink Account.
  • Account and Member Administration
    How to manage your account including how to assign and unassign subscriptions and add, remove, or change the members of your account
  • Manage Your LinuxLink User Account
    How to access your LinuxLink user account page from where you can edit your login info, reset your password and generate TimeStorm licenses.
  • FAQ

Vigiles – Security Vulnerability and Patch Notification

  • Vigiles User Guide
    This document is the full Vigiles manual. It covers topics including how to use Vigiles with supported build systems and through the web interface, and covers many vulnerability management concepts.

Repositories

Intro to Timesys Embedded Linux BSP and SDK Build System (Factory)

This section provides links to content that will introduce you to Factory - the Timesys BSP and SDK build system as well as inherent concepts and terminology important for getting the most out of and making the best use of the Timesys Factory Build System. In addition, you’ll find links to documentation that will help you get started with configuring a custom image and booting your board.

  • Timesys Factory Concepts and Terminology
    This document introduces the inherent concepts and terminology important to getting the most out of and making the best use of the Timesys Development Environment Framework.
  • Embedded Linux Development Tutorial
    Linux is the operating system of choice for almost all new embedded device projects today. Linux provides a powerful, flexible kernel and runtime infrastructure that is continuously being improved by the open source community and extended by hardware vendors to support new processors, buses, devices and protocols. This document provides an Introduction to Embedded Linux Development and Building Embedded Systems with Timesys Tools.
  • Creating an Initial Build with the LinuxLink Factory Web UI
    This document will guide you through the steps that will enable you to quickly assemble a proven Linux platform for your project using the cloud-based Factory Web UI.
  • Instructions for Booting Your Board — Timesys Getting Started Guides for Development Boards/Kits
    Select your board from the list to be taken to a document that will guide you through configuring a Linux host system and booting your target board over tftp and nfs.
  • How To Use Desktop Factory on Windows using VirtualBox
    The Timesys Factory is designed to be run from a Linux host. However, not all developers have access to a Linux machine for their work. This guide will show how to host Factory in a VirtualBox virtual machine running Ubuntu Linux.
  • HOWTO Differentiate between LinuxLink Classic (TSRPM_Distributions) and Factory Platforms
    This document discusses how to determine if you are using Factory based LinuxLink or LinuxLink Classic.
  • Factory

    • Factory Host Requirements
      This document describes how to set up your host workstation to use the Timesys Desktop Factory build system.
    • Desktop Factory Getting Started Guide
      This document describes how to get up and running with the Timesys Desktop Factory build system.
    • Desktop Factory Directory Map
      This document describes and illustrates the Timesys Desktop Factory build system directory structure.
    • How do I boot my Factory build output?
      These documents provide specific instructions for booting your target board with the image created by the Timesys Factory.
    • Factory Best Practices
      This page documents the best practices when using Factory by detailing setup, configuration, building and using the output, as well as a cookbook style breakdown of using the functionality provided by the Factory.
    • Desktop Factory HOWTOs
      This page provides detailed How To documents for utilizing some of the more advanced features provided in Desktop Factory as well as integrating customized components (target RFS files, device trees, u-boot source, etc.) into the Factory BSP/SDK build process.
    • Desktop Factory Commands
      This page documents common commands issued during regular use of the Factory from the command line interface. A basic knowledge of these CLI Factory commands can lead to a better understanding of how Factory operates on the various source files and working directories and help prevent unintended data loss.
    • Factory Troubleshooting
      Tips on what to do if things go wrong. Includes some common configuration and environment setup issues and how to resolve them.
    • Factory Architecture
      The Factory implementation combines several community standard (best of breed) components: LinuxKernelConfig (kconfig) and GNU make. FactoryBestPractices has instructions on how to get the Factory.
    • Factory Output
      Describes the directory structure of the Factory build output.
    • Hacking The Factory
      Tips and techniques for customizing the Factory for tasks such as navigating the Factory directory, adding a New Architecture, adding a new Toolchain, adding a new Board, adding a new Kernel and adding a New Package. Also you can find information such as common make variables.
    • Desktop Factory Advice Service
      Timesys provides an "advice" interface which will analyze a Factory configuration, identify possible problems and often suggest a corrective action. This interface provides a place for suggestions or advice when users choose options that are not incorrect, but appear logically inconsistent. This document explains how to use the Advice Service with the Desktop Factory.
    • A Recommended Factory Workflow
      Timesys builds its Linux starting points using the Factory build engine. This same engine is available to LinuxLink subscribers to create their own custom platforms. The engine is very flexible, allowing a myriad of options to accomplish this. The goal of this document is to specify a “recommended” procedure and workflow for using the Factory build engine to develop an Embedded Linux project as a team.
    • Factory FAQ

    HowTo Yocto

    TimeStorm IDE

    TimeStorm is the Timesys IDE for developing applications on your workstation. It includes the Eclipse IDE and Timesys plugins which make it easy to cross compile, run, and debug on the target. It requires that the toolchain created either by the Web Factory, Desktop Factory, or Yocto Project Café be installed on the same workstation where TimeStorm will be used. The Timesys plugins require a license file which is created and downloaded from the Timesys LinuxLink Web site and installed on your workstation. Once your application is debugged to your satisfaction, the Desktop Factory can be configured to build it and include it in the platform.

    HowTo TimeStorm

    Board Farm Cloud and Test Automation Service

    • BFC User Guide
      This User Guide describes how to Deploy and Use On-Premise Board Farm Cloud
    • TAS User Guide
      This User Guide describes how to Develop and Run Automated Tests using BFC.
    • BFC Admin Guide
      This Admin Guide describes how to Setup and Upgrade BFC

    Embedded Linux Development

    HowTo Embedded Linux

    Hack the Kernel

    • How to Build the Linux Kernel
      This document describes how to build the Linux kernel.
    • How to Customize External (your) kernel
      This document describes how to customize your kernel sources (external kernel) using Desktop Factory.
    • How to Modify Device Tree
      The device tree is used to define custom memory layouts, device connections and identification (I2C, SPI-bus, PCI, USB, etc), GPIO routing and assignment and other hardware-related definitions. This document describes the process of modifying device tree sources and building the device tree blob with Desktop Factory.
    • How to Use a Custom Boot Logo
      This document describes how to display a custom logo on the frame buffer of your board as the Linux kernel is booting.
    • How to Use debugfs
      debugfs is a virtual filesystem used to help developers debug drivers and kernel subsystems. This document describes how to use debugfs and add support to a custom driver.
    • How to Use gpiolib
      gpiolib is a framework for gpio pins on a board. It provides a way to control gpio pins in userspace.

    Hack the Root Filesystem (RFS)

    • How to Build Target RFS
      This document discusses how to build and work with the target RFS within Factory.
    • How to Add Applications and Further Customize Target RFS
      This collection of documents describes methods and processes for adding custom applications and files to, and for further customizing, the target RFS.
    • How to Create and Modify initramfs with Factory tools
      An initramfs is a filesystem image that runs directly from RAM. It is packaged as an archive using the cpio tool. The Factory allows you to automate this process and output your RFS as a cpio-archvied initramfs with the selection of a few options.
    • How to Automount USB using mdev
      This document shows how to automount USB using mdev.
    • How to Create JFFS2 Images
      JFFS2 is a file system that was designed to be used on solid-state memory devices (such as NAND or NOR). It performs automatic wear-leveling to increase the life of the chip and is aware of bad-blocks on NAND flash. The typical method for deploying a JFFS2 file system is to create a JFFS2 image, optionally add summary information (for faster mount time) and then burn the image directly to flash using nand_write or flashcp.
    • How to Create YAFFS2 Images
      YAFFS2 is an out-of-tree file system that was designed from the ground up to work with NAND flash, but will also work on other solid-state memory devices, like NOR flash. It performs automatic wear-leveling to increase the life of the chip and can handle bad blocks on NAND flash.
    • How to Use UBIFS
      UBIFS is a file system that acts like LVM with the MTD subsystem. It is supposedly faster than JFFS2, is safe for devices with bad blocks and is overall a super thing to use.
    • How to use SELinux
      This document describes the kernel and RFS configuration to enable SELinux in your custom platform.

    Use Qt and X Applications with Factory

    Use Devices

    • How to Use MTD
      This document discusses how to use Memory Technology Devices (MTD), the Linux Flash subsystem.
    • How to Find NAND Flash Parameters
      This document discusses how to find NAND flash parameters.
    • How to Find NOR Flash Parameters
      This document discusses how to find NOR flash parameters.
    • How to Partition MTD on the Kernel Command Line
      The Memory Technology Device (MTD) interface is a way of abstracting flash devices as if they were normal block devices. Unlike typical block devices, however, these flash devices generally lack a partition table. This document explains how to use kernel command line partitioning to specify the partitioning scheme of a given flash device.
    • How to Use Wireless Networking
      The Linux wireless subsystem is more complex than the standard wired networking. Many drivers are proprietary, and authentication and encryption mechanisms are much more common. This document explains how to use wireless devices to connect to a wireless network.
    • How to Use USB Gadget Ethernet
      The Linux USB gadget subsystem provides a way to leverage existing USB device ports in order to use utilities such as NFS, SSH and FTP by using the g_ether driver. This document explains how to do so.
    • How to Use USB Gadget File Storage
      The g_file_storage driver allows a target embedded device to appear as a USB Mass Storage device to a host system. It allows you to choose either a block device or a backing file to act as the backing storage for this device.
    • How To Disable frame buffer screen blanking
      The virtual console may blank the LCD display on many boards after 10 minutes until a key is hit on a keyboard. This can be disabled by either turning off the frame buffer console or by setting the virtual console KD mode.

    Test Devices

    • How to Test USB Gadget Drivers
      This document discusses two quick tests for USB gadget drivers.
    • How to Test RTC Drivers
      Most people use the RTC to keep track of the system time in hardware. Therefore, it is probably adequate to use the userspace utility hwclock provided by either util-linux or busybox. Note that the util-linux version will test more of the driver than the busybox version, so we recommend using that. It is possible for the busybox version to succeed and the util-linux to fail.

    Use Tools

    • How to Use GDB and GDBServer
      This is a guide to enabling and using GDBServer. It shows how to start GDBServer on your Host machine and usage examples for debugging on the Target.
    • How to use KGDB
      KGDB is a source level debugger for Linux kernel. To make it simpler, KGDB can be regarded as another GDB agent, which resides in the Linux kernel. It is used along with GDB to debug a Linux kernel. GDB can be used to “break in” to the running kernel to inspect memory, variables and look through call stack information similar to what an application developer would use gdb for. It is possible to place breakpoints in kernel code and perform some limited execution stepping
    • How to Use LTP
      LTP is the Linux Test Project. This document covers running the LTP on an embedded board running linux and interpreting the results.
    • How to Use LTTng
      LTTng, the Linux Trace Toolkit Next Generation (LTTng), is a highly efficient full system tracing solution. It is composed of several components to allow tracing of the kernel, of userspace, trace viewing and analysis and trace streaming. LTTng provides an integrated interface for both kernel and user-space tracing. A “tracing” group allows non-root users to control tracing and read the generated traces. It is multi-user aware and allows multiple concurrent tracing sessions.
    • How to Use mpatrol
      This is a starting guide to enabling and using mpatrol. It includes usage examples and a simple tutorial for finding memory leaks.
    • How to Use OProfile
      OProfile is a system-wide profiler for Linux systems, capable of profiling all running code at low overhead. It consists of a kernel driver and a daemon for collecting sample data and several post-profiling tools for turning data into information.
    • How to use Qemu with LinuxLink
      Qemu is an open source machine emulator that can be useful for embedded design and testing. Using LinuxLink tools with Qemu is easy.
    • How to Use Valgrind
      This is a guide for using Valgrind, a suite of tools for debugging and profiling.
    • How to Use the BDI2000
      This is a guide to using the BDI2000 to debug a kernel from the command line.
    • How to Use Lantronix Web Manager
      This document covers using Lantronix Web Manager to upload new firmware to a Lantronix board.
    • How to use SysLink on the DM8148
      SysLink is a set of tools for communicating between the ARM and DSP cores on the DM8148 processor. This guide describes how to enable support for this in Desktop Factory.
    • How to use SysLink on the OMAPL138
      SysLink is a set of tools for communicating between the ARM and DSP cores on the OMAPL138 processor. This guide describes how to enable support for this in Desktop Factory.
    • How to use DVSDK on the OMAPL138
      DVSDK is a set of tools for working with the digital video acceleration on the OMAPL138 processor. This guide describes how to enable support for this in Desktop Factory.
    • How to use TI Graphics SDK on the AM335x
      The TI Graphics SDK is a set of tools for working with the Graphics acceleration on the AM335x processor. This guide describes how to enable support for this in Desktop Factory.
    • How To Use OPKG package management system in Factory
      Factory provides different packages like opkg, rpm which allows customer to build their own package management system. This document explains how to use opkg utility as package manager, create local repositories and install packages in target.

    Setup Boards

    Work With Various Bootloaders

    • AT91 Bootstrap Loader
      The AT91 Bootstrap Loader is a first-stage bootloader for Atmel AT91 chips, such as the AT91SAM9260. It is not capable of booting the kernel on its own but instead loads a secondary bootloader, such as U-Boot. The entire purpose of AT91 Bootstrap is to load another program into memory and configure some of the necessary hardware drivers to aid in this function.
    • How to Build AT91 Bootstrap Loader
      This document shows how to build Atmel's AT91Bootrap Loader from source.
    • AT91RM9200-EK Boot.bin and U-Boot
      This document focuses on booting from Parallel flash.
    • AT91RM9200-EK U-Boot from Dataflash
      We currently have no way to reproduce the steps needed to boot the AT91RM9200-EK from Dataflash. There is an image attached that we were able to pull from a Dataflash card that will load U-Boot from dataflash. This is a good way to recover a bricked board.
    • LogicLoader
      LogicLoader is the proprietary bootloader that Logic puts on all of its LITEKITS. The source code is not available, although it is possible to contact Logic if you need help.
    • RedBoot
      RedBoot is a complete bootstrap environment for embedded systems. Based on the eCos Hardware Abstraction Layer, RedBoot inherits the eCos qualities of reliability, compactness, configurability and portability.
    • U-Boot
      This document discusses U-Boot, the Universal Boot Loader.
    • How to Build U-Boot
      This document shows how to build the U-Boot bootloader from source.
    • How to Build External U-Boot
      This document describes how to build the U-Boot bootloader from (your own) custom sources with Desktop Factory.
    • Grub and Grub2
      This is the documentation of GNU GRUB, the GRand Unified Bootloader.
    • Yamon
      YAMON™ is the ROM monitor used on MIPS Technologies’ development boards. YAMON provides a set of functions callable by application.

    Xilinx Documents

    Building and Executing OpenGL/Qt UI and GStreamer

    Other Documents

    Docs for LinuxLink Classic