uboot源码分析——关于LCD的代码分析

以下内容源于朱有鹏嵌入式课程的学习与整理,如有侵权请告知删除。

一、open_backlight函数

在九鼎为X210开发板移植的uboot源码中,display_banner函数中的open_backlight函数,其(倒数第二句代码)配置GPF3_5输出高电平,如下所示:

   

但其实将这一句代码注释掉,LCD显示照样正常。这是因为后面LCD操作的部分还会再做一遍的。真正初始化LCD系统并且显示logo,是在start_armboot函数后段的x210_preboot_init函数(这个函数在/drivers/video/mpadfb.c文件)中,该函数是九鼎在移植时添加的(如果我们自己移植uboot可以考虑自己去添加)。

二、显示LOGO

LCD的驱动文件是/drivers/video/mpadfb.c文件,其中有一个函数mpadfb_init,分析如下:

 

1、fb_init函数(给framebuffer相关的数据结构赋值)

(1)左值的info是一个结构体,这个结构体用来描述fb驱动中的硬件设备参数。

(2)右值的lcd是自己定义的一个数据结构,里面的值都是我们人为配置给驱动体系的。

 

2、lcd_port_init函数(初始化LCD相关的SoC的引脚)

 

3、lcd_reg_init函数(初始化LCD的寄存器)

也就是SoC的LCD控制器中的那些寄存器的初始化。

以上三个函数调用执行完后,LCD初始化就结束了。接下来是写东西和开背光。

4、display_logo函数(负责把logo图片写到LCD的fb中)

 

5、backlight_brigness_init函数(打开背光)

三、根据屏幕设置不同的屏幕参数

 

四、与LCD有关的结构体

1、fb_info

2、bitmap 

3、bitmap_info 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

天糊土

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值