高通使用/system/bin/r读取msm8916的gpio配置

高通使用/system/bin/r读取msm8916的gpio配置


作者:Eliot shao 2016年12月22日


使用文档:

80-NK807-2X msm8916 software interface for oems.pdf


参考网页文档:

http://wenku.baidu.com/link?url=2u78OI8f8sSWyFSHKwmgZgmMJL4CK-8eQrZ0WRm6ZDUxiOUgrJq3HPJdNHdFMkEma2xiqF6e1mQCPaUv9-HllEhP-yWatCv9MS5eeHrvLxi 


目的:
通过直接读取gpio相应配置寄存器的值来分析对应gpio的配置情况


打开文档80-NK807-2X msm8916 software interface for oems.Pdf
找到 TLMM部分
重要的两个描述GPIO的寄存器:

 





 
 
Msm8916一共有122个GPIO, 每个GPIO均有这3个寄存器描述功能,包括输入输出,驱动电流,是否上拉或者下拉,中断功能。
以任意一个GPIO为例(gpio20):
20->14h
所以三个寄存器对应的地址为:
0x01000000+0x1000*14h = 0x01014000 
0x01000004+0x1000*14h = 0x01014004 
0x01000008+0x1000*14h = 0x01014008 
读取方法:
adb root 
adb shell
/system/bin/r 0x01014000         --》01014000: 00000201
/system/bin/r 0x01014004         --》01014004: 00000003
/system/bin/r 0x01014008         --》01014008: 000000e2


对于读出来数据的定义通过寄存器对每位数据的定义可以得出:
201h '1000000001 9bit=1 代表输出;6-8bit=0,驱动能力2mA;2-5位0,普通GPIO功能,参考下图;0-1位=1,下拉功能。
 
3h'0011 代表输出为高。
E2h'11100010 最低位为0,代表disable中断功能。
 

 





 



评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值