SL-A300でUSBストレージ その1

 気が向いた(笑)。


 とりあえず、B500でパッケージングまで終了したのは良いけど、このへん rmmod,insmodの詳細な動作については疎いんで一応念の為、もう一度それらの動作について JM Projectの manページあたりを見てみることに。いや、んなコトはパッケージ化して公開する前にしろっつー話もあるけど(^^;)。

 で、調べてみると、 insmodのオプションの中に kernelバージョンを無視する -f --forceオプションってのがあることを知る。
 と言っても、無視出来るのはバージョンNo.だけで、どのみちカーネル中のシンボルテーブルが一致しないと組み込みは出来ないらしい。
 ま、でも、逆にそれなら試してみてもそれ程致命的な事態にもならんだろー、ってことで SL-A300で再チャレンジ。

 usbdcore.o、pxa_bi.oは B500と同じく標準で持ってるんで、 storage_fd.oだけ適当なディレクトリにコピー。
 で、

rmmod pxa_bi
rmmod net_fd
rmmod usbdcore
rmmod usbdmonitor

cd /lib/modules/2.4.13-ac5-rmk2-cotulla.1/kernel/drivers/usb/device/

insmod ./usbdcore.o
insmod -f ./storage_fd/storage_fd.o storage_device=/mmcda1
insmod ./bi/pxa_bi

 -f 指定してもいちお warningは表示されますが、 lsmodで確認すると一応ちゃんとモジュールはロードされてます。

 ってことで、おもむろに PCと USB接続すると・・・キター!(^^)。
 あっさり、動作成功。

 storage_device=/dev/hda1の指定で、CE-JC1に挿した CFもちゃんとストレージとして認識出来た。
 ただ、CFに関してはメモリカード挿してる分には問題ないんだけど、マイクロドライブだと正常に認識出来ないみたい。
 A300ローカルからは問題ないんだけど・・・。カードスロットの駆動電圧の問題かねぇ?。この場合 USB端子も同時に駆動さしてるワケだし。


 ってことで、 A300でも USBストレージ可能なことが確認出来ましたが、パッケージ化については、ちと考えちゅ。

 前述のように、CF側の認識に多少制限あるし、そもそも A300は標準でターミナルどころかキーボードも存在しないワケで、そうなるとコマンドラインで設定させるのもどうかなー、と。
 もっと言うと、現状では -fオプションで強引に認識させてるよーな状態だし(^^;)。


 ・・・ってことで、どーしましょう?(笑)