DKMSを使用してカーネルツリーで自動的にコンパイルされるように単一ドライバを設定する

DKMSを使用してカーネルツリーで自動的にコンパイルされるように単一ドライバを設定する

私はVividのHWEでUbuntu 14.04を使用しています。つまり、15.10がリリースされるまでカーネル3.19を実行しており、カーネルはHWEを介して使用できます。

MacBook Proを使用していますが、特定のBluetoothデバイスが認識されません。btusb.c認識されたデバイスのリストにないからです。私のデバイス情報は次のとおりです。

Bus 001 Device 003: ID 05ac:8290 Apple, Inc. 
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.01
  bDeviceClass          239 Miscellaneous Device
  bDeviceSubClass         2 ?
  bDeviceProtocol         1 Interface Association
  bMaxPacketSize0        64
  idVendor           0x05ac Apple, Inc.
  idProduct          0x8290 
  bcdDevice            1.04
  iManufacturer           1 Broadcom Corp.
  iProduct                2 Bluetooth USB Host Controller

動作しておらず、デバイスが検出されないことを確認しましたが、この変更は問題を解決すると思います。

私がしなければならないのは、特定のLinuxブランチのソースツリーをインポートしてダウンロードし、/usr/srcDKMSモジュールとして登録し、すべてのカーネルのインストール時にbtusb.koを自動的にビルドして挿入することです。

私にとって明確ではないのは、カーネルがすでにbtusbに付属しており、新しくコンパイルされたモジュールがカーネルが提供するモジュールをオーバーライドするかどうかわからないことです。これを行う簡単な方法はありますか?そして、カーネルMakefilesでカーネル全体をコンパイルせずにbtusbドライバのみをコンパイルする方法はありますか?これを行うより良い、直接的な方法はありますか?

答え1

3.19カーネル用のパッチbtusb.cのDKMSバージョンを作成しました。

wget https://www.dropbox.com/s/47u2zjrkqvkf1tw/btusbmac-dkms_1.6_all.deb
dpkg -i btusbmac-dkms_1.6_all.deb

再起動

ソースコードを表示するには、debファイルを右クリックし、「アーカイブマネージャで開く」を選択してファイルを解凍します。 /usr/src/btusbmac-1.6にあるファイルを読み取れるように、フォルダを右クリックして権限を変更する必要があります。

テストと確認ここ

関連情報