功能
:注册设备
原型 :
#include <linux.fs.h>
int register_chardev ( unsigned int major , const char * name , struct file_operations * fops )
说明 :register_chrdev 是注册设备驱动程序的内核函数。
变量:
major 值为 0 ,正常注册后,返回分配的主设备号。如果分配失败,返回 EBUSY 的负值 ( -EBUSY ) 。major 值若大于 linux/major.h (2.4内核)中声明的最大值 (#define MAX_CHRDEV 255) ,则返回EINVAL 的负值 (-EINVAL) 。指定 major 值后,若有注册的设备,返回 EBUSY 的负值 (-EBUSY)。若正常注册,则返回 0 值。
unregister_chrdev() -- 老版本字符设备注销函数
功能:注销设备
原型 :
#include <linux.fs.h>
int unregister_chrdev ( unsigned int major , const char * name )
说明:
注销设备驱动程序的内核函数
变量:
原型 :
#include <linux.fs.h>
int register_chardev ( unsigned int major , const char * name , struct file_operations * fops )
说明 :register_chrdev 是注册设备驱动程序的内核函数。
变量:
- major 主设备号,该值为 0 时,自动分配主设备号,主设备号为该函数的返回值。
- name 设备名称;
- fops file_operations 结构体变量地址(指针)。
major 值为 0 ,正常注册后,返回分配的主设备号。如果分配失败,返回 EBUSY 的负值 ( -EBUSY ) 。major 值若大于 linux/major.h (2.4内核)中声明的最大值 (#define MAX_CHRDEV 255) ,则返回EINVAL 的负值 (-EINVAL) 。指定 major 值后,若有注册的设备,返回 EBUSY 的负值 (-EBUSY)。若正常注册,则返回 0 值。
unregister_chrdev() -- 老版本字符设备注销函数
功能:注销设备
原型 :
#include <linux.fs.h>
int unregister_chrdev ( unsigned int major , const char * name )
说明:
注销设备驱动程序的内核函数
变量:
- major 主设备号
- name 设备文件