DRM显示架构驱动可以调用什么接口获取drm_display_mode
时间: 2023-09-10 17:11:53 浏览: 44
DRM显示架构驱动可以调用`drm_mode_getconnector`接口来获取显示器连接器的信息,包括支持的显示模式。该接口会返回一个`drm_connector`结构体,其中包含了一个`modes`数组,里面存储了所有支持的显示模式信息,包括分辨率、刷新率等。DRM驱动可以从这个数组中获取需要的显示模式信息。另外,也可以通过`drm_mode_getfb`接口获取显示缓冲区的信息,以便更好地设置显示模式。
相关问题
drm_display_mode
引用\[1\]中的代码片段是关于drm_display_mode的验证和修剪的过程。在这个过程中,使用了drm_mode_prune_invalid函数来移除状态不是OK的mode,并销毁这些无效的mode。而引用\[2\]中的代码片段则是对mode进行一些标志位的设置和验证。最后,引用\[3\]中的代码片段是关于HTQ_alientek_desc结构体,描述了所用屏幕的信息,包括显示模式和像素格式等。
综上所述,drm_display_mode是用于描述显示模式的结构体,在使用过程中需要进行验证和修剪,以确保mode的有效性。同时,还需要设置一些标志位和验证mode的其他属性。
#### 引用[.reference_title]
- *1* *2* [Linux内核4.14版本——drm框架分析(9)——DRM_IOCTL_MODE_GETCONNECTOR(drm_mode_getconnector)](https://blog.csdn.net/yangguoyu8023/article/details/129244973)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [DRM几个重要的结构体及panel开发](https://blog.csdn.net/zichuanning520/article/details/127254426)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
drm_display_mode结构体
drm_display_mode结构体是在drm_mode_config结构体中定义的一部分。它用于描述显示模式的属性,如分辨率、刷新率、像素格式等。具体定义如下:
struct drm_display_mode {
uint32_t clock; // 像素时钟频率
uint16_t hdisplay; // 水平显示像素数
uint16_t hsync_start; // 水平同步开始位置
uint16_t hsync_end; // 水平同步结束位置
uint16_t htotal; // 水平总像素数
uint16_t vdisplay; // 垂直显示像素数
uint16_t vsync_start; // 垂直同步开始位置
uint16_t vsync_end; // 垂直同步结束位置
uint16_t vtotal; // 垂直总像素数
uint32_t flags; // 显示模式标志
uint32_t type; // 显示模式类型
struct drm_mode_object base; // 基础对象
};
drm_display_mode结构体包含了显示模式的各种属性,可以通过该结构体来设置和获取显示模式的信息。\[1\]
#### 引用[.reference_title]
- *1* *2* [【项目原理】DRM驱动概念、组成、框架、源码分析](https://blog.csdn.net/qq_41709234/article/details/129472180)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [DRM几个重要的结构体及panel开发](https://blog.csdn.net/zichuanning520/article/details/127254426)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]