Armadilloフォーラム

A-640のGPIO

kani

2018年6月4日 20時43分

お世話になっております。kaniと申します。
A-420を使用していまして、CPU周りが強化されるということで
A-640にてテストをしております。
CON9接続の弊社開発ボードの挙動に違いがあり
調査したところ、GPIOの入力ピンが
A-420では、3.3V印加されていたのですが
A-640では、印加されていないように見えます。
これは、何か設定を忘れているのでしょうか。
それともA-640はそういう仕様なのでしょうか。
もし、iMX6の設定か何かで可能であれば
ご教示いただくことは、出来ますでしょうか。

お手数おかけしますが、宜しくお願い致します。

コメント

松坂です。

Armadillo-640では、用途が確定されていないピンについては
i.MX6のリセット解除後初期設定のままとなっています。
そのため、初期設定ではプルアップではなくキーパーが有効になっています。

プルアップを有効にするためにはKernel Device Treeで設定する必要があります。

以下例として、CON9の2pin目(GPIO1_IO23)の設定をプルアップに設定する場合です。
iomuxcのあたりにpinctrl-0の行からpinctrl_uart1の手前の行まで追加してarmadillo-640.dtbを作成してください。

ファイル名:arch/arm/boot/dts/armadillo-640.dts
-ここから-----------------------------
&iomuxc {
pinctrl-names = "default";

pinctrl-0 = <&pinctrl_test_1>;
pinctrl_test_1: testgrp-1 {
fsl,pins = <
MX6UL_PAD_UART2_RTS_B__GPIO1_IO23 0x0b008 /* test gpio */
>;
};
pinctrl_uart1: uart1grp {
fsl,pins = <
-ここまで-----------------------------

ほかのピン設定を変更する場合は以下のファイルを参照してください
arch/arm/boot/dts/imx6ul-pinfunc.h

その他、参考ドキュメントです。
Documentation/devicetree/bindings/pinctrl/fsl,imx6ul-pinctrl.txt
Documentation/devicetree/bindings/pinctrl/fsl,imx-pinctrl.txt

お世話になっております。
御回答ありがとうございました。
上記方法で、プルアップ設定ができ、既存ボードの動作を確認しました。
再度初歩的な質問をさせていただけないでしょうか。
ドキュメントとして公開いただいている、マルチプレクスの表ですが、
"基板上のPull-Up/Pull-Down とコンデンサ"の項目があり
CON9の13~18には、10KΩのpull-downとの記載があります。
この設定をなくすことは可能でしょうか。
もしくは上でご教示いただいたパラメータの値を変更すれば可能でしょうか。

お手数おかけしますが、宜しくお願い致します。

> "基板上のPull-Up/Pull-Down とコンデンサ"の項目があり
> CON9の13~18には、10KΩのpull-downとの記載があります。

この項目は文字通り、実際に基板上に抵抗が実装されているので、
設定で外すことはできません。
リセット直後の論理がhighになる必要がある場合は他の端子を
利用してください。