当前位置: 首页 > news >正文

RK3568-drm框架

1 DRM 概述

DRM 全称是 Direct Rendering Manager,进行显示输出管理、buffer 分配、帧缓冲。
对应 userspace 库为 libdrm,libdrm 库提供了一系列友好的控制封装,使用户可以方便的进行显示的控制和 buffer 申请。
DRM的设备节点为 "/dev/dri/cardX", X 为 0-15 的数值,默认使用的是/dev/dri/card0。
从 linux 4.4 内核开始,Rockchip 显示驱动全部切到 DRM 显示框架。
1.1 基本概念
CRTC:显示控制器,在 rockchip 平台是 SOC 内部 VOP(部分文档也称为 LCDC)模块的抽象;
Plane:图层,在 rockchip 平台是 SOC 内部 VOP(LCDC)模块 win 图层的抽象;
Encoder:输出转换器,指 RGB、LVDS、DSI、eDP、HDMI、CVBS、VGA 等显示接口;
Connector:连接器,指 encoder 和 panel 之间交互的接口部分;
Bridge:桥接设备,一般用于注册 encoder 后面另外再接的转换芯片,如 DSI2HDMI 转换芯片。
Panel:泛指屏,各种 LCD、HDMI 等显示设备的抽象;
GEM:buffer 管理和分配,类似 android 下的 ion。
1.2 DRM 显示通路

请添加图片描述

请添加图片描述

1.3 DRM 驱动和 libdrm 交互过程

请添加图片描述

2 DRM 驱动

2.1 uboot驱动
Core 
drivers/video/drm/rockchip_display.c
drivers/video/drm/rockchip_crtc.c
drivers/video/drm/rockchip_connector.c
drivers/video/drm/rockchip_phy.c
drivers/video/drm/rockchip_panel.c
VOP 
drivers/video/drm/rockchip_vop.c
drivers/video/drm/rockchip_vop_reg.c
eDP 
drivers/video/drm/rockchip_analogix_dp.c
drivers/video/drm/rockchip_analogix_dp_reg.c
MIPI-DSI 
drivers/video/drm/rockchip_mipi_dsi.c
drivers/video/drm/rockchip-dw-mipi-dsi.c
drivers/video/drm/inno_video_phy.c
LVDS 
drivers/video/drm/rockchip_lvds.c
drivers/video/drm/inno_video_phy.c
RGB 
drivers/video/drm/rockchip_rgb.c
drivers/video/drm/inno_video_phy.c
HDMI 
drivers/video/drm/dw_hdmi.c
drivers/video/drm/rockchip_dw_hdmi.c
drivers/video/drm/rockchip-inno-hdmi-phy.c
TVE/CVBS 
drivers/video/drm/rockchip_drm_tve.c
Panel 
drivers/video/drm/panel_simple.c
drivers/video/drm/rockchip_dsi_panel.c
2.2 kernel驱动
驱动目录
drivers/gpu/drm/rockchip/
drivers/gpu/drm/bridge/analogix/
drivers/gpu/drm/bridge/synopsys/
drivers/phy/rockchip/Core 
rockchip_drm_drv.c
rockchip_drm_fb.c
rockchip_drm_fbdev.c
VOP 
rockchip_drm_vop.c
rockchip_vop_reg.c
LVDS 
rockchip_lvds.c
phy-rockchip-inno-video-phy.c
MIPI-DSI 
dw-mipi-dsi.c
phy-rockchip-inno-video-phy.c
eDP 
analogix_dp-rockchip.c
analogix_dp_core.c
analogix_dp_reg.c
phy-rockchip-dp.c
HDMI 
inno_hdmi.c
dw-hdmi.c
dw_hdmi-rockchip.c
dw-hdmi-hdcp.c
dw-hdmi-cec.c
dw-hdmi-i2s-audio.c
phy-rockchip-inno-hdmi-phy.c
TVE/CVBS 
rockchip_drm_tve.c

3

http://www.lqws.cn/news/552817.html

相关文章:

  • NLP中的同义词替换及我踩的坑
  • Element Plus el-button实例类型详解
  • 短波监测设备和超短波监测设备的区别
  • 磁悬浮支撑:从实验室到工业应用的挑战与机遇
  • 数据结构:最小生成树—Prim(普里姆)与Kruskal(克鲁斯卡尔)算法
  • UNION 和 UNION ALL
  • 回调函数、作用域与闭包:从图片预览案例深入理解
  • 文件管理与Java操作全解析
  • 编译安装detectron2
  • 常用工具库
  • 北大肖臻《区块链技术与应用》学习笔记
  • 智能库室管控系统DW-S306|全国已经规模化应用
  • 微服务项目,启动某服务,编译后就没反应
  • 【JS-6-ES6中的let和const】深入理解ES6中的let和const:块级作用域与变量声明的新范式
  • 【数据标注师】意图标注
  • 力扣网C语言编程题:在数组中查找目标值位置之二分查找法
  • 能否仅用两台服务器实现集群的高可用性??
  • ADVANCED INTELLIGENT SYSTEMS 东京大学仿生人类手指机器人,实现“皮肤”补水!
  • Harbor的安装与使用
  • 基于MFC的遥感图像匹配程序设计
  • Java 识别和处理 HTML 标签内容
  • Solidity学习 - ABI 应用二进制接口
  • 叉车考试真题(含答案)pdf下载
  • 权限提升-工作流
  • React用户交互事件
  • 一款支持多日志器、多级别、多落地方式的同异步日志系统
  • ViewModel 使用总结:普通、Shared 及嵌套 Fragment 场景
  • 栅极驱动器选的好SiC MOSFET高效又安全
  • RabbitMQ-基础篇
  • StarRocks 向量索引如何让大模型“记性更好”?