zoukankan      html  css  js  c++  java
  • module_i2c_driver

    #define module_i2c_driver(__i2c_driver)
    module_driver(__i2c_driver, i2c_add_driver,
    i2c_del_driver)

    #define i2c_add_driver(driver)
    i2c_register_driver(THIS_MODULE, driver)

    module_driver():

    #define module_driver(__driver, __register, __unregister, ...)
    static int __init __driver##_init(void)
    {
    return __register(&(__driver) , ##__VA_ARGS__);
    }
    module_init(__driver##_init);
    static void __exit __driver##_exit(void)
    {
    __unregister(&(__driver) , ##__VA_ARGS__);
    }
    module_exit(__driver##_exit);

    理解上述宏定义后,将module_i2c_driver(adxl34x_driver)展开就可以得到:

    static int __int adxl34x_driver_init(void)
    {
    return i2c_register_driver(&adxl34x_driver);
    }
    module_init(adxl34x_driver_init);
    static void __exit adxl34x_driver_exit(void)
    {
    return i2c_del_driver(&adxl34x_driver);
    }
    module_exit(adxl34x_driver_exit);

  • 相关阅读:
    I/O流
    宇宙第一帅的HTML笔记
    宇宙无敌第一帅的Java笔记
    Activity常用的方法
    Spinne
    安卓布局方式
    for循环
    TextView
    开发Activity步骤
    重写
  • 原文地址:https://www.cnblogs.com/under/p/10620724.html
Copyright © 2011-2022 走看看