How to Avoid Writing Device Drivers for Embedded Linux
Offered By: Linux Foundation via YouTube
Course Description
Overview
Discover how to avoid writing device drivers for embedded Linux in this informative conference talk by Chris Simmonds. Learn about ready-made drivers for common interfaces and explore practical examples using GPIO, PWM, and I2C subsystems. Gain insights into writing user-space code to control hardware from application environments using C or C++. Watch live demonstrations of each category and benefit from Simmonds' extensive experience in designing and building open-source embedded systems. Explore topics such as the conventional device driver model, application interactions with device drivers, device trees, userspace drivers, and specific interfaces like gpiolib, gpio-cdev, and i2c-dev. Understand how to export and manipulate GPIO pins, work with PWM for LED brightness control, and communicate with I2C devices like light sensors.
Syllabus
Intro
About Chris Simmonds
Conventional device driver model
How applications interact device drivers
A note about device trees
GPIO: General Purpose Input/Output
Two userspace drivers!
The gpiolib systs interface
Inside a gplochip
Exporting a GPIO pin
Inputs and outputs
Interrupts
The gpio-cdev interface
gpio-cdev example 22
PWM: Pulse-Width Modulation
The PWM systs interface
Exporting a PWM
PWM example
12C: the Inter IC bus
The 12c-dev driver
Detecting 12c slaves using cdetect
12C code example - light sensor, addr 0x39
Other examples
What are you missing?
Taught by
Linux Foundation
Tags
Related Courses
UNSW Computing 1 - The Art of ProgrammingOpenLearning C++ For C Programmers, Part A
University of California, Santa Cruz via Coursera Beginning Game Programming with C#
University of Colorado System via Coursera Introduction to Computing 计算概论A
Peking University via Coursera Comprendre les Microcontroleurs
École Polytechnique Fédérale de Lausanne via Coursera