MIPI DIsplay Panel And Linux Driver Model

本文探讨MIPI DSI Panel的硬件架构,包括Type1至Type4的四种架构类型,以及DSI物理层的工作模式。此外,文章还介绍了Linux驱动模型在处理display面板时的角色,特别是panel driver在Linux/Android显示栈中的位置和作用。内容涵盖了设备电源状态转换和软件层面的驱动支持,如plane、controller、encoder和panel组件的功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

硬件篇

架构

最近研究MIPI DSI Panel Linux Driver架构,于是一边啃spec性质的官方文档,一边从dri-devel,omap-linux等邮件列表里,搜索所有的跟panel driver相关的讨论,尽力在短时间内把整个subsystem的脉络迅速掌握。

MIPI规范不止于display,也包括camera(MIPI CSI),电源管理,射频的东西。和Display相关的就是MIPI DSI,DPI,DBI等,规范了host display controller到panel之间通信时从物理层,链路层到应用层的协议。目标市场是对功耗、屏幕尺寸有特殊要求的移动设备,不同于VESA针对PC市场。

大而笼统地说,mobile display system一般可分为两种 architecture:


右边这种叫“smart panel”,左边这种叫"dumb panel"(“哑”屏)。区别是smart panel带framebuffer,“刷屏”操作由屏自己来负责,host controller成了甩手掌柜,而哑屏就和任何一种非主动设备一样,可以把它当作一块带有简单时许控制电路的玻璃。

mipis在上面两种基本architecture的基础上,扩展了四种架构。

Type1

完全的command模式,mipi规范里DBI属于这种type

Type2

type1的一条control-interface接口变为了video-interface + control-interface的组合,full-framebuffer也变为了partial-framebuffer,因为没有了full-framebuffer,所以不可能完全依靠panel来刷屏,这就是video-interface存在的必要;但partial-framebuffer也为panel带来了partial-update的灵活性。


control-interface和video-interface可能是在同一个物理总线上的。这里的control-interface类似I2C或者PCI,video-interface传递pixels/clock。control-interface都是传递one-shot的data/command,有请求有应答;video-interface传递continuous的data,不需要slave device的应答。Linux的设备驱动模型树总是围绕control-interface来组织的。master同slave之间的连接组织成树,内核电源管理子系统通过遍历树来得到一个正确的suspend/resume的顺序,否则会产生很多ordering issue;通过control-interface,m

评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值