Hi, my name is Marcelo, I’m a student at University of São Paulo, member of FLUSP and HLUSP students group, and Google Summer of Code (GSoC) student of 2019. Today, I would like to share some experience I’ve aquired throughout the Linux Foundation GSoC project on Analog Devices AD7292 device driver. The work done during the first 3 months of project can be seen here: Get the code. I also would like to thank my mentors: Dragos Bogdan, Stefan Popa, and Alexandru Ardelean, who have been providing me guidance from long before the GSoC program has started.
With this series of tutorials I intend to provide a guide to introduce newcommers to the Industrial I/O (IIO) subsystem. My aproach will be preaty much practical. Starting with pre-development steps such as clonning the development repository, building the Linux kernel, installing helpfull development tools, to device tree settings and IIO specific functionality. To ilustrate the steps, I’ll use AD7292 driver as example. To the end of this series of tutorials, a basic functional IIO driver will have been created from scratch.
The following tutorials are listed such that it should make more sense to follow them from the top to the bottom most one. Hope they might be useful.
Raspberry Pi kernel compilation
This tutorial goes through most of the steps needed to build up Linux kernel images for Raspberry Pi.
Useful tools (coming soon)
Simple IIO driver
This tutorial gives a brief introduction to the Industrial I/O (IIO) subsystem and shows how to create a simple IIO device driver from scratch.
Device trees (coming soon)
Device tree overlays (coming soon)
IIO ADC channels (coming soon)
Voltage regulator (coming soon)
SPI read (coming soon)
If you find any typo or mistake in these tutorials please, send me an e-mail (marcelo.schmitt@usp.br) and I’ll be happy to update them with your suggestions. Any feedback is welcome.