Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 

Repository files navigation

📌 Overview This repository contains hands-on implementations of Linux Kernel Modules (LKMs) and Linux Device Drivers, covering fundamental to intermediate driver development concepts in Embedded Linux. The project focuses on understanding the Linux kernel architecture, device model, device tree, synchronization mechanisms, and peripheral subsystems such as GPIO and pinctrl.

🚀 Features Linux Kernel Module (LKM) development and module lifecycle management Character Device Driver implementation Platform Bus, Platform Device, and Platform Driver development Linux Device Tree creation and integration Device Tree node parsing from kernel drivers Device instantiation using Device Tree Device Tree overlays and overlay testing using U-Boot Linux Device Model and Sysfs interface GPIO subsystem driver development Pinctrl subsystem integration Kernel synchronization using Mutexes and Spinlocks Makefile-based kernel module compilation

🛠️ Technologies Used Language: C Operating System: Embedded Linux Kernel Programming: Linux Kernel APIs Tools: GCC, Make, GDB, Git Platforms: ARM-based Embedded Systems (BeagleBone Black)

📌 Skills Demonstrated Embedded Linux • Linux Kernel Programming • Device Drivers • Character Drivers • Platform Drivers • Device Tree • GPIO • Pinctrl • Sysfs • Kernel Synchronization • C Programming

👨‍💻 Author Kunal Sanwlecha Embedded Systems | Linux Driver Development | VLSI Enthusiast

GitHub: kunalsanwlecha/linux_device_driver

About

Collection of Linux kernel modules and device drivers demonstrating character drivers, GPIO interfacing, kernel APIs, synchronization mechanisms, and driver development concepts on embedded Linux systems.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages