Chinaunix

标题: 关于SPI驱动注册中,设备节点的问题,请高手解答 [打印本页]

作者: l289123557    时间: 2015-09-18 21:05
标题: 关于SPI驱动注册中,设备节点的问题,请高手解答
  1. static int __init spidev_init(void)
  2. {
  3.         int status;

  4.         /* Claim our 256 reserved device numbers.  Then register a class
  5.          * that will key udev/mdev to add/remove /dev nodes.  Last, register
  6.          * the driver which manages those device numbers.
  7.          */
  8.         BUILD_BUG_ON(N_SPI_MINORS > 256);
  9.         status = register_chrdev(SPIDEV_MAJOR, "spi", &spidev_fops);
  10.         if (status < 0)
  11.                 return status;

  12.         spidev_class = class_create(THIS_MODULE, "spidev");
  13.         if (IS_ERR(spidev_class)) {
  14.                 unregister_chrdev(SPIDEV_MAJOR, spidev_spi.driver.name);
  15.                 return PTR_ERR(spidev_class);
  16.         }

  17.         status = spi_register_driver(&spidev_spi);
  18.         if (status < 0) {
  19.                 class_destroy(spidev_class);
  20.                 unregister_chrdev(SPIDEV_MAJOR, spidev_spi.driver.name);
  21.         }
  22.         return status;
  23. }
复制代码
上面是spidev.c中的代码,我想问的是这段代码中,有两个注册函数 register_chrdev和spi_register_driver
,那是不是会创建两个设备节点啊




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2