Linux Display Driver Training

DRM | KMS | Framebuffer | Android & Automotive Display Stack

DRM / KMS MIPI-DSI HDMI Wayland Android Display HAL

Module 1 – Display Subsystem Fundamentals

  • Display pipeline overview
  • Pixel formats & color spaces
  • Resolution, refresh rate & timing
  • Display hardware blocks

Module 2 – Linux Graphics Architecture

  • Framebuffer vs DRM
  • DRM subsystem overview
  • GEM & buffer management
  • KMS architecture

Module 3 – DRM Driver Development

  • DRM core & helpers
  • CRTC, encoder, connector
  • Plane & atomic modesetting
  • Interrupt handling

Module 4 – Display Interfaces

  • MIPI-DSI architecture
  • LVDS & eDP
  • HDMI & DisplayPort
  • Panel drivers & DT binding

Module 5 – Device Tree & BSP Integration

  • Display DT nodes
  • Clock, reset & PHY configuration
  • Power domains
  • Regulator & GPIO control

Module 6 – Userspace Graphics Stack

  • libdrm & modetest
  • Weston & Wayland compositor
  • X11 vs Wayland
  • Performance debugging

Module 7 – Android Display Stack

  • Android graphics architecture
  • SurfaceFlinger
  • Hardware Composer (HWC)
  • Gralloc & buffer queues

Module 8 – Automotive Display

  • Cluster & IVI displays
  • Multi-display pipelines
  • Safety considerations
  • ASIL & display redundancy

Module 9 – Debugging & Optimization

  • DRM debugfs
  • Tracing & profiling
  • VSync & tearing issues
  • Memory bandwidth optimization

Capstone – Real Hardware Projects

  • Bring-up of MIPI-DSI panel
  • Custom DRM driver integration
  • Wayland compositor testing
  • Android display bring-up