驱动调试技巧:查看gpio状态

1、GPIO的配置和使用是驱动人必须具备的一项技能

2、常见的GPIO(以gpio-key为例)dtb配置如下:

gpio-keys {
                compatible = "gpio-keys";
                autorepeat;

                pinctrl-names = "default";
                pinctrl-0 = <&pinctrl_gpio_keys>;

                key_btn_0 {
                        label = "btn_0";
                        linux,input-type = <1>;
                        linux,code = <0x100>;
                        gpios = <&gpio1 0 GPIO_ACTIVE_HIGH>;
                };
        };


 pinctrl_gpio_keys: gpio_keys {
                fsl,pins = <
                        MX8MP_IOMUXC_GPIO1_IO00__GPIO1_IO00    0X20
                >;
        };

3、通过控制台命令 cat /sys/kernel/debug/gpio 查看gpio使用状态,如下:

evk_8mp:/ # cat /sys/kernel/debug/gpio                                                                                                                                                                     
gpiochip0: GPIOs 0-31, parent: platform/30200000.gpio, 30200000.gpio:
 gpio-0   (                    |btn_0               ) in  lo IRQ 
 gpio-1   (                    |gpio0-1             ) in  lo 
 gpio-2   (                    |gpio0-2             ) in  hi 
 gpio-3   (                    |gpio0-3             ) in  lo IRQ 
 gpio-5   (                    |gpio0-5             ) in  hi 
 gpio-6   (                    |gpio0-6             ) in  lo 
 gpio-7   (                    |gpio0-7             ) in  lo 
 gpio-8   (                    |enable              ) out hi 

gpiochip1: GPIOs 32-63, parent: platform/30210000.gpio, 30210000.gpio:
 gpio-44  (                    |cd                  ) in  hi IRQ ACTIVE LOW

gpiochip2: GPIOs 64-95, parent: platform/30220000.gpio, 30220000.gpio:

gpiochip3: GPIOs 96-127, parent: platform/30230000.gpio, 30230000.gpio:
 gpio-96  (                    |hw_wdt_vcc          ) out hi 
 gpio-106 (                    |yellow:status       ) out hi 
 gpio-107 (                    |enable              ) out hi 
 gpio-108 (                    |reset-gpio          ) out hi 
 gpio-109 (                    |irq-gpio            ) in  hi IRQ 
 gpio-112 (                    |tp_vcc              ) out hi 
 gpio-114 (                    |amp                 ) out hi 
 gpio-115 (                    |watchdog            ) out hi ACTIVE LOW
 gpio-116 (                    |eeprom-wp           ) out hi 
 gpio-117 (                    |BT power enable     ) out hi 
 gpio-123 (                    |regulator-can2-stby ) out lo 
 gpio-125 (                    |regulator-audio-pwr ) out hi 

gpiochip4: GPIOs 128-159, parent: platform/30240000.gpio, 30240000.gpio:
 gpio-133 (                    |regulator-can1-stby ) out lo 
 gpio-135 (                    |SD2_VCC_EN          ) out hi 
 gpio-138 (                    |regulator-usdhc2    ) out lo 
 gpio-141 (                    |spi0 CS0            ) out hi ACTIVE LOW
evk_8mp:/ # 

4、通过命令,可以很清楚的看到我们配置的btn_0的状态

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值