阅读背景:

input子系统分析:2. 开机注册流程

来源:互联网 
=============================================
input 核心层: input.c 【注册流程】

static LIST_HEAD(input_dev_list);					// 定义全局链表 : input device
static LIST_HEAD(input_handler_list);				// 定义全局链表 : input handler

input_init()									// subsys_initcall()
	|
	class_register(&input_class)				// 将class注册到内核中,同时创建/sys/class/下节点,类似class_create()
	input_proc_init()							// 没啥用
		|
		proc_bus_input_dir = proc_mkdir("bus/input", NULL);								// 创建文件夹"/proc/bus/input"
		entry = proc_create("devices", 0, proc_bus_input_dir, &input_devices_fileops);	// 创建节点"/proc/bus/input/devices"
		entry = proc_create("handlers", 0, proc_bus_input_dir, &input_handlers_fileops);// 创建节点"/proc/bus/input/handlers"
	register_chrdev_region(MKDEV(INPUT_MAJOR, 0), INPUT_MAX_CHAR_DEVICES, "input");		// 根据要求申请主设备号,主设备号INPUT_MAJOR == 13
=============================================
i



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: