[Armadillo:03356] [Armadillo-500]Gadget Etherドライバについて

橋本 佳己 email@hidden
2008年 9月 1日 (月) 19:36:26 JST


いつもお世話になっております。
SFTの橋本と申します。

[Armadillo-500]Gadget Etherドライバについての質問ですが
PCとArmadillo−500をUSBケーブルで接続しても
デバイスを検出できません。

下記に質問を記述しましたので、
何方かご存知の方がおりましたら、ご教示下さい。

長文になってしまい、申し訳ありません。

【質問内容】
 以下の【作業内容】を実行しましたが、Windows側で
 「新しいハードウェアが見つかりました」というポップアップを出
 現させるにはGadget Etherのドライバ(g_ether.ko)をどのように
 作りこめばよろしいでしょうか?

【作業内容】
 1.カーネルイメージ作成
   Atmark-distでmake menuconfig
   を実行し、「Support for USB Gadgets」の項目以下のように選択
   してカーネルをmakeしたところ、エラーはなくイメージが作成されました。

--------------------変更点--------------------
  │ │<*> Support for USB Gadgets                            
  │ │
  │ │[*]   Debugging information files                      
  │ │
  │ │    USB Peripheral Controller (ARC USB Device Controller)  --->
  │ │
  │ │      ARC USB Device Controller                        
  │ │
  │ │[ ] OTG Support                                        
  │ │
  │ │[*] Support for OTG prepheral port on ARC controller   
  │ │
  │ │      Select transceiver (High Speed)  --->            
  │ │
  │ │<M> USB Gadget Drivers                                 
  │ │
  │ │< >   Gadget Zero (DEVELOPMENT)                        
  │ │
  │ │<M>   Ethernet Gadget (with CDC Ethernet support)      
  │ │
  │ │[ ]     RNDIS support (EXPERIMENTAL)                   
  │ │
  │ │< >   Gadget Filesystem (EXPERIMENTAL)                 
  │ │
  │ │< >   File-backed Storage Gadget                       
  │ │
  │ │< >   Serial Gadget (with CDC ACM support)            

--------------------変更点--------------------


 2.Armadillo側へのドライバのinsmod
   このイメージをhermitして書き込み、
   ガジェットイーサドライバのg_ether.koをinsmodしたところ以下の
   ようなログを出力しました。

   ※ether.cのdefineの「DEBUG」を有効にしているため、ログを出力
    するようになっています。

   --------------------insmod時のログ--------------------
   ether gadget: using random self ethernet address ether gadget: using random host ethernet address
   usb0: Ethernet Gadget, version: May Day 2005
   usb0: using arc_udc, OUT ep1out IN ep1in STATUS ep2in
   usb0: MAC 2a:30:78:35:65:96
   usb0: HOST MAC fa:86:33:7a:ec:1e
   arcotg_udc: gadget arc_udc bound to driver ether
   usb0: suspend
   ------------------------------------------------------


 3.PCとの接続
   ArmadilloとPC(OSはWinXP Pro)とをUSBケーブルで接続したところ

   --------------------PCとの接続時のログ--------------------
   usb0: resume
   usb0: suspend
   --------------------------------------------------------

  上記のログのように始めにresume、
  そしてWindows側で「USBデバイスが認識されません」というポップ
  アップが出たタイミングでArmadillo側のログにsuspendの1行が追加されます。


 4.デバイスにIPアドレスを割り振ったときの動作
   insmod後に
   ifconfig -a
   を実行しますと以下のように「usb0」というデバイスが現れます。
   ------------------------------------------------------------
   usb0      Link encap:Ethernet  HWaddr D6:AF:E8:FD:89:37
         BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
   ------------------------------------------------------------

   この「usb0」にifconfigで以下のようにIPアドレスを付加します。
   ------------------------------------------------------------
   ifconfig usb0 address 192.168.1.10
   ------------------------------------------------------------

   そうしますとログへ以下の1行が追加されます。
   ------------------------------------------------------------
   usb0: eth_open
   ------------------------------------------------------------

   なお、アドレスを付加した場合でもWindows側では上記同様の動作
   でした。またWindows側の管理ツールのイベントビューアをチェッ
   クしましたがそれらしい反応は見当たりませんでした。

以上、宜しくお願いいたします。





armadillo メーリングリストの案内