驱动开发知识点(更新中···)

常用编译宏

PRODUCT_PROPERTY_OVERRIDES 覆盖定义

PRODUCT_COPY_FILES 复制文件

PRODUCT_DEFAULT_PROPERTY_OVERRIDES 覆盖默认属性

ADDITIONAL_DEFAULT_PROPERTIES 添加默认属性

电池模块

  • 电池曲线

使用电池厂商提供的-10°、0°、10°、25°、50°的电池曲线,如果没有配置电池温度检测,mtk默认使用的是25°的数据。

厂商电池曲线转换成如下格式

电池曲线工具使用:

1、导入property文件
2、导入table配置文
3、导入转换格式以后的文件,点击2处生成电池曲线文件
  • 电池检测

电池有个检测脚用于检测是否存在电池。

屏幕模块

屏幕驱动分别在kernel和vendor目录下面有配置,如:kernel-4.4\drivers\misc\mediatek\lcm、vendor\mediatek\proprietary\bootable\bootloader\lk\dev\lcm。多屏幕适配可以在vendor里面屏幕驱动文件的lcm_compare_id函数进行判断,返回1则匹配成功,0则失败。同时在kernel和lk里面的项目配置文件里面加上多屏驱动的名称,以空格分开。

例:添加st7789v屏幕驱动

kernel部分

添加配置:涉及文件:mt65xx_lcm_list.h、mt65xx_lcm_list.c文件,新加st7789v_qvga_spi_4line_8bit目录、Makefile和st7789v_qvga_spi_4line_8bit.c文件。

mt65xx_lcm_list.h
mt65xx_lcm_list.c

创建st7789v_qvga_spi_4line_8bit目录,添加Makefile和st7789v_qvga_spi_4line_8bit.c文件

Makefile文件
st7789v_qvga_spi_4line_8bit.c

vendor部分

添加配置:涉及文件:mt65xx_lcm_list.c文件,新加st7789v_qvga_spi_4line_8bit目录、Makefile和st7789v_qvga_spi_4line_8bit.c文件。

mt65xx_lcm_list.c
mt65xx_lcm_list.c
Makefile
st7789v_qvga_spi_4line_8bit.c

按键模块

耳机模块

状态灯模块

音频模块

自定义设备节点

设备中断

查看所有注册的中断
cat /proc/interrupts

dts部分

dws部分

Flash部分

相关文件路径:
vendor/mediatek/proprietary/bootable/bootloader/preloader/custom/k39tv1_bsp_1g/inc/custom_MemoryDevice.h
vendor/mediatek/proprietary/bootable/bootloader/preloader/tools/emigen/MT6739/MemoryDeviceList_MT6739.xls

You May Also Like

About the Author: ice.zhai

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注