c - 如何向 Linux 内核添加新的 Device 类

标签 c linux-kernel linux-device-driver

我是 Linux 设备驱动程序的新手,正在学习如何向现有设备类添加新的设备类。

  static struct class fpga = {
  .name = "fpga",
  .owner = THIS_MODULE,
  .dev_attrs = fpgaattrs,
  };
  1. 添加名为 fpga 的新设备类的正确方法是吗?
  2. 谁能解释一下设备类别的概念及其工作原理吗?

最佳答案

我一直用class_create() 。不幸的是,这个界面似乎比 LDD3 中记录的界面更新。 。我是从Essential Linux Device Drivers了解到的它是围绕 2.6.24 内核编写的,但本书并未在线发布。

当你想卸载你的模块时,你需要用class_destroy()再次销毁该类。 .

关于c - 如何向 Linux 内核添加新的 Device 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18981845/

相关文章:

sockets - Linux 内核 IPv4 和 IPv6 套接字创建 : EPROTONOSUPPORT and ESOCKTNOSUPPORT errors

linux - 在 Linux 中模拟硬盘驱动器

Linux在特定的物理地址分配内存

linux - 想要确保 tty 写入由给定时间戳推送到硬件 (UART) 或失败

c - 传递要在 C 函数中修改的动态分配矩阵

从函数更改 char 数组

c - 如何使用函数指针数组?

c++ - 程序结束后未释放的内存会怎样?

c - 为另一个架构重建 Linux 内核模块

linux - "linux kernel is preemptive"是什么意思?