summaryrefslogtreecommitdiff
path: root/README.md
blob: 211f21c09a489414bdded4d979b0c5037915e96b (plain)
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,..