Armadilloフォーラム

拡張ボードUSBポート追加方法

momura

2018年6月6日 18時21分

度々、お世話になります。大村と申します。
X1のCON8を使用して、拡張ボードをつくり、そこにUSBポートを設けて
USB2.0ホスト機能を追加しようとしています。
使いたいピンは下記になります。
 CON8_47: USB_OTG2_DP
 CON8_48: USB_OTG2_DN
 CON8_50: USB_OTG2_VBUS
 CON8_32: GPIO7_IO8 <- VBUS Enable を供給 出力
 CON8_31: GPIO7_IO7 <- VBUS Fault (過電流検出)  入力

arch/arm/boot/dts/armadillo_x1-usbotg2.dts
を基に、2018/2/27付フォーラム「Armadillo−X1 UART1/USBポート初期化について 」を参考にして
DTBを追加しようとしました。dtsファイル添付しました。
しかし不明点がいくつかあります。下記ご教示をお願いいたします。

①USB_OTG2_IDとは何でしょうか? 記述しなくてもよいものでしょうか?
②過電流検出用ポートは、DTB記述する必要はないのでしょうか?
③disable-over-current; の1行は必要でしょうか?
④dr_mode は = "host"; でよいでしょうか?
⑤最後の &usbmisc2以降は必要でしょうか?
⑥変更したファイルをarch/arm/boot/dts/armadillo_x1-usbotg2.dts
 として上書き保存すると問題があるのでしょうか?
 そうすればmakefileはいじる必要がなく、ビルド後にuImageファイルだけ書き換えればいいのかと
 思ったのですが、この理解は間違いがあるでしょうか? またはこの方法は問題があるのでしょうか?

以上、ご指導よろしくお願い申し上げます。

ファイル ファイルの説明
armadillo_x1-usbotg2_変更.dts 変更したdtsファイル
コメント

momura

2018年6月8日 11時13分

お世話になります。大村です。
本件、ほぼ自己解決できました。

> ①USB_OTG2_IDとは何でしょうか? 記述しなくてもよいものでしょうか?
 これはhostの場合、関係ないのですね。なくても動作しました。
> ②過電流検出用ポートは、DTB記述する必要はないのでしょうか?
 これも必要ないですね。ユーザーランドアプリ内で処理すればよいことかも知れません。
> ③disable-over-current; の1行は必要でしょうか?
 これもなくても動きました。
> ④dr_mode は = "host"; でよいでしょうか?
 これはhostであればもちろんhostですね。
> ⑤最後の &usbmisc2以降は必要でしょうか?
 これもOTGの場合必要かもしれませんが、なくても動きました。
> ⑥変更したファイルをarch/arm/boot/dts/armadillo_x1-usbotg2.dts
>  として上書き保存すると問題があるのでしょうか?
 これはdtbファイルをつくって、保守モードで setenv fdt_file として指定しなければ駄目なのですね。
 今回よくわかりました。

ということで、現状動作しています。
ありがとうございました。

> 度々、お世話になります。大村と申します。
> X1のCON8を使用して、拡張ボードをつくり、そこにUSBポートを設けて
> USB2.0ホスト機能を追加しようとしています。
> 使いたいピンは下記になります。
>  CON8_47: USB_OTG2_DP
>  CON8_48: USB_OTG2_DN
>  CON8_50: USB_OTG2_VBUS
>  CON8_32: GPIO7_IO8 <- VBUS Enable を供給 出力
>  CON8_31: GPIO7_IO7 <- VBUS Fault (過電流検出)  入力
>
> arch/arm/boot/dts/armadillo_x1-usbotg2.dts
> を基に、2018/2/27付フォーラム「Armadillo−X1 UART1/USBポート初期化について 」を参考にして
> DTBを追加しようとしました。dtsファイル添付しました。
> しかし不明点がいくつかあります。下記ご教示をお願いいたします。
>
> ①USB_OTG2_IDとは何でしょうか? 記述しなくてもよいものでしょうか?
> ②過電流検出用ポートは、DTB記述する必要はないのでしょうか?
> ③disable-over-current; の1行は必要でしょうか?
> ④dr_mode は = "host"; でよいでしょうか?
> ⑤最後の &usbmisc2以降は必要でしょうか?
> ⑥変更したファイルをarch/arm/boot/dts/armadillo_x1-usbotg2.dts
>  として上書き保存すると問題があるのでしょうか?
>  そうすればmakefileはいじる必要がなく、ビルド後にuImageファイルだけ書き換えればいいのかと
>  思ったのですが、この理解は間違いがあるでしょうか? またはこの方法は問題があるのでしょうか?
>
> 以上、ご指導よろしくお願い申し上げます。
>
>
>
>