Electrical · Course

Linux Driver Development

Learn all about Linux Device Driver Development.

Duration
12 weeks
Content
19 hours
Projects
2
Mode
Online
Overview

What you'll
be able to do.

  • This course covers the various features of the Linux kernel and the process of implementing these features on embedded targets like BeagleBone Black.
  • During the coursework, the learners are exposed to:
    • Various steps involved in writing, compilation, and installation of the Linux kernel module using Ubuntu OS.
    • Embedded Linux for BeagleBone Black.
    • Process of interfacing sensors to the BeagleBone Black.
    • Different subsystems of the kernel, such as I2C, GPIO, and interrupt handling.
  • They are also exposed to the modern trends and standard practices being followed in the industry right now.
  • After completing this program, the students will be able to pursue a career in semiconductor manufacturing companies, automotive companies, and companies that manufacture consumer appliances.
Tools you'll use
Embedded Linux
Curriculum

12 modules,
built with industry.

  1. 01Linux Driver Development12 modules
    1. IntroductionW01
      • Introduction to Linux
      • Getting the Kernel Source
      • Kernel Configuration
      • Kernel Building
      • Kernel Installation
      • Kernel Upgradation
    2. Linux Kernel ModuleW02
      • Application Vs Kernel Module
      • Hello World Module
      • Compilation - In-tree and out-tree
      • KConfig Framework
      • Loading and Unloading Module
      • Module Parameters
    3. Character Driver W03
      • Major and Minor Numbers
      • Data Structures
      • Char Driver Registration
      • File Operations - Open, Release, Read, and Write
      • Testing with User Space Application
    4. Debugging TechniquesW04
      • Debug by Printing
      • Debug by Querying
      • Debug by Watching
      • System Faults
    5. Concurrency and Race ConditionW05
      • Concurrency
      • Semaphores and Mutex
      • Completions
      • Spinlocks
      • Alternatives to Locking
    6. Advanced Character DriverW06
      • Ioctl
      • Blocking I/O
      • Poll
      • Asynchronous Notification
      • Seeking a Device
      • Access Control on Device File
    7. Timers and MemoriesW07
      • Jiffies
      • Software Timer
      • Workqueues
      • Tasklets
      • Memories
      • Kmalloc and kzalloc
      • devm_kzalloc
    8. BeagleBone BringupW08
      • Cross Compiler
      • Buildroot Setup
      • Uboot - Environmental Variables
      • Parameter Passing to Kernel
      • SD Card and Nand Flash Booting
    9. Platform Devices - I2C InterfacingW09
      • Platform Devices and Drivers
      • Device Tree
      • I2C Client Drivers
      • Misc Subsystem
      • Interfacing with MPU6050 Sensor
    10. Interrupt HandlerW10
      • Communicating with Hardware
        • Using I/O Ports
        • Using I/O Memory
      • Writing the BBB UART Driver
      • Interrupt Handlers
      • Top and Bottom Halves
      • Writing the BBB UART Interrupt Handler
    11. Sysfs and GPIO InterfacingW11
      • Device Model - Kobjects and Ksets
      • Sysfs - Creation and different attributes
      • GPIO Subsystem
        • Legacy Integer-based
        • Descriptor based on Device Tree
      • GPIO and Sysfs
      • Example Code – Led Interfacing to BBB
    12. BeagleBone Network ApplicationW12
      • Network Application
      • HTTP Server
      • Database - Mysql
Industry projects

2 projects
you'll ship.

Our projects are designed by experts in the industry to reflect industry standards. By working through our projects, Learners will gain a practical understanding of what they will take on at a larger-scale in the industry. In total, there are 2 Projects that are available in this program.

Develop a Full-Featured Character Driver as a Loaded Module

Develop a Full-Featured Character Driver as a Loaded Module

In this project, the students will be developing a full-featured character driver as a loaded module. The module should be added to the kernel configuration Kconfig build system wi…

Design and Development of a Web-based Temperature Control System using BeagleBone Black

Design and Development of a Web-based Temperature Control System using BeagleBone Black

In this project, the learners will design and develop a web-based temperature control system using the BeagleBone Black. The students will submit a complete, deployable embedded Io…

Fee

One fee.
Everything included.

Become job ready with our comprehensive industry focused curriculum for freshers & early career professionals

Premium
₹40,000
Inclusive of all charges
  • 1 Year Access
  • Personalized Page
  • Live Individual & Group Sessions
  • Personalized & Hands-On
  • Job-Oriented Industry Relevant Curriculum
Check eligibility →
Next step

Not sure it's
the right fit?

A counsellor will walk you through the syllabus, projects and fee options — and tell you honestly if another course suits you better.

Get the syllabus + a call back

We'll email the full syllabus and call within one working day.

By submitting you agree to our Terms and Privacy Policy.

Call usEnquire
Talk to a career counsellor

Talk to a career counsellor

Free 20-minute call. We'll map the right course to where you want to work.

By submitting you agree to our Terms and Privacy Policy.