请教S5PV210的GPIO中断问题

时间:2021-11-29 04:12:43
大家好, 我想用S5PV210的GPG2_5这个寄存器组的GPIO来做中断。看datasheet上说,需要把 管教配置成中断模式, 我也配置了,可是运行还是没有效果,这个,以下是我的配置,请大家帮忙看下问题在哪里,谢谢!



 int ret;
ret=gpio_request(S5PV210_GPG2(5), "GPG2_5");
  if(ret==0){
   printk("kkkk: gpio_request success!\n");
  }else{
  printk("kkk: gpio_request error----\n");
  }  
  s3c_gpio_cfgpin(S5PV210_GPG2(5), S3C_GPIO_SFN(0xf));
  udelay(100);
  s3c_gpio_setpull(S5PV210_GPG2(5), S3C_GPIO_PULL_NONE);
  udelay(100);
  set_irq_type(gpio_to_irq(S5PV210_GPG2(5)), IRQ_TYPE_EDGE_BOTH);
  
ret = request_irq(gpio_to_irq(S5PV210_GPG2(5)), KeyOFN_isr, IRQ_TYPE_EDGE_BOTH, "OFN0", NULL);
if (ret){
printk(KERN_ERR "=====request_irqrequest_irqrequest_irq==t\n");
}

2 个解决方案

#1


把这两个家伙去掉:
ret=gpio_request(S5PV210_GPG2(5), "GPG2_5");
set_irq_type(gpio_to_irq(S5PV210_GPG2(5)), IRQ_TYPE_EDGE_BOTH);

使用中断功能,申请 gpio 干嘛!

#2


谢谢, 我把这个去掉了,也不行, 还是中断没有相应。

#1


把这两个家伙去掉:
ret=gpio_request(S5PV210_GPG2(5), "GPG2_5");
set_irq_type(gpio_to_irq(S5PV210_GPG2(5)), IRQ_TYPE_EDGE_BOTH);

使用中断功能,申请 gpio 干嘛!

#2


谢谢, 我把这个去掉了,也不行, 还是中断没有相应。