web-dev-qa-db-ja.com

usbhidがあるのになぜusbkbdドライバーが必要なのですか?

デフォルトでUSBキーボードを制御するのはusbhidであることがわかりました。 rmmod usbhidを実行して発見しました。 usbhidを削除すると、usbキーボードが機能しなくなりました。 usbkbdはまだ挿入されていないことに注意してください。次に、usbkbdを挿入すると、キーボードが再び機能し始めました。キーボードを汎用ドライバー(usbhid)で処理できる場合、なぜ別のusbkbdが必要なのですか?

2
PaulDaviesC

カーネルのドキュメントに答えがあります:

3.1.2 usbmouse
~~~~~~~~~~~~~~
For embedded systems, for mice with broken HID descriptors and just any
other use when the big usbhid wouldn't be a good choice, there is the
usbmouse driver. It handles USB mice only. It uses a simpler HIDBP
protocol. This also means the mice must support this simpler protocol. Not
all do. If you don't have any strong reason to use this module, use usbhid
instead.

3.1.3 usbkbd
~~~~~~~~~~~~
Much like usbmouse, this module talks to keyboards with a simplified
HIDBP protocol. It's smaller, but doesn't support any extra special keys.
Use usbhid instead if there isn't any special reason to use this.

Documentation/input/input.txtから

2
myaut