U-boot的DPU驱动移植方法

电子说

1.3w人已加入

描述

1.概述

本文以ARM Mali系列显示处理器驱动为例,讲述了U-boot的DPU驱动移植方法。

示例U-boot版本:2022.10。硬件平台:ARM SOC。

2.原理

U-boot的VIDEO驱动子系统集成了ARM Mali系列显示处理器的驱动,支持Mali-DP500、Mali-DP550和Mali-DP650显示处理器,驱动源码位于目录./drivers/video。

以简单的RGB显示屏作为输出设备,移植ARM Mali系列显示处理器驱动。

通过使能CONFIG_VIDEO_ARM_MALIDP配置将U_BOOT_DRIVER(mali_dp)驱动添加到u-boot,并在设备树添加显示处理器节点,由驱动程序解析节点属性,将framebuffer节点指向的特定格式的内存空间数据,以display-timings节点规定的时序参数要求输出到RGB显示屏。

3.移植方法

3.1编译配置

使能CONFIG_VIDEO_ARM_MALIDP,以添加U_BOOT_DRIVER(mali_dp)驱动。

寄存器

3.2设备树添加显示处理器节点

显示处理器节点的主要属性包括:

(1)compatible属性。设置设备兼容性字符串。

(2)reg属性。设置显示处理器的寄存器基地址及存储空间范围。

(3)时钟属性。按驱动源码需求设置时钟名称,按SOC实际配置情况设置频率值。

(4)framebuffer属性。按RGB显示屏的显示格式设置。

(5)display-timings属性。按RGB显示屏的时序参数设置。

设备树设计方法可以参考如下文档:

./doc/device-tree-bindings/video/simple-framebuffer.txt

./doc/device-tree-bindings/video/display-timing.txt

4.验证方法

4.1驱动加载结果查询

执行dm tree命令,查询到了mali_dp驱动已经被Probed,表明驱动加载成功。

寄存器

4.2切换串口控制台显示位置

执行如下命令,串口控制台切换到了RGB显示屏,即表明显示处理器驱动功能正常。

cli>env set stdout "vidconsole"

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分