HID_MAX_USAGESカーネルエラーを処理する最良の方法は何ですか?

HID_MAX_USAGESカーネルエラーを処理する最良の方法は何ですか?

これが私が今二番目に経験している問題です。デフォルトでは、USBベースのデバイスは無効な「HID_MAX_USAGES」番号を報告し、カーネルがエラーメッセージを表示し、デバイスが機能しなくなります。私は数年前にSharkoon Drakoniaマウスを使ってこの問題に直面しました。現在、Linux カーネルはマウスをサポートしていますが、新しい Medion P2213T の取り外し可能なキーボードはサポートしていません。しかし、この問題があるさまざまなデバイスがあります。見てください。これ詳しくはバグレポートをご覧ください。

これまで読んだことによると、この問題を解決する方法はいくつかあります。ほとんどの人が使用する方法の1つは、「include/linux/hid.h」の「HID_MAX_USAGES」をより高い値に変更することです。値の後にカーネルを再構築します。 (主に64万ウォン程度)この方法はうまく機能しますが、上記のバグレポートに記載されている開発者は、これによりメモリ使用量が増加し、特に低コストのタブレットデバイスでパフォーマンスが低下する可能性があると述べています。また、セキュリティアップデートが必要なときはいつでもカーネルを再構築しなければならず、distroの自動カーネルアップデートシステムが利用できないということです(本当に最悪の部分です)。

2番目のアプローチは、USB HIDレポート記述子を変更することを検討することです。通常、これらの高い値はとにかく不合理であるためです。この問題を解決する方法には、デバイスファームウェア自体で修正するか、カーネルソースコードのホワイトリストの種類に追加して値をオーバーライドする2つの方法があると思います。しかし、どちらにしてもより多くの情報を見つけることは困難です。

したがって、次の質問が発生します。

この「許可リスト」に追加する取り外し可能なキーボードをどこで要求しますか?どのデータを添付する必要がありますか?私のSharkoonマウスは現在最新のカーネルでサポートされているので、これが可能であることを知っています。

自動カーネルアップデートを無効にせずにデバイスのカーネルサポートを有効にする他の方法はありますか?

ありがとうございます!

ベストアンサー1

おすすめ記事