小米、iPhone、HTC等是:L、R、GND、MIC。
MTK 平台目前支持第一种:L、R、MIC、GND。 (对于一般3线制耳机MTK也支持)。
2.DCT配置GPIO的设置/初 始化:
1)当配置GPIO时,有的有勾选M0~M7中的两个,甚至有的还需要勾选勾选多个?最后GPIO配置成了 哪个功能呢?
(1) GPIO在系统初始化后的mode是由Def.Mode这一栏决定的。
(2) 如果勾选了M0-M7中的某些项,则会生成类似 #define GPIO_UART_UTXD4_PIN_M_GPIO GPIO_MODE_00
这样的宏定义,在code中可以直接使用。
(3) 但是系统初始化后的mode还是以Def.Mode这一栏的选择为准。
2)当配置成NC的gpio实际开机后是个什么状态?
通常是Mode 0,GPIO Mode,输入模式,使能内部下拉。
3) 修改了DCT中的GPIO Setting后,怎样编译?
./mk [Project_Name] new preloader
./mk [Project_Name] new uboot/lk
./mk [Project_Name] new kernel
./mk [Project_Name] bootimage
4)MT6589的dct配置的参数是在代码的哪个地方生效?
LK中生效, 具体位置如下:mediatek/platform/mt6589/lk/mt_gpio_init.c 函数为void platform_early_init(void)--> mt_gpio_set_default();
3. 读取和修改GPIO配置参数的 ADB命令
4.耳机检测
82以及之后的平台,请一定要用EINT+ACCDET方式进行耳机检测。
5.Headset accdet常用宏:
在accdet.c和accdet_custome.h为了实现一些功能有用到很多宏开关,把目前相应的宏开关介绍如下 :
1: ACCDET_EINT
是否启用了外部中断来侦测是否有耳机插入和拔出
2: ACCDET_MULTI_KEY_FEATURE
是否支持使用A/D来侦测key,这里要注意的是即使耳机只有一个key若是在89的平台也需打开此宏 开关
3: ACCDET_LOW_POWER
当插入三段耳机6s后自动关闭micbias,达到省电的目的
以上三个宏可以看成一个宏
4: ACCDET_28v_MODE
在我们内部有一个switch是针对外部耳机是用2.8还是1.9V的切换开关,美标的是2.8V, 国标的是 1.9V
5: ACCDET_PIN_RECOGNIZATION
美标的插孔识别国标的耳机,国标的耳机识别美标的插孔,目前这个功能还没有实现,此宏不能打开
6: ACCDET_SHORT_PLUGOUT_DEBOUNCE
ACCDET_SHORT_PLUGOUT_DEBOUNCE_CN 25
拔出耳机后有时候图标会再弹出后在消失, 主要解决类似bug
7: ACCDET_PIN_SWAP
美标的插孔识别国标的耳机,这个时候需要借助accdet的一个上拉电阻,当有这种情形的时候AB一 直为0,达到检测到的目的,当然也有误判的时候, 4段耳机按住按键插入后会有误判
6.如何配置PMIC 上的RST_KEY
alps/mediatek/custom/$PRJ/kernel/kpd/kpd/mtk_kpd.h
配成 vol- :
#define KPD_PMIC_RSTKEY_MAP KEY_VOLUMEDOWN
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/shumachanpin/article-55851-10.html
美帝得逞了
但是涉及国家利益的时候