Armadilloフォーラム

VCC_3.3V_IOの制御について

mizoguchi

2021年5月10日 8時25分

お世話になります。

Armadillo-IoT G3でCON1のVCC_3.3V_IOを制御したいと思っています。
「16.4. 電源回路の構成 図16.1 電源回路の構成」を確認したところ、i.MX7D GPIO2_IO4で制御ができるのではないかと思っております。
https://manual.atmark-techno.com/armadillo-iot-g3/armadillo-iotg-g3_pro…
i.MX7D GPIO2_IO4の制御方法をご教授よろしくお願いいたします。

コメント

at_mitsuhiro.yoshida

2021年5月11日 17時45分

吉田です。

https://github.com/atmark-techno/linux-4.9-at/blob/master/arch/arm/mach…
に存在する定義 power-gpio を export して
制御する方法で実現可能かと思われます。

但し、CON1 と CON2 双方の 3.3V がオフ・オンされます。

また、タイミングによってはアドオンモジュールの EEPROM が読み込めず、
アドオンの認識に失敗するなどの副作用が発生する可能性もありますので、
十分なご検証の上ご適用をお願いします。

at_mitsuhiro.yoshida

2021年5月12日 13時01分

吉田です。

パッチの例としては以下のようになります。

--- a/arch/arm/mach-imx/armadillo_iotg_addon/armadillo_iotg_std_addon.c
+++ b/arch/arm/mach-imx/armadillo_iotg_addon/armadillo_iotg_std_addon.c
@@ -460,6 +460,8 @@ static int armadillo_iotg_addon_probe(struct
platform_device *pdev)
 
                of_property_read_u32(np, "power-ramp-delay", &delay);
                mdelay(delay);
+
+               gpio_export(addon->power_gpio, false);
        }
 
        node = of_parse_phandle(dev->of_node, "addon-i2c-bus", 0);

確認方法は以下の通りです。

3.3V_IO OFF

root@armadillo:~# echo 0 > /sys/class/gpio/gpio36/value

3.3V_IO ON

root@armadillo:~# echo 1 > /sys/class/gpio/gpio36/value

ご回答ありがとうございます。
armadillo_iotg_std_addon.cを変更しカーネルとDTBを変更しました。
その後、確認方法の通りにコマンドを打ち込んだところ、アドオンモジュールの電圧が変化することが確認できました。
ご対応ありがとうございます。