static int major; //设备号
static struct class *###_class; //类
static struct class_device *i2c_edid_dev; //设备
static struct file_operations i2c_edid_fops = {
.owner = THIS_MODULE,
.open = ###_open,
.read = ###_read,
.write = ###_write,
.release = ###_release,
}
static int __init ###_init(void)
{
major = register_chrdev(0, "DEVICE_NAME", &###_fops); //注册设备
###_class = class_create(THIS_MODULE, "DEVICE_NAME"); //创建类
###_dev = device_create(###_class, NULL, MKDEV(major, 0), NULL, "DEVICE_NAME"); //创建设备
}
static void __exit ###_exit(void)
{
unregister_chrdev(major, "first_drv"); //注销设备号
device_destroy(###_class, MKDEV(major, 0)); //删除设备
class_destroy(###_class); //删除类
}