Upskill Embedded Linux Porting

Embedded Linux workshop provides you all the basic knowledge to build and bring up Linux on ARM Board. Toolchain, Bootloader, Kernel, RootFS will not be puzzles for you after attending this workshop.

Who Should Attend :

Good C Programmers seeking a career in the world of Embedded Linux.
Working Professionals from Microcontroller background, middleware C/C++.
Students seeking a career in Embedded Systems & Linux domain.

What will Be Outcome Of Training :

 Participant will be ready to do small embedded projects based on
   Embedded Linux.
 Know the toolchain components, building & usage.
 Comfort in porting Bootloader, Kernal, RootFS.
 Comfort in changing Kernal & modifying for custom Hardware.

Syllabus

Embedded Linux workshop provides you all the basic knowledge to build and bring up Linux on ARM Board. Toolchain, Bootloader, Kernel, RootFS will not be puzzles for you after attending this workshop.

Class Notes:

 Linux Porting Class Notes

Hardware

This course enables the students to work on RuggedBoard-i.MX 6UL. Other single-board computers are available by special request. Each participant is also encouraged to bring their own hardware, to use with lab exercises as time permits.

RuggedBoard-i.MX 6UL

imx6ul
imx6ul
  • Learn through Practical’s

  • Work on Latest ARM Core like Cortex A5/A8/A9

  • Real World Examples and Projects

  • Assured Post Training Support

  • Unlimited Access to the Hardware Boards for Practical’s

  • Training Tutorials & data available online

2. Linux Introduction & Installation

  •  Basic Commands

  •  Dir & File Command

Training Highlights

1. Introduction, Setup & Hardware

  • Introduction to Embedded Linux

  • ARM Processor Basics & Families

  • ARM Board Details and Schematic Overview

  • Boot Process

  • Host PC Setup for eLinux Development

2. Linux Introduction & Installation

  •  Basic Commands

  •  Dir & File Command

2. Toolchain & Hardware Practical’s

  • Board Boot Options

  • Flashing Bootloader & Linux Kernel on Board

  • Setting up TFT and Running Application on Board

  • Toolchain & its components  How to build toolchain

3. Bootloader U-Boot

  • Introduction to Bootloader

  • Primary Bootloader ( TI X-Loader )

  • Bootloader Commands and their usage

4. U-Boot Porting

  • Bootloader Source Code Structure

  • Compiling Bootloader

  • How to port Bootloader on ARM Based Hardware

  • Patching Bootloader

Embedded Linux Porting

5. Customizing Bootloader

  • Modifying Bootloader for new feature

  • Modifying Bootloader to support new device

  • Command Line Arguments & ATAG

  • Booting with SD Card

  • Setting up NFS Server

  • Booting with NFS Server

  • Linux Kernel Compilation

6. Linux Kernel

  • Introduction to Linux Kernel Arch

  • Kernel Dir Structure

  • Kernel Layers H/W dependent and independent ( BSP )

  • Kernel Build System ( KConfig )

7. Kernel Porting & Compilation

  • How to configure and compile for ARM Hardware

  • Type of kernel images ( vmlinux, zImage, uImage )

  • Kernel initialization process

  • How to port Kernel on New ARM Hardware

8. Kernel Modification

  • How to modify the Kernel code

  • How to integrate new driver/module in the kernel image

  • Building static and dynamic kernel modules

9. Root File System

  • Components of Roofs

  • Types of Roofs

  • Different types of Flash Device ( NOR / NAND )

  • Building Roofs from scratch and using Build System ( Buildroot )

10. Embedded Application Development

  •  How to develop embedded applications

  • Debugging application on target using GDB

  • Running sample Web-Server Application

  • Using Eclipse for embedded application development

Hardware