查看: 1792|回复: 0

[经验] IMX6UL查看GPIO是否被占用

[复制链接]
  • TA的每日心情
    奋斗
    2021-12-3 10:17
  • 签到天数: 64 天

    连续签到: 1 天

    [LV.6]常住居民II

    发表于 2019-3-14 17:22:30 | 显示全部楼层 |阅读模式
    分享到:
    主机平台: UBUNTU14.04
    硬件平台:IMX6-EK140P (其他平台也是)
    编译器:      gcc-linaro-ARM-linux-gnueabihf-4.9-2014.09_linux.tar.xz
    buildroot版本:buildroot-2017.02.5.tar.bz2
    内核版本     linux-4.1.15


    配置内核CONFIG_GPIO_SYSFS
    假如测试GPIO端口是129,如下:
    echo 129 > /sys/class/gpio/export
    -sh: echo: write error: Device or resource busy

    查看内核是否占用了某个管脚,需要配置
    Kernel hacking —>
    -*- Debug Filesystem


    下载重启后,可以看到/sys/kernel/debug/目录,
    使用以下命令看内核使用了哪些GPIO,如下:
    (如果没有/sys/kernel/debug/相关目录,需要mount -t debugfs debug /debugfs挂载
    root@myimx6ek140p:~# cat /sys/kernel/debug/gpio
    GPIOs 0-31, platform/209c000.gpio, 209c000.gpio:

    GPIOs 32-63, platform/20a0000.gpio, 20a0000.gpio:

    GPIOs 64-95, platform/20a4000.gpio, 20a4000.gpio:

    GPIOs 96-127, platform/20a8000.gpio, 20a8000.gpio:
    gpio-118 (spi_imx             ) out lo   
    gpio-122 (spi_imx             ) out lo   

    GPIOs 128-159, platform/20ac000.gpio, 20ac000.gpio:
    gpio-129 (?                   ) out lo   
    gpio-132 (?                   ) out lo   
    gpio-135 (headphone detect    ) in  lo   
    gpio-136 (?                   ) out lo   


    通过上面的信息,可以看到gpio-129已经被内核注册了,建议如果要使用gpio-129这个管脚,
    需要在内核源码或设备树屏蔽掉gpio-129的相关注册信息,这样就可以用echo 129 > /sys/class/gpio/export
    命令来测试了

    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-4-26 06:33 , Processed in 0.112849 second(s), 15 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.