关机充电相关文件
修改关机充电动画,首先要关注的几个比较重要的文件:
①/device目录下的ProjectConfig.mk文件,这是安卓端对boot、kerner传参的配置文件
②/vendor/mediatek/proprietary/external/libshowlogo下的cust_display.h文件,这是定义动画logo形状以及位置的头文件
③vendor/mediatek/proprietary/external/charger,关机充电实际就是个应用,就在这个目录下,入口即main.cpp中的main函数
一般情况下
如果只是换了屏,即大小(分辨率不一样了),只要改ProjectConfig.mk中的BOOT_LOGO参数,这个参数就是指定logo的分辨率,从而确定关机动画是/vendor/mediatek/proprietary/bootable/bootloader/lk/dev/logo下的哪份文件,如果没有呢,没有就自己增加呗,依葫芦画瓢,看其它文件中怎么弄的,改下尺寸就行了;其次还需改如下这些参数,我相信由参数名称就能大致猜到这些参数的作用,依次分别代表高、宽、分辨率、lk驱动、uboot驱动、kernel驱动、反转角度,这些参数的详细作用这里就不一一介绍。
改了这些参加就行了吗,一般情况是可以的,但是实际开发中往往不是一般情况,要么屏要新增驱动,要么分辨率系统中没有相对应的,需要自己新增,那也简单,缺什么补什么就行,这就是我们下面要介绍不一般的情况!
实际开发中
实际开发中可能屏换了,分辨率变了,方向也变了,实际中往往就是这么奇葩!
①新屏,肯定需要在lk\kernel中增加相应的驱动文件,这个厂家都会提供,不行就找FAE
②分辨率变了,就改上图的前面三个参数,改成对应的就行,第三个参数BOOT_LOGO后面的nl就是宽高对调的意思,就是横屏与竖屏的关系,这个参数是相当重要的,与cust_display.h中的条件编译宏以及/vendor/mediatek/proprietary/bootable/bootloader/lk/dev/logo下对应的文件夹名称要都对应
即这里BOOT_LOGO=wsvganl,相应的在cust_display.h中有预编译宏WSVAGNL,如果没有,要相应的补上,如下:
在/lk/dev/logo下有wsvganl的文件夹,如果没有,也要相应的补上,如下:
关机充电动画修改
如果cust_display.h没有对应的条件编译宏,那么就要修改#else下的值或者增加相应的宏,比如我最近调的一个新屏就没有对应的条件编译宏定义,所以在驱动调好之后关机充电显示并不正常,如下:
一、屏的分辨率是240*320,即qvganl,所以首先需要修改ProjectConfig.mk文件中的参数,如下:
- 其次修改cust_display.h中的参数
这里四个一组四组分别表示:
电池容量部分,就是中间蓝色矩形区域;
电池容量数字显示区域;
电池容量%号显示区域;
电池容量充电的动画区域。
LEFT与TOP是起始位置,RIGHT与BOTTOM是根据bootloader/lk/dev/logo/qvganl下图标的尺寸进行增加的,调整之后显示就正常了,perfect!!!
拓展知识,关于屏幕分辩率:
VGA全称是Video Graphics Array,这是比较常见的屏幕分辨率,即显示绘图阵列,相当于640×480 像素,VGA摄像头就是30万像素的摄像头,其它的一些分辨率以及简称如下:
尺寸 (W/H) |
简称(代号) |
全写 |
比例 |
128 x 96 |
subQCIF |
Sub Quarter common intermediate format |
4:3 |
176 X 144 |
QCIF |
Quarter common intermediate format |
11:9 |
320 x 200 |
CGA |
Color-Graphics-Adapter |
8:5 |
320 x 240 |
QVGA |
Quarter Video Graphics Array |
4:3 |
352 x 288 |
CIF |
Common Intermediate Format |
11:9 |
640 x 350 |
EGA |
Extended-Graphics-Adapter |
64:35 |
640 x 480 |
VGA |
Video-Graphics-Array |
4:3 |
800 x 600 |
SVGA |
Super-Video-Graphics-Array |
4:3 |
1024 x 768 |
XGA |
eXtended-VGA |
4:3 |
1280 x 768 |
XGA-W |
Extended Graphics Array |
15:9 |
1280 x 960 |
QVGA |
Quarter-VGA |
4:3 |
1280 x 1024 |
SXGA |
Super-eXtended-VGA |
5:4 |
1400 x 1050 |
SXGA+ |
Super-eXtended-VGA-plu |
4:3 |
1600 x 1024 |
SXGA-W |
Super-eXtended-VGA-Wide |
25:16 |
1600 x 1200 |
UGA |
Ultra-VGA |
4:3 |
1920 x 1080 |
HDTV |
High-Definition-TV |
16:9 |
1900 x 1200 |
UXGA |
Ultra-eXtended-VGA |
19:12 |
1920 x 1200 |
UXGA-W |
Ultra-eXtended-VGA-Wide |
8:5 |
2048 x 1536 |
QXGA |
Quad-eXtended-VGA |
4:3 |
2560 x 2048 |
QSXGA |
Quad-Super-eXtended-VGA |
5:4 |
3200 x 2400 |
QUXGA |
Quad-Ultra-eXtended-VGA |
4:3 |
3840 x 2400 |
QUXGA-W |
Quad-Ultra-eXtended-VGA-Wide |
8:5 |