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