有时需要查看GPIO 被哪个模块占用,需要打印LOG分析

打开debug 开关:

文件:alps/kernel-4.9/driver/pinctrl/mediatek/pinctrl-mtk-common.h

#define GPIO_DEBUG

在文件:alps/kernel-4.9/driver/pinctrl/mediatek/pinctrl-mtk-common.c

static int mtk_pinctrl_set_gpio_mode(struct mtk_pinctrl *pctl,
    int pin, unsigned long mode)
{
#ifndef GPIO_DEBUG
    return mtk_pinctrl_update_gpio_value(pctl, pin, mode,
        pctl->devdata->n_pin_mode, pctl->devdata->pin_mode_grps);
#else
    pr_info("config pin = %d, mode = %d\n", pin, (int)mode);

if(pin == 105) //可以添加需要配置的gpio进行dump抓取
        dump_stack();
        
    mtk_pinctrl_update_gpio_value(pctl, pin, mode,
        pctl->devdata->n_pin_mode, pctl->devdata->pin_mode_grps);
    pr_info("set pin = %d, mode = %d\n", pin,
        mtk_pinctrl_get_gpio_mode(pctl, pin));
    return 0;
#endif
}

分析log,

cat /poc/kmsg

......

[    1.461597] <0>.(1)[1:swapper/0]m300_probe: ~~~~~Enter!!                   
[    1.461612] <0>.(1)[1:swapper/0]m300_parse_dt: restGPIO: 383               
[    1.461616] <0>.(1)[1:swapper/0]m300_parse_dt: power GPIO: 444             
[    1.461630] <0>.(1)[1:swapper/0]config pin = 112, mode = 0                   
[    1.461637] <0>.(1)[1:swapper/0]set pin = 112, mode = 0                      
[    1.461648] <0>.(1)[1:swapper/0]config pin = 102, mode = 0                   
[    1.461653] <0>.(1)[1:swapper/0]set pin = 102, mode = 0

......

可见m300模块占用了gpio112,gpio102

MTK Kernel-4.9 GPIO占用分析方法相关推荐

  1. Android 系统(126)---Android的死机、重启问题分析方法

    Android的死机.重启问题分析方法 阅读数:11986 Android的死机.重启问题分析方法 1.     死机现象 1.1      死机定义 当手机长时间无法再被用户控制操作时,我们称为死机 ...

  2. Android的死机、重启问题分析方法

    Android的死机.重启问题分析方法 原文链接:https://blog.csdn.net/jinlu7611/article/details/50592385 1.死机现象 1.1 死机定义 当手 ...

  3. 从上到下的系统架构分析方法 - Intel PMU

    来源:内核月谈 layout: Top-down Microarchitecture Analysis Method 原文链接 1,https://www.intel.com/content/dam/ ...

  4. linux源代码分析视频教程,linux源代码分析方法谈

    Linux的最大的好处之一就是它的源码公开.同时,公开的核心源码也吸引着无数的电脑爱好者和程序员:他们把解读和分析Linux的核心源码作为自己的最大兴趣,把修改Linux源码和改造Linux系统作为自 ...

  5. linux内核运行在实模式还是,Linux内核分析方法谈

    Linux的最大的好处之一就是它的源码公开.同时,公开的核心源码也吸引着无数的电脑爱好者和程序员:他们把解读和分析Linux的核心源码作为自己的最大兴趣,把修改Linux源码和改造Linux系统作为自 ...

  6. windows2008开机占用多少内存_Android内存占用分析

    思考的问题: 1.为什么/proc/meminfo中的内存总大小比物理内存小? 2.怎么看Android还剩多少可用内存比较准确? 3.怎么看Kernel的内存占用比较准确? 4.是哪些因素影响了Lo ...

  7. Linux内核源码分析方法

    说明:这是一个刚接触内核三个月的同学,通过对一个内核特性的分析,总结出一套分析内核的方法. 一.内核源码之我见 Linux内核代码的庞大令不少人"望而生畏",也正因为如此,使得人们 ...

  8. arm引脚复用linux,ARM知识分享-i.MX6Q GPIO复用修改方法

    平台:OKMX6Q-S2 系统:Linux 内核版本:Linux-3.0.35 i.MX6Q GPIO复用修改方法,验证平台为飞凌嵌入式OKMX6Q-S2开发板,基于ARM Corte-A9 架构,i ...

  9. Android 系统(211)---Power键不亮屏分析方法

    Power键不亮屏分析方法 亮屏流程 (1)  以下是列出的整个按键唤醒的log关键点,每条都有粗体字说明其含义以及该注意的关键字: (2)  一条一条依次检查,直到如果发现某条log找不到,那问题就 ...

最新文章

  1. ACMNO.14一球从M米高度自由下落,每次落地后返回原高度的一半,再落下。 它在第N次落地时反弹多高?共经过多少米? 保留两位小数 输入 M N 输出 它在第N次落地时反弹多高?共经过多少米
  2. 查找数组里相同元素的个数
  3. 第十五届智能车竞赛东北赛区普通四轮组冠军车-哈尔滨工业大学-紫丁香
  4. python画折线图代码-python绘制简单折线图代码示例
  5. 费马小定理与素数判定
  6. linux live cd ubuntu,在Windows 7上体验Ubuntu Live CD
  7. select默认选中的option_macOS下妙用option按键
  8. 技术实践丨GaussDB(DWS)运维管理功能“升级”的原理和使用
  9. 怎么查看任天堂账号是哪个服务器的,科普:任天堂账号和NS的本地用户有什么区别?...
  10. Win2012 R2 IIS8.5+PHP(FastCGI)+MySQL运行环境搭建教程
  11. atitit.java给属性赋值方法总结and BeanUtils 1.6.1 .copyProperty的bug
  12. 如何在linux运行exe文件,在Deepin系统下直接运行exe文件的方法
  13. 想对可以使用的adblock插件感谢!!
  14. 判断输入的字符与已知字符相等_你会输入带圈字符吗?
  15. 二叉搜索树前序序列转后序序列(或相反)
  16. 802.11e规范的服务质量保障机制
  17. linux配置文件如何排序,Linux系统中sort排序命令的使用教程
  18. 2020-11-25 多行文本或段落的折叠与展开
  19. 企业wifi管家——让天下没有难管的wifi
  20. 【数学模型】层次分析

热门文章

  1. Wipro Limited任命Rishad Premji为执行董事长
  2. 51.com 对于6个月未登录的用户,相册进行清空处理
  3. Windows下RStudio的下载与安装教程
  4. 2010年F1大奖赛巴林揭幕战
  5. LFI/RFI漏洞相关
  6. MT7628开发环境搭建
  7. 学习linux的网站
  8. NBIOT 设备接入ONENET平台
  9. 【精益生产】精益知识大全
  10. 绝世唐门漫画的王秋儿