int0文件夹
a) int0_driver.c中实现的主要函数:
int int0_open( void ) /* set int0 related gpio */
int int0_ioctl( unsigned int cmd, unsigned long arg ) //设置了int0各种控制参数
b) int0_api.c中实现的主要函数:
void int0_irq_handler( void )
// 包装了一层的中断处理函数,在调用用户给的处理函数后,清除中断
void int0_install_irq_hooker( void (*handler)(void) )
//提供给用户用来注册自己写的中断处理函数
int int0_init( void )
//初始化与中断有关的各种操作:请求中断号,设置中断模式,设置各种中断参数
其实这个实验主要目的是为了学习 linux 设备驱动的模型,并把它简化运用到 lumit 平台上,同时也是为其他做底层硬件测试和移植的朋友们提供一个可移植和可扩展的接口标准,尽量做到在针对自己特定的板子做移植时只用修改 xxx_driver.[ch] ,而把更多可扩展的部分留在 xxx_api.[ch] 中实现。