3
有人能指點我一些示例代碼來啓用和處理Linux中的ARM9用戶引腳IO中斷(C語言)嗎?GPIO引腳linux中的中斷處理程序(arm)
我知道,可能需要一個底層驅動,我只是想獲得關於如何初始化它,然後在用戶級別等
我熟悉ARM的中斷處理消息的一些想法,和設備驅動程序(在Windows中),但我是Linux編程的新手。
謝謝
有人能指點我一些示例代碼來啓用和處理Linux中的ARM9用戶引腳IO中斷(C語言)嗎?GPIO引腳linux中的中斷處理程序(arm)
我知道,可能需要一個底層驅動,我只是想獲得關於如何初始化它,然後在用戶級別等
我熟悉ARM的中斷處理消息的一些想法,和設備驅動程序(在Windows中),但我是Linux編程的新手。
謝謝
這真的取決於您使用的實際BSP。 AFAIK在Linux中沒有「通用ARM9 gpio中斷」,它幾乎是特定於電路板的。例如。這裏是一個PCA100板的例子:
static int pca100_sdhc2_init(struct device *dev, irq_handler_t detect_irq,
void *data)
{
int ret;
ret = request_irq(IRQ_GPIOC(29), detect_irq,
IRQF_DISABLED | IRQF_TRIGGER_FALLING,
"imx-mmc-detect", data);
if (ret)
printk(KERN_ERR
"pca100: Failed to reuest irq for sd/mmc detection\n");
return ret;
}
static void pca100_sdhc2_exit(struct device *dev, void *data)
{
free_irq(IRQ_GPIOC(29), data);
}
非常感謝,這讓我走了! – tommessum 2010-12-08 12:19:40