About this Event
Build, customize, and debug embedded Linux systems with confidence.
This intensive 5-day program is designed for engineers who want to understand embedded Linux at the system level — from bootloader to kernel and driver development.
This is hands-on training using real embedded hardware.
What You Will Learn
Boot and System Bring-Up
• Embedded Linux boot process• Bootloader customization (U-Boot)• Kernel build and configuration
Linux System Build
• Root filesystem creation using Buildroot• Boot custom embedded Linux
Device Driver Development
• Character driver development• Device Tree integration• Platform driver implementation
Concurrency and Interrupts
• Mutex, semaphore, spinlock• Interrupt handling
DMA and Kernel Debugging
• DMA implementation• Kernel debugging using DebugFS, printk, KGDB• Boot performance optimization
All modules include hands-on exercises.
Who Should Attend
This course is ideal for:
• Embedded Linux Engineers• Firmware Engineers• Device Driver Developers• Embedded Software Engineers
Prerequisites:
Basic Linux knowledgeProgramming experience in C or C++
What You Will Gain
After completing this training, you will be able to:
• Build embedded Linux systems• Develop Linux device drivers• Debug kernel and boot issues• Understand Linux at system level
These are essential skills for embedded product development.
Why Attend Timmins Training Consulting
Trusted by engineers from global companies including Motorola, Qualcomm, and Infineon.
Delivered by experienced embedded Linux practitioners.
HRDC registered and claimable.
Day 1
Session 1: Boot Initialization
Info: Embedded system components
BeagleBone Black boot stages
Default image booting
Exercise:
Set up and boot the board.
Session 2: Buildroot
Info: Linux package configuration
Kernel & U-Boot build
Root filesystem generation
Hands-on:
Build rootfs, kernel, U-Boot
Create JFFS2 image
Enable SSH
Auto-run application via init modification
Day 2
Session 3: Bootloaders
Info: Bootloader design
First-stage bootloader
Custom U-Boot command implementation
Exercise:
Add custom U-Boot command.
Session 4: Linux Kernel
Info: Kernel tasks & configuration
Boot parameters
Kernel build process
Hands-on:
Static driver build
Ramdisk creation
Initramfs boot
Boot custom board
Day 3
Session 5: Character Driver
Info: Major & Minor numbers
Driver registration
IOCTL
Dynamic device file creation
Hands-on:
Write and enhance character driver
Implement IOCTL
Session 6: Devices & Driver Model
Info: Linux device model
Platform devices & drivers
Device Tree Blob (DTB)
Hands-on:
Develop platform driver
Add DTB entry
Build as module & built-in
Test via application
Day 4
Session 7: Synchronization
Info: Atomic operations
Mutex
Semaphores
Spinlocks
Hands-on:
Driver demonstrating Mutex, Semaphore & Spinlocks
Session 8: Interrupt Management
Info: IRQ handling
SoftIRQ
Tasklets
Work queues
Threaded IRQ
Hands-on:
GPIO interrupt driver
UART driver with interrupt handling
Bottom-half buffer handling
Day 5
Session 9: Linux DMA Engine
Info: DMA controllers
DMA APIs
DMA workflow
Exercise:
Enhance UART driver using DMA
Session 10: Kernel Debugging
Info: printk & dynamic debugging
DebugFS
KGDB
Oops analysis
Boot time optimization
Hands-on:
Create DebugFS entry
Measure & optimize boot time
Event Venue & Nearby Stays
Timmins Training Center (100% HRDC Claimable), 1-3-6 Lintang Mayang Pasir 3, Bayan Lepas, Malaysia
MYR 7874.25

