关于mtk GPIO口的定制

转载 2016年06月01日 19:34:38

本文转自http://blog.csdn.net/mcgrady_tracy/article/details/40788873

我只是转载一下,方便自己以后查看~

如果需要定制GPIO口呢,需要使用mediatek/dct/DrvGen.exe工具,点击Open,选择mediatek/custom/project_dir/kernel/dct/dct/codegen.dws文件,点击Edit,将出现如图所示的一个窗口:
EintMode: 指示是否当作中断引脚来使用,例如GPIO0就可以当作ENTI0,如果选中了该模式,其它模式是不可见的。
Def.Mode: GPIO默认的模式,什么意思呢,就是在系统启动过程中GPIO口的模式,GPIO口启动模式是定义在文件cust_gpio_boot.h文件中的,例如,GPIO3的启动模式就是作为普通的GPIO口来使用,即模式为GPIO_MODE_00,稍后会为大家讲解cust_gpio_boot.h文件是怎么生成的。
M0~M7: 由于GPIO口是复用的,也就说除了作为普通的GPIO口使用之外,还有其它用途,所以这里会在cust_gpio_usage.h文件中产生一些宏定义,可能某些驱动中会用到这些宏定义。
InPull En: 是指GPIO是否使能上拉或下拉。
InPull SelHigh: 上面只是只是指示是否使能上拉或下拉,但是并没有指出到底是上拉还是下拉,那么就由这里来指定,如果勾选了那么就表示上拉,否则就是下拉。
Def.Dir: 指示GPIO默认的数据传输方向,是输入还是输出,都需要设置的。
In、Out: In和Out这两个选项暂时不知道有何用处,根据字面意思呢,应该是允许输入或输出的。
OutHigh: 指示GPIO口作为普通IO时输出电平高低。
VarName1: 变量的名字,有些驱动中可能会使用到一些GPIO口,那么这里就是为GPIO口定义一个别名,那么在驱动中只需要这个别名就可以了,而这个GPIO口是可以换的,所以这里也是为了可移植性。

在GPIO口配置完成之后,首先是需要点击Save来保存这个配置,可以点击Gen Code去生成新的代码,新的代码就生成在和codegen.dws同一个目录下,但是在Android 4.4版本上我都不是这样做的,在保存以后,直接运行./mk n k也会生成新的代码,生成目录在:
out/target/product/project_dir/obj/CUSTGEN/custom/kernel/dct/,如果是其他版本,可能会不相同。

前面说了在系统启动过程中会初始化这些GPIO口,那么什么地方在做初始化呢,有两个地方preloader和lk,preloader初始化代码流程如下:
mt_gpio_set_default()->mt_gpio_set_default_chip()
而该部分代码在mediatek/platform/mt6582/preloader/src/drivers/gpio_init.c中,在该文件中首先就是包含文件cust_gpio_boot.h。

而lk部分初始化流程都是差不多的,流程如下:
mt_gpio_set_default()->mt_gpio_set_default_chip()
lk部分代码在mediatek/platform/mt6582/lk/mt_gpio_init.c中。

mtk GPIO口

mt6582多达168个GPIO口,当然这些GPIO口是复用的,注意lk和Linux kernel使用上稍有不同。 1. lk部分 lk部分GPIO相关代码在mediatek/platform...
  • mcgrady_tracy
  • mcgrady_tracy
  • 2014年09月16日 18:04
  • 5155

MTK gpio

MT6253 所有非V1.0版本的datasheet都没有详细对各个GPIO的描述都不详尽。而V1.0版本的datasheet又必须要有MTK的证书连接到他们的服务器才能看到的。因此,以下列表的内容花...
  • zlcchina
  • zlcchina
  • 2014年05月06日 09:03
  • 956

MTK GPIO口的定制

如果需要定制GPIO口呢,需要使用mediatek/dct/DrvGen.exe工具,点击Open,选择mediatek/custom/project_dir/kernel/dct/dct/codeg...
  • zuoyioo7
  • zuoyioo7
  • 2017年10月25日 09:10
  • 68

MTK GPIO的定制详解

如果需要定制GPIO口呢,需要使用mediatek/dct/DrvGen.exe工具,点击Open,选择mediatek/custom/project_dir/kernel/dct/dct/codeg...
  • sdkdlwk
  • sdkdlwk
  • 2017年06月07日 15:41
  • 529

关于mtk GPIO口的定制

如果需要定制GPIO口呢,需要使用mediatek/dct/DrvGen.exe工具,点击Open,选择mediatek/custom/project_dir/kernel/dct/dct/codeg...
  • mcgrady_tracy
  • mcgrady_tracy
  • 2014年11月04日 17:59
  • 12964

MTK 功能机GPIO配置

Ø       GPIO设置篇 一、GPIO有关的函数 1.GPIO_ModeSetup: 函数原型:void GPIO_ModeSetup(kal_uint16 pin, kal_...
  • u010783226
  • u010783226
  • 2017年06月20日 20:14
  • 318

MTK 如何用ADB 修改和显示GPIO状态

MTK 如何用ADB 修改和显示GPIO状态
  • chiooo
  • chiooo
  • 2015年02月28日 10:54
  • 2073

MTK配置GPIO口

工具 MTK\alps6589_v1.3_s188_patch\mediatek\dct\DrvGen.exe    s188_patch\mediatek\custom\star89_s116\k...
  • zlcchina
  • zlcchina
  • 2014年03月26日 17:16
  • 895

修改mtk平台power按键的gpio控制口

根据项目需要,现在需要将项目中的power按键原有的控制方式改成GPIO86口。 在原有的项目中,GPIO86原本是用来控制矩阵键盘中的一行,现在需要将dws文件进行相应的修改,需要将GPIO86的初...
  • qq_24614807
  • qq_24614807
  • 2017年05月13日 15:11
  • 676

MTK GPIO配置

转载:http://blog.csdn.net/mcgrady_tracy/article/details/40788873 如果需要定制GPIO口呢,需要使用mediatek/dct/DrvG...
  • richu123
  • richu123
  • 2016年04月21日 19:26
  • 1307
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于mtk GPIO口的定制
举报原因:
原因补充:

(最多只允许输入30个字)