DRM Wayland基本概念

2024-06-23 07:18
文章标签 drm wayland 基本概念

本文主要是介绍DRM Wayland基本概念,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.linux系统中查看屏幕分辨率(通常是在设备树中进行配置的)

#2代设备,实际物理尺寸-1.9英寸
$cat /sys/class/graphics/fb0/virtual_size170,320
#3代设备,实际物理尺寸-2.97英寸
$cat /sys/class/graphics/fb0/virtual_size
480,800

2.lcd外设选型参数

(1)物理尺寸
(2)硬件接口
外部接口种类:hdmi、vga,主要用于连接外部显示器
内部接口种类:mipi、LVDS、edp,主要用于连接移动端连接显示使用mipi接口的lcd显示器(在配置dts文件时需要配置2部分内容:mipi接口相关内容和显示屏相关内容):
mipi引脚
lcd使能引脚(LCD_EN)
lcd复位引脚(LCD_RST)
背光使能引脚(BL_EN)#用以下命令可以查看注册的gpio引脚(通常这些引脚是在dts文件中进行配置)
$cat sys/kernel/debug/gpio
GPIOs 96-127, platform/pinctrl, gpio3:
gpio-116 (                    |reset               ) out lomipi接口:
目的是把手机内部的接口如摄像头、显示屏接口、射频/基带接口等标准化,从而减少手机涉及的复杂程度,目前比较成熟的接口应用又DSI(显示接口)和CSI(摄像头接口)lvds接口、mipi接口、edp接口区别
LVDS接口只用于传输视频数据,MIPI DSI(用于连接lcd,MIPI CSI用于连接摄像头,其中摄像头的接口还有DVP接口即cif接口)不仅能够传输视频数据,还能传输控制指令(3)分辨率
(4)数据格式
lcd支持多种显示格式:例如32bit(4字节)、24bit(3字节)、16bit(2字节)等#查看一个像素占据的的大小	
$cat /sys/class/graphics/fb0/bits_per_pixel

3.查看lcd显示屏驱动是否加载成功,出现以下信息表示驱动加载成功

#在调试阶段主要设置lcd的各个时序参数、时钟、mipi时钟等等
$demsg
[    0.893064] rockchip-drm display-subsystem: devfreq is not set
[    0.894892] rockchip-drm display-subsystem: bound ff460000.vop (ops 0xffffff8008871ec8)
[    0.896117] rockchip-drm display-subsystem: bound ff140000.syscon:rgb (ops 0xffffff8008869fb8)

4.整个框架流程

Linux内核DRM框架
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

基本概念如下:
1.Wayland:显示服务器,是一种协议
2.Weston:是Wayland协议的的实现
3.drm又包括:
drm framebuffer:它是一块内存区域,我把它理解为一块画布,驱动和应用层都能访问它
plane:图层
crtc:读取当前扫描缓冲区的像素数据,生成视频模式定时信号.它对内连接 Framebuffer 地址,对外连接 Encoder。它会扫描你画布(Framebuffer)上的内容,叠加上 Planes 的内容,传给 Encoder。
encoder:将内存的 pixel 像素 编码(转换)为显示器所需要的信号,比如 DVID、VGA、YPbPr、CVBS、Mipi、eDP 等
connector:直译为 连接器。Connector 常常对应于物理连接器 (VGA, DVI, FPD-Link, HDMI, DisplayPort, S-Video …) 他会连接将一个物理显示输出设备 (monitor, laptop panel, …)基本流程:
app将画好的surface,通过wayland协议提供给compositor,compositor将来自各个应用的surface合成一帧,通过drm接口最终画在Framebuffer上。
#运行的compositor
weston --tty=2 -B=drm-backend.so --idle-time=0&

5.测试显示屏

$modetest -M rockchip
Encoders:
id      crtc    type    possible crtcs  possible clones
65      0       DPI     0x00000001      0x00000000Connectors:
id      encoder status          name            size (mm)       modes   encoders
66      0       connected       DPI-1           23x43           1       65modes:name refresh (Hz) hdisp hss hse htot vdisp vss vse vtot)170x320 1486 170 175 185 195 320 325 335 345 100000 flags: nhsync, nvsync; type: preferredCRTCs:
id      fb      pos     size
60      0       (0,0)   (0x0)Planes:
id      crtc    fb      CRTC x,y        x,y     gamma size      possible crtcs
58      60      0       0,0             0,0     0               0x00000001formats: XR24 AR24 XB24 AB24 RG24 BG24 RG16 BG16$modetest -M rockchip -s 66@60:170x320-M :用于指定访问rockchip drm driver
-s :<connector_id>@<crtc_id>:<mode>

6.参考文档

MIPI介绍(CSI DSI接口)
Mipi 接口 和 LVDS 接口区别
LVDS,MIPI,EDP
LCD支持的数据格式
Rockchip之RK3288解决MIPI屏花屏
从modetest 到 DRM driver
Linux 图形栈一览:基于 DRM 和 Wayland
Linux DRM(二)基本概念和特性

这篇关于DRM Wayland基本概念的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1086487

相关文章

音视频开发基础知识(1)——图像基本概念

像素 **像素是图像的基本单元,一个个像素就组成了图像。你可以认为像素就是图像中的一个点。**在下面这张图中,你可以看到一个个方块,这些方块就是像素。 分辨率 图像(或视频)的分辨率是指图像的大小或尺寸。我们一般用像素个数来表示图像的尺寸。比如说一张1920x1080的图像,前者1920指的是该图像的宽度方向上有1920个像素点,而后者1080指的是图像的高 度方向上有1080个像素点。

CloudStack基本概念-Zone,Pod,Cluster,Host

ZonePodClusterHost Zone Zone(资源域)是CloudStack部署中第二大的组织单元。Zone一般对应一个数据中心,虽然一个数据中心也可以有多个Zone。 把基础设施组织进Zone的一个好处就是可以提供物理隔离和冗余。 例如每个Zone可以有自己的电源供应和网络线路,并且zone之间可以远远地隔离开(虽然不是必须的) 一个zone包括:

HTTP基本概念介绍

HTTP概述 HTTP : 超文本传输协议,HTTP是浏览器端Web通信的基础。 一, 两种架构 B/S架构:Browser/Server,浏览器/服务器架构。 B:  浏览器,比如Firefox 、Google 、Internet; S:  服务器,Apache,nginx; C/S架构:Client/Server,客户端/服务器架构。 B/S架构相对于C/S架构,客户机上无需安装任何软件

python爬虫学习笔记一(基本概念urllib基础)

学习资料:尚硅谷_爬虫 学习环境:  pycharm 一.爬虫基本概念 爬虫定义 > 解释1:通过程序,根据URL进行爬取网页,获取有用信息 > 解释2:使用程序模拟浏览器,向服务器发送请求,获取相应信息 爬虫核心 > 1.爬取整个网页 > 2.解析数据,获取关心的数据 > 3.难点:爬虫VS非爬虫 爬虫设计思路 > 1.确定爬取的url  > 2.模拟浏览器通过http协议访问url

动态规划:基本概念

Dynamic Programming 动态规划(Dynamic Programming, DP) 是一种算法设计技巧,通常用来解决具有重叠子问题和最优子结构性质的问题。它通过将问题分解为更小的子问题,逐步解决这些子问题并将结果存储起来,以避免重复计算,从而提高效率。 1. 特点 1.1 重叠子问题 在许多递归问题中,计算过程中会多次遇到相同的子问题。如果我们每次遇到这些子问题时都重新

搜索引擎推广基本概念与方法分享-华媒舍

销量是每个企业及个人在商业领域中追求的目标之一。而引擎霸屏推广就是一种高效的手段,通过该方法可以助你实现销量的狂揽。本文将为你科普引擎霸屏推广的基本概念与方法,帮助你了解如何运用这一有效的推广策略。 一、引擎霸屏推广 引擎霸屏推广指的是在搜索引擎结果页(SERP)上获得最佳的曝光位置,以吸引更多用户点击访问,从而提高销量。要实现引擎霸屏推广,需要掌握以下要素: 二、SEO优化 搜索引擎

[DTS]设备树基本概念

一、什么是设备树  在Linux3.x之前的内核源码中,存在大量对板级细节信息描述的代码。这些代码充斥在/arch/arm/plat-xxx和/arch/arm/mach-xxx目录。为了解决这个问题而引入设备树。  官方对设备树的描述是,一种描述硬件资源的数据结构。 它通过bootloader将硬件资源传给内核,使得内核和硬件资源描述相对独立。  设备树的主要优势:对于同一SOC的不同主板,只

javascript学前基本概念

基本概念 什么是javascript? 基于对象的、事件驱动的、与平台无关的、弱类型的脚本语言。 强类型和弱类型? 在声明变量时,必须指定变量的类型,则为强类型的语言。 在声明变量的时候,不需要指定变量的类型,则为弱类型的语言。 javascipt在html页面中的执行顺序? javascript在html页面的任何位置都行,执行顺序为从上

爬虫基本概念

一、爬虫的基本概念         二、聚焦网络爬虫架构      三、搜索引擎工作原理

第一章 通信系统基本概念

文章目录 第一章 通信系统基本概念数字通信的基本概念通信相关的技术概念数字通信的定义通信的分类通信方式 通信系统的基本组成信息及其度量信息&消息&信号信息量平均信息量 通信系统的性能指标通信系统性能指标涉及的要素有效性码元传输速率信息传输速率码元传输速率&信息传输速率频带利用率 η \eta η 可靠性信噪比码元差错率 P e P_e Pe​(误码率)信息差错率 P e b P_{eb}