Understanding the Structure of a Linux Kernel Device Driver
Offered By: Linux Foundation via YouTube
Course Description
Overview
Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore the fundamental structure of Linux kernel device drivers in this comprehensive 59-minute talk by Sergio Prado from Toradex. Delve into the concept of device drivers as abstractions, focusing on char drivers and their implementation as file abstractions. Learn how to communicate with hardware through memory-mapped I/O and examine a practical LED driver example. Discover the advantages of the driver model and various frameworks, including the LEDS framework. Investigate bus systems, power management, and device registration processes, with a particular emphasis on I2C and platform buses. Gain insights into the flexible nature of Linux kernel device drivers and their role in abstracting hardware complexities for efficient system management.
Syllabus
Intro
ABOUT THE TALK
AGENDA
WHAT ARE DEVICE DRIVERS?
DEVICE DRIVER IS AN ABSTRACTION
CHAR DRIVER: A SIMPLE ABSTRACTION
CHAR DRIVER AS A FILE ABSTRACTION
IMPLEMENTING A CHAR DRIVER
TALKING TO THE HARDWARE
MEMORY-MAPPED 1/0
TALKING TO A MMIO DEVICE
LED DRIVER
THE DRIVER MODEL
FRAMEWORKS
USING THE LEDS FRAMEWORK
ADVANTAGES
BUSES AND POWER MANAGEMENT
12C BUS
PLATFORM BUS
REGISTERING A DEVICE
A FLEXIBLE MODEL (cont.)
Taught by
Linux Foundation
Tags
Related Courses
Operating Systems TechnologiesCity College of San Francisco via California Community Colleges System Operating Systems: IO Systems
Codecademy Linux Device Drivers Development Course for Beginners
freeCodeCamp MD-100 Troubleshoot hardware and drivers
Microsoft via Microsoft Learn Linux kernel Module and driver Programming for x86
Udemy