zoukankan      html  css  js  c++  java
  • Linux 内核设备注册

    通常的注册和注销函数在:

    int device_register(struct device *dev); void device_unregister(struct device *dev);

    我们已经见到 lddbus 代码如何注册它的总线类型. 但是, 一个实际的总线是一个设备并 且必须单独注册. 为简单起见, lddbus 模块只支持一个单个虚拟总线, 因此这个驱动在 编译时建立它的设备:

    static void ldd_bus_release(struct device *dev)

    {

    printk(KERN_DEBUG "lddbus release ");

     }

    struct device ldd_bus = {

    .bus_id = "ldd0",

    .release = ldd_bus_release

    };

    这是顶级总线, 因此 parent 和 bus 成员留为 NULL. 我们有一个简单的, no-op release 方法, 并且, 作为第一个(并且唯一)总线, 它的名子时 ldd0. 这个总线设备被 注册, 使用:

    ret = device_register(&ldd_bus); if (ret)

    printk(KERN_NOTICE "Unable to register ldd0 ");

    一旦调用完成, 新总线可在 sysfs 中 /sys/devices 下面见到. 任何加到这个总线的设 备接着在 /sys/devices/ldd0 下显示.

  • 相关阅读:
    nyoj67三角形面积
    hduoj1097A hard puzzle
    nyoj168房间安排
    nyoj73 比大小
    hduoj1021 Fibonacci Again
    hduoj1018 Big Number
    hduoj1108最小公倍数
    nyoj312 20岁生日
    hduoj1019 Least Common Multiple
    nyoj144小珂的苦恼
  • 原文地址:https://www.cnblogs.com/fanweisheng/p/11147844.html
Copyright © 2011-2022 走看看