zoukankan      html  css  js  c++  java
  • platform型设备在/dev目录下自动创建设备节点的分析【转】

    转自:http://blog.csdn.net/rockrockwu/article/details/7357648

    系统启动过程中platform设备、驱动注册完毕,为什么在/dev目录下就自动创建好设备节点了?

    在/dev目录自动创建设备节点可以通过class_create(),然后再device_create()。但是在跟踪

    内核platform注册过程中可以发现,其实这里面并未调用上诉两个函数,那么platform注册后

    如何在/dev目录下创建设备文件节点?

    [cpp] view plain copy
     
    1. int device_add(struct device *dev)  
    2. {  
    3.     ... ...  
    4.   
    5.     if (MAJOR(dev->devt)) {  
    6.         error = device_create_file(dev, &devt_attr);  
    7.         if (error)  
    8.             goto ueventattrError;  
    9.   
    10.         error = device_create_sys_dev_entry(dev);  
    11.         if (error)  
    12.             goto devtattrError;  
    13.   
    14.         devtmpfs_create_node(dev);  
    15.     }  
    16.   
    17.         ... ...  
    18. }  

    在device_add的过程中可以发现上诉代码,首先判断dev中是否有设备号,有的话就进行文件创建

    最后通过函数devtmpfs_dreate_node(dev)在/dev函数中创建设备节点。

  • 相关阅读:
    Java-二维码
    Java-properties
    Java-JSON
    Java-动态代理
    Java-XML
    Java-IO
    Java-File类
    Java-Http
    测试工作小工具~总结&下载连接
    Jenkins持续集成环境搭建
  • 原文地址:https://www.cnblogs.com/sky-heaven/p/5484056.html
Copyright © 2011-2022 走看看