Advanced Topics in Embedded Linux

Device Drivers and Device Trees

rate limit

Code not recognized.

About this course

In this class, you will explore two Linux concepts that are important to embedded system designers: a device tree and a device driver. You will become familiar with a device tree model, explore Linux device drivers, kernel configuration and build, deploy images on non-volatile memory, and peripheral interfaces. For the hands-on exercises, you will start with a fully functional embedded Linux distribution running on a SAMA5D27-SOM1_EK1 evaluation board with a sensor daughterboard. You will add device driver support for the sensor to the Linux kernel, modify the device tree to add the new device to the board configuration, and write and execute user-space scripts to exercise these new peripherals.

Curriculum

  • Syllabus
  • Introduction
  • Device Tree Source Files
  • Device Tree BLOB
  • Device Drivers
  • LAB1 Add I2C Temp Sensor Driver
  • Preparing for LAB
  • LAB2 Write a Platform Driver
  • LAB3 Custom Driver
  • Summary

About this course

In this class, you will explore two Linux concepts that are important to embedded system designers: a device tree and a device driver. You will become familiar with a device tree model, explore Linux device drivers, kernel configuration and build, deploy images on non-volatile memory, and peripheral interfaces. For the hands-on exercises, you will start with a fully functional embedded Linux distribution running on a SAMA5D27-SOM1_EK1 evaluation board with a sensor daughterboard. You will add device driver support for the sensor to the Linux kernel, modify the device tree to add the new device to the board configuration, and write and execute user-space scripts to exercise these new peripherals.

Curriculum

  • Syllabus
  • Introduction
  • Device Tree Source Files
  • Device Tree BLOB
  • Device Drivers
  • LAB1 Add I2C Temp Sensor Driver
  • Preparing for LAB
  • LAB2 Write a Platform Driver
  • LAB3 Custom Driver
  • Summary