display
文章平均质量分 73
Neilo_chen
这个作者很懒,什么都没留下…
展开
-
Android图形显示系统学习
App负责在画布上作画,画完的作品提交给SurfaceFlinger, 这个提交操作并不是把内存复制一份给SurfaceFlinger,而是把共享内存的控制权交还给SurfaceFlinger, SurfaceFlinger把拿来的多个应用的共享内存再送给HWC Service去合成。这里其实就是在用户空间使用libdrm库送显的过程。介绍了Android显示系统的硬件基础:SOC、DDIC、Panel,显示原理和LCD时序、LCD上的画面更新流程。1.介绍了DRM的基本组件、KMS的基本组件;...原创 2022-08-28 17:03:08 · 2374 阅读 · 0 评论 -
Direct Rendering Manager - 基本概念
Direct Rendering Manager 基本概念 1 概述2 DRM2.1 libdrm2.2 KMS(Kernel Mode Setting)2.3 GEM(Graphics Execution Manager)2.3.1 Fence2.3.2 CMA(Conti...转载 2022-05-29 21:34:19 · 914 阅读 · 0 评论 -
msm8916 MDP(mobile display processor) 简介
硬件上面,Msm8916只有一个mipi-dsi接口用于连接LCM,由MDP(mobile display processor)进行管理,大概硬件结构图如下: mdp提供图片格式转换,旋转,overlay(overlay技术)等功能,dsi提供传输数据。 注意:overlay主要为了满足多界面叠加的需求,可理解为pipe,MDP支持3个overlay pipe。 &nb...转载 2022-05-26 22:44:52 · 3032 阅读 · 0 评论 -
Linux图形显示DRM框架学习
一、Direct Rendering Manager(DRM)是linux内核子系统,负责与显卡交互。DRM提供一组API,用户空间程序可以使用该API将命令和数据发送到GPU并执行诸如显示器的模式设置之类的操作。用户空间程序可以使用DRM API命令GPU执行硬件加速的3D渲染、视频解码、GPU计算。二、fbdev:Linux内核已经有一个fbdev的API,用来管理图形适配器的帧缓存区,但不能用于满足基于3D加速的现代基于GPU的视频硬件需求,这些设备通常需要在自己的内存中设置和管理命令队列,以将命令原创 2022-05-21 23:11:24 · 8681 阅读 · 0 评论 -
Linux graphic subsytem(1)_概述
图形子系统是linux系统中比较复杂的子系统之一:对下,它要管理形态各异的、性能各异的显示相关的器件;对上,它要向应用程序提供易用的、友好的、功能强大的图形用户界面(GUI)。因此,它是linux系统中少有的、和用户空间程序(甚至是用户)息息相关的一个子系统。 本文是图形子系统分析文章的第一篇,也是提纲挈领的一篇,将会从整体上,对linux显示子系统做一个简单的概述,进而罗列出显示子系统的软件构成,后续的文章将会围绕这些软件一一展开分析。 注1:本文所有的描述将以原生linux系统为例(如U..转载 2022-05-04 19:14:04 · 330 阅读 · 0 评论 -
Linux graphic subsystem(2)_DRI介绍
上篇文章(Linux graphic subsytem(1)_概述)介绍了linux图形子系统基本的软件框架,以及GUI、Windowing system、3D渲染等基本概念。文中提到了linux DRI(Direct Render Infrastructure)框架,但限于篇幅,没有过多介绍。 蜗蜗觉得,DRI在当前(或者说将来)的linux图形子系统中,有着举足轻重的地位,甚至可以说是新的linux图形框架核心思想的体现。本文将基于linux图形框架的发展历程,从Why、What和How三个角..转载 2022-05-04 19:06:44 · 579 阅读 · 0 评论 -
Android开机画面显示
一、fbconfbcon是帧缓冲区控制台,它在帧缓冲系统初始化时初始化:static int __initfbmem_init(void){ ... fb_console_init(); return 0;}void __init fb_console_init(void){ int i; console_lock(); fbcon_device = device_create(fb_class, NULL, MKDEV(0, 0), NULL, "fbc原创 2022-04-05 22:04:59 · 2467 阅读 · 0 评论 -
gralloc模块在surfacefinger 进程的内存映射镜像
1、如何知道高通msm8953平台用的是哪一个gralloc模块文件?可以通过以下方式:msm8953_64:/vendor/lib64/hw # ps -A | grep surfacesystem 637 1 313936 28800 ep_poll 0 S surfaceflingermsm8953_64:/vendor/lib64/hw # cat /proc/637/maps7f297a6000-7f297a7000 rw-p 0000原创 2022-03-01 18:26:15 · 1676 阅读 · 0 评论 -
Android GUI系统学习1:Gralloc
Gralloc模块是从Android Eclair(android 2.1)開始增加的一个HAL模块,Gralloc的含义为是Graphics Alloc(图形分配)。他对上为libui提供服务,为其分配显存,刷新显示等。对下对framebuffer进行管理。gralloc代码通常位于hardware/libhardware/modules/gralloc文件夹下。包括下面几个文件:Android.mk framebuffer.cpp gralloc.cpp ..转载 2022-02-28 22:17:37 · 2377 阅读 · 0 评论 -
android gralloc源码分析
1、gralloc模块通过struct private_module_t来描述struct private_module_t { gralloc_module_t base; private_handle_t* framebuffer; uint32_t flags; uint32_t numBuffers; uint32_t bufferMask; pthread_mutex_t lock; buffer_handle_t currentBuff原创 2022-02-26 19:50:48 · 3926 阅读 · 1 评论 -
多媒体架构---display介绍
前言: 此篇blog从LCD原理、Display基础知识、DSI介绍、HDMI相关、display原理概念相关、安卓中的Display Graphics框架、Qcom display框架这些点给大家介绍Display。 一、Display Overview 1.显示应用领域(mobile,PC) 2.其他相关领域(投影仪、VR眼镜) 二、LCD显示原理 1.背光IC发出亮光,通过下偏光片,液晶阵,透过...转载 2022-02-05 18:37:45 · 2459 阅读 · 0 评论 -
高通平台lcm 总结
以下几幅图是最近的一段时间对自己模块LCM的一些总结,目前只是完成了一部分,而且描述的不是特别到位,后期会不断更新和修改的。 第一幅是LCM的总体移植框架和组件图。介绍了LCM驱动的分部和调试屏的步骤和要点。 分lk和kernel两个部分,具体哪些.c,如何添加一块新屏,大体的步骤和方法。 第二幅图是屏的初始化流程图,分为lk和kernel两部分。Lk部分如下所示: 系统起来的时候会调用...转载 2022-02-05 15:10:30 · 1140 阅读 · 0 评论 -
高通平台msm8953 display子系统学习
硬件上,高通平台有一个mipi-dsi接口连接LCM,由MDP(mobile display processor)进行管理,就是一般说的LCD控制器软件上,高通平台提供MDSS(Multimedia Display Sub-system)进行管理软件驱动目录:kernel/msm-4.9/drivers/video/fbdev/msm主要分为三部分:MDP驱动:对使用的硬件资源进行初始化,同时在fb设备中注册mdp的使用接口,文件mdss_mdp3.cDSI驱动:解析模组厂商提供的panel的dt原创 2022-02-01 18:18:38 · 6252 阅读 · 0 评论 -
Android display架构学习
一、Linux FrameBuffer 设备什么是framebuffer设备?Documentation\fb\framebuffer.rstfbmem.c原创 2021-12-26 21:47:16 · 2456 阅读 · 0 评论 -
Android Display 系统分析
Android display架构分析(一) http://hi.baidu.com/leowenj/blog/item/429c2dd6ac1480c851da4b95.html 高通7系列硬件架构分析 如上图,高通7系列 Display的硬件部分主要由下面几个部分组成: A、MDP 高通MSM7200A内部模块,主要负责显示数据的转换和部分图像处理功能理,如YUV转RGB,放大缩...转载 2021-11-29 22:03:00 · 1672 阅读 · 0 评论