乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      linux系統(tǒng)初始化攝像頭I2C驅(qū)動

       ldjsld 2015-11-20
      閱讀linux的ov2655的驅(qū)動程序時,并沒有發(fā)現(xiàn)I2C驅(qū)動的初始化函數(shù)i2c_add_driver,只是定義了
      static struct v4l2_i2c_driver_data v4l2_i2c_data =
      {
          .name = S5K4BA_DRIVER_NAME,
          .probe = ov2655_probe,
          .remove = __devexit_p(ov2655_remove),
          .id_table = ov2655_id,
      };

      其實相關(guān)I2C初始化函數(shù)在v4l2-i2c-drv.h里I2C攝像頭驅(qū)動程序都會包含該文件#include <media/v4l2-i2c-drv.h>

      該文件代碼很簡單,I2C驅(qū)動初始化如下:
       

      static int __init v4l2_i2c_drv_init(void)
      {
          //其中的v4l2_i2c_data就是前面提到的在ov2655驅(qū)動里定義結(jié)構(gòu)體。
          v4l2_i2c_driver.driver.name = v4l2_i2c_data.name;
          v4l2_i2c_driver.command = v4l2_i2c_data.command;
          v4l2_i2c_driver.probe = v4l2_i2c_data.probe;
          v4l2_i2c_driver.remove = v4l2_i2c_data.remove;
          v4l2_i2c_driver.suspend = v4l2_i2c_data.suspend;
          v4l2_i2c_driver.resume = v4l2_i2c_data.resume;
          v4l2_i2c_driver.id_table = v4l2_i2c_data.id_table;
          return i2c_add_driver(&v4l2_i2c_driver);
      }
      
      
      static void __exit v4l2_i2c_drv_cleanup(void)
      {
          i2c_del_driver(&v4l2_i2c_driver);
      }
      
      module_init(v4l2_i2c_drv_init);
      module_exit(v4l2_i2c_drv_cleanup);

        本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多