linux-device-driver

    0热度

    2回答

    我想在PCIe FPGA设备的设备驱动程序中调试一些有点奇怪的问题。设备驱动程序和FPGA图像都是在家中开发的。 目标系统是x86,操作系统是fedora 9.它有一个PCIe卡,FPGA中只插入了PCIe插槽。从EEPROM启动后加载FPGA映像。 驱动程序的编写方式是使用/sys/bus/pci/devices/0000:02:00.0/资源文件(其中0000:02:00.0是包含FPGA的卡

    2热度

    1回答

    我有几个问题与SKB有关。当我们尝试使用alloc_skb()分配skb时,将分配与skb相关的所有标题,例如l4标题,l3标题,l2标题等,我已经看到sizeof(struct sk_buff)为这必须与所有标题 - 我是否正确? skb的内容将与所有标题相连(考虑一个没有任何片段的衬垫skb)。正确? 分散聚集(SG) - 一种硬件功能,用于从不同存储器位置获取数据以复制(DMA)到设备内存。

    2热度

    1回答

    让角色出现在/ dev中的最佳方式是什么?我有一个调用register_chrdev的驱动程序,当我加载模块时,我在/ proc/devices中看到了条目。但是,我仍然需要在命令行上调用mknod才能使其显示在/ dev中。 有没有一种很好的方式在模块加载时执行此程序盟友?

    0热度

    2回答

    如果驱动程序调用pcim_enable_device(),然后使用pcim_iomap(),devm_request_irq()和其他托管调用来分配硬件资源,驱动程序如何告诉内核释放这些资源? pcim_release不是导出的符号,所以其他的东西必须导致devres_free()被调用。但是什么? 注意:我不需要指导如何手动释放资源。我想知道如何让devres子系统释放一切。毕竟,这就是它的目的

    0热度

    1回答

    在20世纪80年代的计算机杂志(Kilobaud?Creative Computing?)中有一篇文章描述了按键如何发出关键代码,它如何通过设备驱动程序,转换为ASCII代码,通过事件处理程序发送,等等等等,并最终以应用程序通过stdin(或某些等价物)接收的字节(或其他)结束。该应用程序用它做了什么超出了本文的范围。这篇文章很有趣,更多的是为了展示当时操作系统和设备驱动程序的复杂性,而不是技术上

    2热度

    1回答

    我收到如下内核崩溃。在这里我可以观察到大型内存存在于unvictablle页面中。 我想知道何时将内存添加到不可修复的页面列表中。 另外,从下面的消息我可以理解,只有1724kB在系统中可用。 是正确的吗? kswapd0: page allocation failure. order:0, mode:0xd0 [<c002aed4>] (unwind_backtrace+0x0/0xdc) f

    9热度

    5回答

    我想获得更多关于使用C++ for Linux框架来编写图形设备驱动程序和音频设备驱动程序的更多细节。 我是开发设备驱动程序的新手,请提供相同的开发/文档详细信息。 感谢 -Pravin

    1热度

    4回答

    我必须每秒从Linux内核模块向用户空间传输数兆字节的数据,并且我不希望错过来自模块的任何消息if我从中读取。 这样做的最好方法是什么? 这里有很多可能的解决方案:命名管道,proc文件和块设备 但我不确定哪一个可以选择,哪一个承诺最好的性能,因为我是一个内核新手。 目前我在内核模块中使用Ring-Buffer(带有自旋锁)来存储消息,并且如果正在读取Proc文件,我将来自Ring-Buffer的

    0热度

    2回答

    我试图编译给出了here 我按照以下步骤一个Hello World模块。 下载Linux内核2.6.35-RC5 提取到目录/普通/源极/ Linux的 遵循的整个内核。 在linux文件夹中创建了dir测试。 创建并遵守上面提到的hello world模块。 当我运行insmod命令,我得到这个错误 insmod: error inserting 'hello.ko': -1 Invalid m

    0热度

    1回答

    我有一个需要它,而无需等待重新枚举 的使用情况是这样的 被insmoded后装载一个USB内核模块USB驱动程序 - 构建并insmod内核模块。 - 用户必须插入USB设备,那么他/她预计该设备工作 -The驱动程序存在(modprobe的秀),但没有加载,因此USB设备无法正常工作 是否有办法我可以强制内核重新启动一个给定的设备,我目前正在查看libusb,它似乎通过发布IOCTL来实现类似的