Embedded Linux Summer School
This summer schools aims to be gentle introduction into Linux Embedded development using i.MX8 family boards as a vehicle.
What is this summer school about:
learn about the Linux kernel development environment
get hands on experience with real hardware using an NXP i.MX8 board
create a Linux kernel driver for a simple device connected on a standard bus
Team
RSVP
If you have an interest in embedded systems and low level programming please fill in this form
Schedule
Location:
Date | Time | Lab name |
July, 8 | 17:00 - 20:00 | Introducation |
July, 9 | 17:00 - 20:00 | “Hello World” |
July, 10 | 17:00 - 20:00 | Device Tree |
July, 11 | 17:00 - 20:00 | Device Drivers |
Overview
There will be four session organized around hands on activities that will take up to 3 hours. Each session will contain a theoretical part (hour) and a practical lab (two hours).
Introduction to Embedded Linux kernel development
setup development environment (cross compiler toolchain)
compile Linux kernel and modules on arm64
build system and configuration options
boot the i.MX8 board
Basics of writing a Linux kernel module
create a simple “hello world” module
learn about printk & friends
userspace vs kernelspace interface
hack on a skeleton driver
Basics of Device tree
learn how hardware is described in the ARM world
learn how to create a device tree node and associated it with a Linux driver
learn about standard embedded busses
Hardware application
learn how to read hardware specs
learn about Linux kernel subsystems and coding patterns
have fun and create a driver for a real hardware device