- 积分
- 69
贡献357
飞刀122 FD
注册时间2016-8-10
在线时间15 小时
扫一扫,手机访问本帖
|
我用IMX6DL 要写一个外部中断驱动程序,用request_irq(SABRESD_POWER_OFF, buttons_irq, IRQF_TRIGGER_FALLING|IRQF_TRIGGER_RISING, "S2", NULL);注册中断失败,跟踪发现是在
request_threaded_irq函数中的
if (!irq_settings_can_request(desc))
{
return -EINVAL;
}
这里返回出错的,这问题是出在哪里呢?
这是因为这个IO口已经注册过了吗? 可是我已经这个io口原来的驱动注释了啊,
static struct gpio_keys_button imx6q_buttons[] = {
GPIO_BUTTON(SABRESD_VOLUME_UP, KEY_VOLUMEUP, 1, "volume-up", 0, 1),
GPIO_BUTTON(SABRESD_VOLUME_DN, KEY_VOLUMEDOWN, 1, "volume-down", 0, 1),
//GPIO_BUTTON(SABRESD_POWER_OFF, KEY_POWER, 1, "power", 1, 1),
};
这样做对吗?
|
|