Getting pixels on screen on Linux: introduction to Kernel Mode Setting
summary
Shows how to get a solid red image on Linux screens by opening /dev/dri/card0, creating dumb buffers with the CREATE_DUMB ioctl, mmaping and filling pixels, importing with DRM_MODE_ADD_FB2, selecting a connector/crtc/plane and applying the change with atomic commits. Demo uses drm-info and a small client (repo linked) and displays a red screen (crtc 45, plane 31); it works but shows visible tearing, so double‑buffering and vblank handling are needed.
AI-written summary · about
chapters (13)
- 0:00Introduction to KMS
- 1:30What is KMS
- 3:53Why use KMS
- 7:04Learning and setup
- 9:15Opening the GPU
- 12:01Working with connectors
- 17:03Frame buffers and formats
- 21:54Allocating and mapping
- 25:10CRTCs and planes
- 30:40Properties and configuration
- 35:36Atomic commits
- 44:05Demo and conclusion
- 48:37Q&A session
related talks
39mNavigating the Linux Graphics Stack
41mWalking Through the Linux-Based Graphics Stack
46mGraphic Testing Without Hardware: Discovering the Power of VKMS!
44mGraphics: A Frame's Journey
40mDemystifying the Embedded Linux Graphics Stack: An Easy Introduction for Beginners
51mAnatomy of an Embedded KMS Driver
45mImproving the Linux Display Stack Reliability
20mLinux Graphics 101
