お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2014-06-25 15:32:28

airukonon
新しいメンバ
登録日: 2014-06-25

usb-skeleton.cのUSBデバイスドライバ

usb-skeleton.cのVIDとPIDを変えてコンパイルして、usb-skeleton.koをinsmodしたのですが
変更したVIDとPIDのUSBデバイスをさしても
var/log/syslogを確認すると認識していないようです。

Jun 25 14:20:42 jasco-OptiPlex-GX620 kernel: [12268.432021] usb 2-2: new full-speed USB device number 6 using uhci_hcd
Jun 25 14:20:42 jasco-OptiPlex-GX620 mtp-probe: checking bus 2, device 6: "/sys/devices/pci0000:00/0000:00:1d.0/usb2/2-2"
Jun 25 14:20:42 jasco-OptiPlex-GX620 mtp-probe: bus: 2, device: 6 was not an MTP device

とでます。

ちなみにmakifileは以下を参照しました。
http://www.linux-dvr.biz/archives/49


どうすればusb-skeletonのデバイスドライバが使用されるようになるのでしょうか?

オフライン

 

#2 2014-06-25 22:29:30

Mocchi
管理者
登録日: 2009-05-17

Re: usb-skeleton.cのUSBデバイスドライバ

airukonon による投稿:

usb-skeleton.cのVIDとPIDを変えてコンパイルして、usb-skeleton.koをinsmodしたのですが

おっしゃるところのusb-skeleton.cが、Linuxのソースツリーのdrivers/usb/usb-skeleton.cのことを指していると想定して話をします。

airukonon による投稿:

変更したVIDとPIDのUSBデバイスをさしても
var/log/syslogを確認すると認識していないようです。

この箇所は「デバイスにドライバが適用されていれば当然実行されるはずの、skel_probe()のルーチンの最後にある以下の出力が得られない」と推測しました。

コード:

        /* let the user know what node this device is now attached to */
        dev_info(&interface->dev,
                 "USB Skeleton device now attached to USBSkel-%d",
                 interface->minor);

いちおう、以下をやった上でもう一度確認してみていただけますでしょうか?
1.ビルドしたカーネルモジュールを/lib/modules/$(uname -r)/配下に置く(updatesがあればupdatesに入れるとよいでしょう)
2. $ sudo depmod -a
3. $ modinfo usb-skeleton.ko (出力のaliasという行に、記述したPID/VIDを含むものがあるかを確認)
4. デバイスを挿抜して/var/log/syslogの出力を確認

オフライン

 

#3 2014-06-26 12:03:05

airukonon
新しいメンバ
登録日: 2014-06-25

Re: usb-skeleton.cのUSBデバイスドライバ

Mocchi様

返答ありがとうございます。

ご助言のとおりコピーしてコマンドを入力して
aliasにVIDとPIDが表示されるのは確認しましたが
残念ながらsyslogには今までどおりのメッセージが表示されました。

そもそも
usb-skeleton.koをinsmodしただけなのですがそれ以外に
必要なことがあるのでしょうか?

アプリケーションはまだ作らないのでデバイスファイルはまだつくっていません。

オフライン

 

Board footer

Powered by FluxBB