当前位置:网站首页>DRM display framework as I understand it
DRM display framework as I understand it
2022-07-02 05:49:00 【Croxd】
What is? DRM:
DRM The full name is DirectRenderingManager, yes linux A mainstream display framework , Support multi-layer synthesis , Provide unified for user layers API(libdrm), To visit GPU, Achieve unified management . It is to solve the problem of multiple programs on video card Access to collaborative resource usage .DRM It can be simply divided into three modules :
- libdrm: It's a library , Provide general to the upper layer API, It's for all kinds of bottom ioctl To encapsulate , Used for image display and image processing . Of course with drm Of ioctl Or with framebuffer You can also operate the display image .
- GEM: memory management , Mainly responsible for displaying buffer Distribution and release of 、 Sharing and processing of video memory CPU、GPU Memory synchronization
- KMS:Kernel Mode Setting, Used to update the screen and parameter settings , Complete the configuration of the graphics card , And hardware gpu The operation is encapsulated by a layer of interface . Can be abstracted as :Framebuffer、CRTC、Plane、Encoder、Connector Equal module .
DRM Frame diagram :
KMS Frame composition :
- Framebuffer: A memory area , Used to store displayed image data , Both driver and application layers can access , And save the resolution 、 Color pattern (yuv、rgb) Etc .
- Crtc: Display control , As for display timings,resolution Other configuration , Scan read Framebuffer The data of , It's superimposing Plane The content of is transmitted to Encoder. stay vop(Video Output Processor) in , That is to say lcdc controller .
- Plane: and Framebuffer The same is a piece of memory , It is a hardware image layer , An image layer consists of one or more plane form . The superposition of different mobile phone interfaces is this principle . There are three types of plane:
- DRM_PLANE_TYPE_PRIMARY: Main layer , Display the background or image content
- DRM_PLANE_TYPE_OVERLAY: Used to display overlay 、 The zoom
- DRM_PLANE_TYPE_CURSOR: Used to display the mouse
- Encoder: Encoder , Convert the received data into different signals :mipi、edp、vga etc. .
- Connector: Specific external interfaces , Such as edp, hdmi, mipi etc. , Connect to the physical display output device , It stores information about the output device , Such as :EDID、 Video mode, etc .
The general process is that the user fills the displayed data in Framebuffer, And then through libdrm Interface notification VOP equipment ,(crtc)vop Drive will Framebuffer and plane The data is superimposed and then converted into standard LCDC timing sequential , And then through Encoder Translate into concrete mipi、edp、vga Equal signal , To Connector display output .
KMS Frame diagram :
边栏推荐
- Thunder on the ground! Another domestic 5g chip comes out: surpass Huawei and lead the world in performance?
- 2022-2-14 learning xiangniuke project - Section 6 displays login information
- PHP 开发与测试 Webservice(SOAP)-Win
- OLED12864 液晶屏
- GRBL 软件:简单解释的基础知识
- php内类名称与类内方法名相同
- Appnuim environment configuration and basic knowledge
- Basic use of form
- Vscode paste image plugin saves image path settings
- Zzuli:1069 learn from classmate Z
猜你喜欢
记录sentry的踩坑之路
Minimum value ruler method for the length of continuous subsequences whose sum is not less than s
软件测试答疑篇
Conglin environmental protection rushes to the scientific and Technological Innovation Board: it plans to raise 2billion yuan, with an annual profit of more than 200million yuan
JVM class loading mechanism
Practice C language advanced address book design
Opencv LBP features
GRBL 软件:简单解释的基础知识
ThreadLocal memory leak
Vscode paste image plugin saves image path settings
随机推荐
Win10 copy files, save files... All need administrator permission, solution
在线音乐播放器app
如何写出好代码 — 防御式编程指南
Test case
Sliding window on the learning road
XSS basic content learning (continuous update)
运动健身的一些心得经验
all3dp. All Arduino projects in com website (2022.7.1)
软件测试答疑篇
1035 Password
3D 打印机 G 代码命令:完整列表和教程
Conglin environmental protection rushes to the scientific and Technological Innovation Board: it plans to raise 2billion yuan, with an annual profit of more than 200million yuan
测试 - 用例篇
Fabric. JS activation input box
Technologists talk about open source: This is not just using love to generate electricity
软件测试基础篇
Fabric. JS iText sets the color and background color of the specified text
生成二维码
Youth training camp -- database operation project
Stick to the big screen UI, finereport development diary