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
Linux kernel Module and driver Programming for x86Udemy How to Use USB FTDI D2XX Drivers for Computer I/O Applications
Kevin Darrah via YouTube NuttX for Embedded Linux Developers
Linux Foundation via YouTube A Dive into Zephyr Device Driver Model
Linux Foundation via YouTube An Introduction to EdgeX Foundry
Linux Foundation via YouTube