Linux Device Driver Development For Beginners & Intermediates

Linux Device Driver Development from Ground-UP

Linux Device Driver Training using UDOO-NEO platform and NEEVEE Peripheral Shield with rich set of peripherals

Course focus on basic of linux kernel module, and then character drivers development, platform / miscellaneous driver development. Then it also used to explore General Purpose Input / Output Driver with Interrupt implementation, Inter integrated circuit, serial peripheral interface, industrial IO driver frameworks. Also provides hands on driver development for peripherals like light sensor, temperature / humidity sensor, LCD Display and etc.

Course Outline

  • Kernel Module Fundamentals, Building Kernel from source
  • Hello Linux Kernel Module, Module Utilities
  • Printk function, Module arguments, dependecies
  • Character Driver, Device Number, Driver Registration
  • File operations structure implementation and linking
  • Simple Character Driver Test application implementation
  • Linux Concurrency, Handling with spinlocks
  • GPIO based simple character driver implementation
  • Linux Sysfs, GPIO access using linux sysfs interface
  • Implementation of Output pins with LED Driver Framework
  • Implementation of Input pins with key input framework
  • Interrupt Management, Registration and Handling
  • Bottom Half Techniques, Workqueue, Tasklets, etc
  • I2C Fundamentals, Linux I2C Driver Framework
  • MMA8541 Accelerometer Sensor Driver Implementation
  • RTC Driver Framework and Driver Implementation
  • SPI Fundamentals, Linux SPI Driver Framework
  • MAX7219, 8 Digit LED Driver Access Implementation
  • Liquid Crystal Display (LCD) Access Implementation
  • Linux IIO Driver Framework and Functional APIs
  • Potentiometer Resistance Access Implementation
  • Integration of potentiometer as a Linux IIO Driver
  • DAC Driver Access and IIO Driver Implementation
  • Linux Input Driver Framework and Functional APIs
  • Keypad controller driver access implementation
  • Integration of Keypad access into Input Driver

Course Schedule

# Session Topics Theory Lab
1 Linux Kernel Module Fundamentals 2 2
2 Linux Character Driver, Concurrency 2 2
3 Linux GPIO Framework / Interrupt Mgmt 2 2
4 Linux I2C Framework and Driver Implementation 2 2
5 Linux SPI Framework and Driver Implementation 2 2
6 Linux IIO Framework and Driver Implementation 2 2
7 Linux Input Framework and Driver Implementation 2 2
8 Integrated Project 2 2
Total Hours 16 16

0

Happy Students

0

Our Courses

0

Subscribers

0

Views

Latest Blogs

Nordic nRF52 Development Kit – Measuring Temperature and Humidity using Bluetooth Low Energy and integrating with Environment Sensing Service.

Read more

This session provides a brief introduction about embedded linux and its various components like Universal Bootloader, Linux Kernel and Root File System.

Read more

Brief introduction about the U-Boot loader, its directory sructure and its usage / related information. It also focuses u-boot boot start location and booting sequence as well.

Read more