基于Ubuntu的发行版中缺少modules.usbmap和modules.pcimap
我一直在学习内核编程并使用 Eudyptula challenge,而任务5要求我修改先前任务中的hello world模块,以便在插入USB键盘时自动加载,并在拔下键盘时卸载. 现在,为了它,我不会在这里发布我的代码,因为这对于这项任务来说将是一个巨大的破坏者,并会破坏其他人的乐趣.基本上,它的作用是: >创建一个struct usb_device_id数组,其中包含一个将我的模块绑定到任何USB键盘的条目 注册/取消注册例程正在运行.当我手动加载和卸载模块时,我得到了预期的调试消息. 我将模块复制到/ lib / modules / $(uname -r)并运行depmod -a.该模块被添加到modules.alias和modules.dep,但插入/拔出键盘时没有任何反应. 进一步的研究表明,我应该有一个由depmod生成的modules.usbmap文件,其中内核保持设备和驱动程序之间的映射加载.我的文件夹树中的任何地方都没有此文件.我也没有modules.pcimap.我检查了内核配置以确保启用了可加载模块支持,以及热插拔支持 – 它们是. 这是Kubuntu 14.04,带有自编译的3.16.0-rc5内核.我错过了什么?我已经完成了内核配置并检查了最明显的选项.我有点被困在这里.有任何想法吗? 你可能会遗漏两件事:1.)USB键盘通常不仅仅是通用USB设备,而是HID类设备. Linux将USB HID设备视为单独的子类.你考虑过这个吗? 2.)modules.usbmap和modules.pcimap仅存在一些旧版本的module / pci / usb实用程序.对于现代版本,相当于那些文件中的信息的信息包含在modules.alias中.您的研究材料可能已经过时. (编辑:岳阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |