K230 DRM使用指南
1. DRM简介
DRM是linux内核中负责与显卡交互的管理架构,用 户程序可以很方便的利用DRM提供的API,实现显示控制、3D渲染、视频编解码、GPU计算等工作
1.1 DRM架构特点
DRM是当前Linux内核中主流的图形显示框架,相比于传统的FB架构,具有如下特点:
- DRM架构原生支持多图层合成,FB架构原生不支持多图层合成
- DRM架构原生支持VSYNC、DMA_BUF、Fence机制
- DRM架构统一管理渲染和显示驱动,让软件开发和维护更简单
1.2 DRM架构组成
从整体架构来说,DRM主要分成三个部分:
-
libdrm
libdrm会对底层接口进行封装,向用户态提供通用的API接口
libdrm内部还提供modetest程序,用于查询DRM设备的详细信息,同时还可以进行基本的显示测试
-
KMS
KMS表示内核模式设置,主要设置显示分辨率、颜色空间、刷新率以及显示buffer切换和多图层合成
-
GEM
显存管理,负责显存分配和释放
2. modetest使用说明
modetest是由libdrm提供的测试程序,可以查询DRM设备的详细信息,同时还可以进行基本的显示测试