注册了一些GPIO中断,同样的配置和操作方式,中断都显示注册成功,在GPIO电平发生变化时响应,有个别bank7的GPIO(GP7_14 GP7_11)中断始终都无法进入,用示波器量电平明明是有很明显的高低变化,百思不得其解,求指点。
部分代码如下:
for (i = 0; i < pData->auxKeyParam->gpioNum; i++)
{
ret = gpio_request(gpio, "aux_keypad");
if (ret)
{
printk(KERN_ERR "Request aux key gpio%d failed! ret = %d\n", gpio, ret);
return ret;
}
ret = gpio_direction_input(gpio);
}
ret = request_irq(gpio_to_irq(gpio), AuxiliaryKeyIsr,\
IRQF_DISABLED | IRQF_TRIGGER_RISING | IRQF_TRIGGER_FALLING,\
"auxiliaryKey", (void *)pKeypad);
cat /proc/interrupts 显示注册的中断都有
116: 6 GPIO auxiliaryKey
137: 0 GPIO matrixkeypad
140: 0 GPIO rotationKey
145: 0 GPIO auxiliaryKey
158: 0 GPIO matrixkeypad
161: 0 GPIO auxiliaryKey
167: 0 GPIO rotationKey
169: 0 GPIO matrixkeypad
224: 0 GPIO auxiliaryKey
227: 0 GPIO auxiliaryKey