Linux input子系统框架分析

subsys_initcall(input_init)  /* 在kernel启动时候加载,进入input_init函数*/
    
    static int __init input_init(void) /* input系统的入口函数*/
                  

/*input_init分析之第1部分*/
	1、err = class_register(&input_class);   /*注册class类*/
             __class_register(class, &__key);
             /*__class_register主要包含以下部分*/   
              struct subsys_private *cp = kzalloc(sizeof(*cp), GFP_KERNEL);/*分配内存;subsys_private结构体用于描述系统中所有的设备集合 的合集,现在是用来描述sys/devices/目录下的设备*/
               error = kset_register(&cp->subsys);/*注册kset,kset用于描述subsys和kobject之间的桥梁*/
               ......... /*构造需要创建的cls类结构体参数*/
               error = add_class_attrs(class_get(cls));/*创建class类*/



/*input_init分析之第2部分*/
     err = input_proc_init();     /*创建proc信息;主要包含下面三个部分*/
           proc_bus_input_dir = proc_mkdir("bus/input", NULL);    /*proc_bus_input_dir proc目录结构体指针,创建proc/bus/input目录 */ 
            entry =
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值