Home → Linux Device Driver TutorialsLinux Device Driver TutorialsLinux Device Driver Tutorials Device Driver 1 - IntroductionDevice Driver 2 - First DriverDevice Driver 3 - Passing ArgumentsDevice Driver 4 - Major & Minor NumberDevice Driver 5 - Creating Device FileDevice Driver 6 - File OperationsDevice Driver 7 - Real Device DriverDevice Driver 8 - IOCTL TutorialDevice Driver 9 - Procfs TutorialDevice Driver 10 - Waitqueue TutorialDevice Driver 11 - SysFS TutorialDevice Driver 12 - Interrupts TutorialDevice Driver 13 - Interrupt ProgrammingDevice Driver 14 - Workqueue (Static Method)Device Driver 15 - Workqueue (Dynamic Method)Device Driver 16 - Own WorkqueueDevice Driver 17 - Linked List 1Device Driver 18 - Linked List 2Device Driver 19 - Kernel ThreadDevice Driver 20 - Tasklet (Static Method)Device Driver 21 - Tasklet (Dynamic Method)Device Driver 22 - Mutex TutorialDevice Driver 23 - Spinlock Tutorial 1Device Driver 24 - Spinlock Part 2 (Read/Write Spinlock)Device Driver 25 - Sending SignalsDevice Driver 26 - Kernel Timer TutorialDevice Driver 27 -High Resolution Timer TutorialDevice Driver 28 - Completion TutorialDevice Driver 29 - EXPORT_SYMBOLDevice Driver 30 - Atomic Variables TutorialDevice Driver 31 – Seqlock Device Driver 32 – Misc Device DriverDevice Driver 33 – USB Device Driver BasicsLinux Device Driver 34 – USB Device Driver Example ProgramDevice Driver 35 – GPIO Driver BasicDevice Driver 36 – GPIO InterruptDevice Driver 37 – I2C Linux Device DriverDevice Driver 38 – Dummy I2C Bus DriverLinux Device Driver Part 39 – Real I2C Bus DriverDevice Driver 40 – I2C Bus Driver using I2C-GPIODevice Driver 41 – SSD1306 I2C Linux Device Driver