Linux Device Driver Programming With Beaglebone Black (LDD1)

Foundation course on practical Linux device driver programming

Ratings 4.65 / 5.00
Linux Device Driver Programming With Beaglebone Black (LDD1)

What You Will Learn!

  • Fundamentals of Linux kernel module and writing syntax
  • Makefile and LKM build procedure
  • Character device driver implementation
  • Platform bus, Platform device, and platform driver concepts
  • Platform driver implementation
  • Learn device tree from scratch
  • Device tree node syntax, properties of device tree nodes
  • Kernel APIs to process device tree nodes
  • Device instantiation through device tree nodes
  • Device tree overlays and overlays testing via u-boot
  • Kernel synchronization services , mutex , spinlocks usage
  • Linux device model and sysfs
  • Linux GPIO Subsystem
  • Linux pinctrl subsystem

Description

==> This should be your very first course to dive into the exciting world of "Linux device drivers" <==

In this course you will learn ,

  1. Fundamentals Linux kernel module and syntax

  2. Character device driver theory and code implementation

  3. Platform bus, Platform device, and platform driver concepts

  4. Platform driver implementation

  5. Device tree from scratch

  6. Accessing device tree nodes from drivers

  7. Device instantiation through device tree nodes

  8. Device tree properties and node syntax

  9. Device tree overlays

  10. Overlays testing via u-boot

  11. Kernel synchronization services (Mutex, Spinlocks)

  12. Linux device model and sysfs

  13. Linux GPIO subsystem

  14. Linux pinctrl subsystem


Hardware Requirements:

1) For some exercises involving testing of GPIOs, pinctrl, device tree nodes, overlays, you need a board.

In this course, Beaglebone Black board is being used.

2) Mini USB cable to power BBB

3) USB to UART cable for serial connection with BBB

4) Micro SD card 8/16 GB

5) SD card reader

6) 16x2 LCD and 10K potentiometer

7) Jumper wires

8)Bread board


OS Requirements:

32/64 bit Ubuntu 18.04+ LTS


Learning order of FastBit Embedded Brain Academy Courses,

If you are a beginner in the field of embedded systems, then you can take our courses in the below-mentioned order.
This is just a recommendation from the instructor for beginners.

1) Microcontroller Embedded C Programming: absolute beginners(Embedded C)

2) Embedded Systems Programming on ARM Cortex-M3/M4 Processor(ARM Cortex M4 Processor specific)

3) Mastering Microcontroller with Embedded Driver Development(MCU1)

4) Mastering Microcontroller: TIMERS, PWM, CAN, RTC,LOW POWER(MCU2)

5) Mastering Microcontroller: STM32-LTDC, LCD-TFT, LVGL(MCU3)

6) Embedded System Design using UML State Machines(State machine)

7) Mastering RTOS: Hands-on FreeRTOS and STM32Fx with Debugging(RTOS)

8) ARM Cortex M Microcontroller DMA Programming Demystified(DMA)

9) STM32Fx Microcontroller Custom Bootloader Development(Bootloader)

10) Embedded Linux Step by Step using Beaglebone Black(Linux)

11) Linux device driver programming using Beaglebone Black(LDD1)

Who Should Attend!

  • Students/Hobbyists/Professionals interested in exploring Linux device driver programming

TAKE THIS COURSE

Tags

  • Linux Kernel
  • BeagleBone
  • Embedded Linux

Subscribers

14247

Lectures

151

TAKE THIS COURSE



Related Courses