linux驱动开发扩展--misc类设备驱动框架详解

本文详细介绍了Linux内核中的misc类设备驱动框架,包括misc_init、proc_create、class_create、register_chrdev等步骤。通过misc_list链表管理设备,并探讨了file_operations在驱动中的作用,以及misc_register过程中的设备号分配和动态创建。
摘要由CSDN通过智能技术生成

 misc_init

static int __init misc_init(void)
{
	int err;

#ifdef CONFIG_PROC_FS
	proc_create("misc", 0, NULL, &misc_proc_fops);
#endif
	misc_class = class_create(THIS_MODULE, "misc");
	err = PTR_ERR(misc_class);
	if (IS_ERR(misc_class))
		goto fail_remove;

	err = -EIO;
	if (register_chrdev(MISC_MAJOR,"misc",&misc_fops))
		goto fail_printk;
	misc_class->devnode = misc_devnode;
	return 0;

fail_printk:
	printk("unable to get major %d for misc devices\n", MISC_MAJOR);
	class_destroy(misc_class);
fail_remove:
	remove_proc_entry("misc", NULL);
	return err;
}
  • proc_create创建misc设备在proc文件系统下的相关的东西 
  • class_create创建misc类,在/sys/class目录下会生成misc文件夹
  • register_chrdev注册misc设备,cat /proc/devices可以看到所有已经注册了的设备

misc_proc_fops

static const struct file_ope
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值