1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
$ sudo dnf install mesa-libgbm-devel libdrm-devel
$ pkg-config --cflags --libs egl gbm libdrm
-I/usr/include/libdrm -lEGL -lgbm -ldrm
+--------- DRM device --------------+
/ \
DRM fb => crtc => encoder => connector => display
\
\ multiple
planes
* Framebuffer
- Memory information such as width, height, depth, bpp, pixel format,..
* CRTC
- Mode information, resolution, depth, polarity, porch, refresh rate,..
- Information of the buffer region displayed.
- Change current framebuffer to new one.
* Encoder
- Take the digitial bit-stream from the CRTC
- Convert to appropriate analog levels for transmission across the connector to the monitor.
* Connector
- Provide the appropriate physical plugs such as HDMI, DVI-D, VGA, S-Video,..
|