MTK平台LED配置
来源:互联网 发布:yaml nginx 编辑:程序博客网 时间:2024/05/15 13:54
2016年12月16号
MTK平台调试GPIO LED灯
过去没有调试过MTK平台的GPIO,对这个平台的陌生导致了对于驱动的不解。之后经过对说明文档的阅读和思考。找到了以下方法。
首先,在MTK平台中,设置GPIO的方法和高通平台的设置方法不同。设置GPIO的初始状态需要通过在这个工具中设置:kernel-3/10/tool/dct/DrvGen.exe
之后打开这个文件:/kernel-3.10/drivers/misc/mediatek/mach/mt6735/(项目名称)/dct/dct/codegen.dws,这个文件可以进行对GPIO的初始化的设置。在设置结束之后,进行保存,同时也可以进行生成代码的操作,生成的代码,就是类似于高通平台下的设备树文件。
代码问题,在配置led灯中,代码的具体路径如下:
drivers/misc/mediatek/leds/leds_drv.c
drivers/misc/mediatek/mach/mt6735/(项目名称)/leds/mt65xx/cust_leds.c
其中第二个路径中的代码,主要是对在驱动中的所需要使用的led灯的节点以及其对应的驱动方式,例如ADAS项目中使用的GPIO模式的三色灯。同时,也要对节点所使用的赋值函数进行定义。例如这个项目中,对于三色灯的节点,操作函数如下:
extern int sextern int set_gpio_led_red(unsigned int status); extern int set_gpio_led_green(unsigned int status);extern int set_gpio_led_blue(unsigned int status);在原始驱动中,对于获取节点的属性,主要是通过读取一个数组来进行,数组中有多个数据。static struct cust_mt65xx_led cust_led_list[MT65XX_LED_TYPE_TOTAL] = {{"red", MT65XX_LED_MODE_GPIO, (long)set_gpio_led_red,{0}},{"green", MT65XX_LED_MODE_GPIO, (long)set_gpio_led_green,{0}},{"blue", MT65XX_LED_MODE_GPIO, (long)set_gpio_led_blue,{0}},{"jogball-backlight", MT65XX_LED_MODE_NONE, -1,{0}},{"keyboard-backlight",MT65XX_LED_MODE_NONE, -1,{0}},{"button-backlight", MT65XX_LED_MODE_NONE, -1,{0}},{"lcd-backlight", MT65XX_LED_MODE_CUST_BLS_PWM, (long)disp_bls_set_backlight,{0}},
};
对于主要的驱动函数,MTK说明文档进行研读之后,找到了设置GPIO的具体流程1.需要进行对GPIO的工作模式进行设定,总共有8种GPIO工作模式。mt_set_gpio_mode(GPIO_LED_R_EN, GPIO_MODE_GPIO);2.对GPIO是否能进行拉高处理进行设定mt_set_gpio_pull_enable(GPIO_LED_R_EN, GPIO_PULL_DISABLE);3.设置GPIO的输入输出mt_set_gpio_dir(GPIO_LED_R_EN, GPIO_DIR_OUT);4.通过另一个函数,对GPIO的值进行设置ret = set_led_gpio_rgb(GPIO_LED_R_EN, status);
0 0
- MTK平台LED配置
- mtk 6572平台led指示灯 调试
- MTK平台pwm控制led的亮度
- mtk 6572平台led指示灯 调试
- MTK android配置LCD背光和LED
- mtk led
- mtk平台pwm配置说明
- MTK平台APN的配置
- MTK android配置LCD背光和LED,调试方法
- mtk 平台配置内核方法 mtk platform make menuconfig setting
- MTK平台apn&spn的配置
- MTK Android Driver:led
- mtk led 呼吸灯
- MTK Android Driver:led
- mtk led子系统概略
- MTK平台
- mtk 平台
- mtk led驱动总结1
- Node.js 定时器
- WKWebView 遇到过的坑
- nyoj-106-背包问题
- Java -- 泛型
- c51-i2c协议代码实现
- MTK平台LED配置
- Android-transulcent-status-bar总结
- 汉诺塔递归与非递归
- (转)开发仅用两天三个人,谈谈小咖秀背后的技术故事
- C++标准模板库<algorithm>下的函数sort
- 1086: 去掉双斜杠注释
- 链表 进栈出栈遍历清空
- python制作pdf电子书
- spring mvc4处理日期格式问题