[Armadillo:06800] Re: STXD4(CPUモジュール、39番ピン)のUSBリセットについて
terada
email@hidden
2011年 2月 9日 (水) 21:59:20 JST
竹之下様
寺田です。ご回答ありがとうございます。
接続先基板のUSBコントローラは、FT245BLです。
>1. FTDIのドライバをカーネルモジュールとしてビルドしておいて、
> USBデバイスの認識に失敗したらモジュールを再ロードする。
>2. (linux-2.6.26-atにある)Delayed Probe機能を使って、電源が安定してから
> USBデバイスの認識をおこなうようにする。
回避策として可能であれば、具体的な方法を伝授頂けると助かります。
>STXD4は、ISP1504(USB PHY)のリセット信号への入力です。この信号線だけを
>操作してUSB PHYをリセットしても、適切にレジスタを再設定しないと
>USBでの通信はできません。
Armadillo基板プログラムでは、リセット信号入力後、USBデバイスを検
索して再オープンを実行してみようと考えておりました。この他にも設
定が必要になるのでしょうか。
リセット信号の入力は、下記ファイル関数のような処理を想定しており
ました。
linux-2.6.18-at8/arch/arm/mach-mx3/usb.c
void otg_hs_reset(void)
{
mxc_set_gpio_direction(MX31_PIN_STXD4, 0); /* OUTPUT */
mxc_set_gpio_dataout(MX31_PIN_STXD4, 1); /* HIGH */
mxc_set_gpio_dataout(MX31_PIN_STXD4, 0); /* LOW */
msleep(1);
mxc_set_gpio_dataout(MX31_PIN_STXD4, 1); /* HIGH */
}
リセット信号を入力することで、接続先USBの電源がOFF/ONとなり、接
続先USBデバイスもリセットされると考えているのですが、この認識は
間違いないでしょうか。
以上です。
お手数おかけして大変申し訳ございませんが、宜しくお願い致します。
>竹之下です。
>
>> 起動時に 接続されているUSBデバイスがまれに認識されないことがあり、
>> 一度リセット(USB電源のOFF/ON)してから、USBドライバ(FTDI)を再
>> オープンしたいと考えております。
>もう少し、詳しい状況を教えていただけますか?
>(デバイスの型番など、公開できますでしょうか?)
>
>現象によっては、以下のような回避策が取れるかもしれません。
>
>1. FTDIのドライバをカーネルモジュールとしてビルドしておいて、
> USBデバイスの認識に失敗したらモジュールを再ロードする。
>2. (linux-2.6.26-atにある)Delayed Probe機能を使って、電源が安定してから
> USBデバイスの認識をおこなうようにする。
>
>STXD4は、ISP1504(USB PHY)のリセット信号への入力です。この信号線だけを
>操作してUSB PHYをリセットしても、適切にレジスタを再設定しないと
>USBでの通信はできません。いずれにせよ、ユーザー空間で動作する
>プログラムから直接触ることはできないので、ドライバに手を入れることに
>なります。外部のUSB機器への電源供給だけをON/OFFするのは、少々難しそう
>です。
>
>--
>Koyo Takenoshita
>
>_______________________________________________
>armadillo mailing list
>email@hidden
>http://lists.atmark-techno.com/cgi-bin/mailman/listinfo/armadillo
armadillo メーリングリストの案内