2011/05/16

USB Accessoryは/dev/usb_accessoryらしい

USB Hostはどうやって実現してるんだろう?とソースを見たくなった。
libusbなのだろうか? それとも何か汎用的なライブラリがあるのか?

とりあえず、UsbService.cppがあった。
こっからたどろうかと思ったのだが。。。。

そういえば、USB Hostは3.1からで、まだリポジトリにはないんだな、ということに気づいた。
/dev/usb_accessoryって文字列を見たからだ。
2.3.4はUSB Accessoryのみだったな。

open時に/dev/usb_accessoryを開くんだな、ということはわかるが、そこまでだ。
ioctl()で属性なんかを取得するところまでは、わかる。
あとはUsbService.javaとかか。
もういいや。。。

NFCは、packages/apps/Nfcみたいなところにあったけど、USBはframeworks/base/servicesみたいなところにある。
この扱いの違いは何だろう?
hardwareってものあるけど、NFCはexternal/libnfc-nxpで制御してるし。
wifiもexternal/wpa_supplicantでやってたような。

仕事でAndroidやってるわけではないけど、気にはなるなぁ。


まあいいや。
とにかく、kernelがusb_accessoryのドライバを持ってるだろうから、それを見ればいいだろう。
USB Accessoryだと自分が周辺機器になるので、なんか変な感じだ。

0 件のコメント:

コメントを投稿

コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。