我在我的 ASUS FX505DT 上运行 Kubuntu 19.10(KDE + i3wm)。
\n\n我可以XF86RFKill使用 i3wm 绑定密钥bindsym,但此绑定似乎不会取消 Linux 切换飞行模式的内置绑定。
这是xev我按Fn+时返回的内容F12,应该触发XF86RFKill:
MappingNotify event, serial 48, synthetic NO, window 0x0,\n request MappingKeyboard, first_keycode 8, count 248\n\nFocusOut event, serial 48, synthetic NO, window 0x7a00001,\n mode NotifyGrab, detail NotifyAncestor\n\nFocusOut event, serial 48, synthetic NO, window 0x7a00001,\n mode NotifyUngrab, detail NotifyPointer\n\nFocusIn event, serial 48, synthetic NO, window 0x7a00001,\n mode NotifyUngrab, …Run Code Online (Sandbox Code Playgroud) 启用 Debian 测试和 SecureBoot 后:
我需要签署 VirtualBox 模块,如命令的输出vboxconfig所示:
vboxdrv.sh: Stopping VirtualBox services.
vboxdrv.sh: Starting VirtualBox services.
vboxdrv.sh: You must sign these kernel modules before using VirtualBox:
vboxdrv vboxnetflt vboxnetadp
See the documenatation for your Linux distribution..
vboxdrv.sh: Building VirtualBox kernel modules.
vboxdrv.sh: failed: modprobe vboxdrv failed. Please use 'dmesg' to find out why.
There were problems setting up VirtualBox. To re-start the set-up process, run
/sbin/vboxconfig
as root. If your system is using EFI Secure Boot you may …Run Code Online (Sandbox Code Playgroud) 我使用的是 Debian 10.8 和 Linux 内核 4.19.0-14。
我正在尝试使用 IOMMU 传递整个 USB 控制器(PCI Express 卡),但遇到问题。内核正在加载 ohci_pci 和 ehci_pci 驱动程序,我似乎无法阻止它或取消绑定它们。
我尝试删除它们(echo 1 > /sys/bus/pci/devices/...),但它冻结了系统。(内核通过堆栈跟踪等显示内核 BUG)
因此,我试图阻止内核绑定 ohci 和 ehci 驱动程序,以便 VFIO 可以使用它们而无需先解除绑定。
我尝试了几件事:
我认为内核正在使用内置的 ohci/ehci 驱动程序(而不是模块),因此也许它会在 pci-stub 或 vfio 阻止之前加载这些驱动程序?
我面临的问题的简短背景。我正在致力于使用 USB 桥接器 FT260 实现同步 UART/I2C 操作。该芯片依靠 HID 报告来提供这些功能。插入后,hid 通用驱动程序会检测两个接口:0 和 1,第一个用于 I2C,第二个用于 UART。目前,我有支持 I2C的 FT260 驱动程序,仅作为模块加载(即hid-ft260),并且工作正常。然后后者接管了 hid-generic,我认为usbhid对此负责。lsusb -t返回:
|__ Port 2: Dev 3, If 1, Class=Human Interface Device, Driver=usbhid, 12M
|__ Port 2: Dev 3, If 0, Class=Human Interface Device, Driver=usbhid, 12M
Run Code Online (Sandbox Code Playgroud)
dmesg启动时显示如下:
hid-generic 0003:0403:6030.0001: hidraw0: USB HID v1.11 Device [FTDI FT260] on usb-xhci-hcd.1.auto-1.2
hid-generic 0003:0403:6030.0002: hidraw1: USB HID v1.11 Device [FTDI FT260] on usb-xhci-hcd.1.auto-1.2
ft260 0003:0403:6030.0001: hidraw0: USB …Run Code Online (Sandbox Code Playgroud) 我正在为输入设备构建内核模块,我注意到在模块源代码中,有几个对 的调用input_get_keycode(data->input_dev, scancode, &keycode);当我编译时,我收到错误,表明该原型没有功能。
查看input/input.c源代码,这是的定义input_get_keycode:
int input_get_keycode(struct input_dev *dev, struct input_keymap_entry *ke)
Run Code Online (Sandbox Code Playgroud)
我试图在网上查看,我发现了一些晦涩的参考资料,以更改内核以更好地处理大型键盘映射,显然该功能已更改以更好地处理该问题。查看来自 input/input.c 的旧源,该input_get_keycode函数被定义为
int input_get_keycode(struct input_dev *dev, unsigned int scancode, unsigned int *keycode)
Run Code Online (Sandbox Code Playgroud)
我的问题是,这是什么时候改变的。有没有关于更改的注释?我正在ubuntu natty从 git构建内核,这是我对2.6.37-rc3分支的理解。
这是特定于 ubuntu 的更改吗?或者这是主线内核的变化。我也有maverick来自 git的源代码,它具有旧式(3 输入)功能。
我下载了我的内核的源代码,应用了一个补丁并重建了它,现在我有一个内核模块,当我尝试时insmod,它会抱怨“模块中的未知符号”并dmesg给出错误“不同意符号的版本......” .
无需寻找此模块的源代码并针对我的内核重建它,是否有可能以某种方式强制内核接受此模块?
我意识到这很危险,但如果可能的话,我会冒险。
如何获取有关内核模块的更多信息,例如详细描述?
例如,我可以看到像lpor这样的内核模块hid,但是这些短代码对我来说没有任何用处。
我已经安装了一个带有两个串行端口和一个并行端口的 PCI 卡。芯片组是MCS9865。我从这里下载了最新的驱动程序(V1.0.12)。我跑make和make install。现在两个串口是/dev/ttyD0和/dev/ttyD1。我已经对它们进行了测试,picocom并且运行良好。问题是,当我重新启动系统时,没有/dev/ttyD0和/dev/ttyD1。我需要做另一个make install。有什么解决办法吗?
输出lspci -v显示:
03:01.0 Serial controller: NetMos Technology PCI 9865 Multi-I/O Controller (prog-if 02 [16550])
Subsystem: Device a000:1000
Flags: bus master, medium devsel, latency 32, IRQ 19
I/O ports at df00 [size=8]
Memory at fbeff000 (32-bit, non-prefetchable) [size=4K]
Memory at fbefe000 (32-bit, non-prefetchable) [size=4K]
Capabilities: [48] Power Management version 2
Kernel driver in use: …Run Code Online (Sandbox Code Playgroud) 我为我想提交给上游的特定风扇控制器编写了一个有用的内核模块。
我在哪里可以找到提交我的模块的地址?我需要它制作 GPL 还是我可以使用限制较少的许可证?
我在这里阅读了这篇文章,我试着用我从这篇文章中理解的东西来凑合,但这里有一些问题:
/lib/firmware位于例如/usr/src/linux/lib/firmware或/usr/lib/firmware或其他地方?我可以在帖子给出的地址中使用预构建的 EDID 并使用 Gvim 之类的编辑器对其进行调整,然后使用以下信息将其传递给内核吗?我试图设置的分辨率是 1600x900@60:
1: [H PIXELS RND] : 1600.000000
2: [V LINES RND] : 450.000000
3: [V FIELD RATE RQD] : 120.000000
4: [TOP MARGIN (LINES)] : 8.000000
5: [BOT MARGIN (LINES)] : 8.000000
6: [INTERLACE] : 0.500000
7: [H PERIOD EST] : 16.648841
8: [V SYNC+BP] : 33.000000
9: [V BACK PORCH] : 30.000000
10: [TOTAL V LINES] : 500.500000
11: [V FIELD RATE …Run Code Online (Sandbox Code Playgroud)kernel-modules ×10
linux ×5
drivers ×3
kernel ×3
usb ×2
asus ×1
bind ×1
compiling ×1
debian ×1
edid ×1
hid ×1
i3 ×1
iommu ×1
linux-kernel ×1
secure-boot ×1
serial-port ×1
virtualbox ×1
x11 ×1