linux驱动常用头文件

ARM 122浏览
驱动程序:


#include <linux/***.h>
是在linux-2.6.29/include/linux下面寻找源文件。





#include <asm/***.h>
是在linux-2.6.29/arch/arm/include/asm下面寻找源文件。




#include
<mach/***.h>
是在linux-2.6.29/arch/arm/mach-s3c2410/include/mach下面寻找源文件。


#include <linux/module.h> 
 //最基本的文件,支持动态添加和卸载模块。Hello World驱动要这一个文件就可以了

#include <linux/fs.h>  
//包含了文件操作
相关struct的定义,示例大名鼎鼎的struct file_operations

#include <linux/errno.h> 

 //包含了对返回值的宏定义,这样用户程序可以用perror输出错误信息。

#include <linux/types.h>

  //对一些特殊类型的定义,示例dev_t, off_t,
pid_t.其实这些类型大部分都是unsigned int型通过一连串的typedef变过来的,只是为了方便阅读。

#include <linux/cdev.h>

  //对字符设备结构cdev以及一系列的操作函数的定义。

#include <linux/wait.h>

  //等代队列相关头文件


应用程序:



#include <fcntl.h> 

//包含了open()函数的flags,mode参数的宏定义。