- 201 名前:login:Penguin mailto:sage [03/05/08 02:33 ID:XzMiCqqd]
- >>199
なんか、道が遠いな。がんばれー。 > urb構造体を使うのでしょうか? まぁ、正解なんだけど。なにしろ最終的には全部usb_submit_urb()だから... 実際には usb_bulk_msg()とか、その類を使うの。 その前に基本設計。ハンドシェイクのようなものがあるのよね。それをどうする? ドライバを一番簡単にするなら、ドライバは、ただデータの横流しをするだけにして、 ハンドシェイクをアプリにさせたらいい。 アプリが /dev/それ をopenして アプリが 0x07をwriteして アプリが readでまって、0x01がかえったら アプリが 0x0aをwriteして アプリが readする これが一番簡単だろ。ドライバのデバッグより、アプリのデバッグのほうが簡 単だから、ドライバを簡単にするのは意味がある。 もし、これにするなら、カーネルに標準でついてるdrivers/usb/scanner.c を 参考にしたらいい。はっきりいって、本当に横流ししかしないドライバなので、 参考にして書き直す必要スラなくて、idさえ指定すればスキャナじゃなくても ナンデモ操作できます。おすすめ。 あ、でもclose/unloadあたりでのリソースの解放順序にバグがあるので、気を つけてね。
|

|