User Tools

Site Tools


gsoc:2024-gsoc-iio-driver

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
gsoc:2024-gsoc-iio-driver [2024/02/08 05:54]
marcelosc Better formatting, proposal tips, example of previous projects
gsoc:2024-gsoc-iio-driver [2024/03/20 04:52] (current)
marcelosc Add FAQ
Line 54: Line 54:
   * [[https://​git.kernel.org/​pub/​scm/​linux/​kernel/​git/​torvalds/​linux.git/​tree/​drivers/​iio/​adc/​ad7292.c|drivers/​iio/​adc/​ad7292.c]]   * [[https://​git.kernel.org/​pub/​scm/​linux/​kernel/​git/​torvalds/​linux.git/​tree/​drivers/​iio/​adc/​ad7292.c|drivers/​iio/​adc/​ad7292.c]]
  
 +
 +===== Frequently Asked Questions (FAQ) =====
 +
 +**Question:​** Will I have to buy the hardware (Raspberry Pi, evaluation board) for this project?
 +
 +**Answer**: No, the hardware will be provided by Analog Devices. You don’t have to worry about this aspect.
 +
 +**Question:​** Are there any prerequisites for this project?
 +
 +**Answer:** No, there are no hard prerequisites for participating in this project. However, it is expected that applicants be familiar with
 +the C programming language, know how to use Linux shell command line interfaces, and understand elementary concepts of operating systems such as
 +files, processes, and system call interface. Previous experience with Linux kernel development is not required although it is a plus for
 +applicants who have it.
 +
 +**Question:​** I don`t know much about IIO. Where can I learn more about IIO? How can I get started with Linux kernel development for the IIO subsystem?
 +
 +**Answer:** Aside from the presentations about IIO, you can follow the ADI instructions on the 
 +[[https://​wiki.analog.com/​resources/​tools-software/​linux-build/​generic/​raspberrypi|Building for Raspberry PI]] page or the [[https://​www.raspberrypi.com/​documentation/​computers/​linux_kernel.html#​cross-compiling-the-kernel|official Raspberry Pi]] ones (using ADI repository and defconfig file).
 +
 +The Linux Foundation offers a free introductory course for kernel development:​
 +[[https://​training.linuxfoundation.org/​training/​a-beginners-guide-to-linux-kernel-development-lfd103/​|A Beginner’s Guide to Linux Kernel Development (LFD103)]]
 +
 +The [[https://​kernelnewbies.org/​Linux_Kernel_Newbies|Kernel Newbies]] website contains extensive material about Linux kernel development,​ including an 
 +[[https://​kernelnewbies.org/​IIO_tasks|IIO task]] page.
 +
 +One can also find many kernel development tutorials on the Internet.
 +For IIO development,​ I suggest some of FLUSP'​s tutorials [[https://​flusp.ime.usp.br/​kernel/​qemu-libvirt-setup/​|1]],​ [[https://​flusp.ime.usp.br/​kernel/​build-linux-for-arm/​|2]],​ [[https://​flusp.ime.usp.br/​kernel/​modules-intro/​|3]],​ [[https://​flusp.ime.usp.br/​iio/​iio-dummy-anatomy/​|4]],​ [[https://​flusp.ime.usp.br/​iio/​experiment-one-iio-dummy/​|5]].
 +
 +**Question:​** Is there any specific Linux distribution or patch to use for Linux kernel IIO development?​
 +
 +**Answer:** No, there is no specific distro or kernel version required for IIO development. Any distro should work.
 +However, for testing on Raspberry Pi, one often uses a kernel that includes patches for the Raspberry Pi platform
 +(such as the ADI kernel or the Raspberry Pi kernel). Kernels that don`t include those patches might not
 +run on a Raspberry Pi board although may be used for testing in emulated environments.
 +
 +
 +**Question:​** Is previous contributing to the Linux kernel a requirement for accepting a candidate?
 +
 +**Answer:** No, although having a history of contribution often provides more visibility to a candidate.
  
 ===== Contact ===== ===== Contact =====
gsoc/2024-gsoc-iio-driver.txt · Last modified: 2024/03/20 04:52 by marcelosc