使用reg命令直接控制mt7621的gpio

mt7621 的 GPIO_MODE 寄存器為 0x1e000060,可以使用 regs d 0x1e000060 來顯示。
mt7621 的 GPIO_MODE 寄存器為 0x1e000060,可以使用 regs m 0x1e000060 0x1 3 2 來把 UART3_MODE 改成 GPIO_MODE。
gpio 控制都放在 /sys/class/gpio,由下方列表可以知道有三個gpio chip。

# ls -al /sys/class/gpio
drwxr-xr-x    2 root     root             0 Jan  1  1970 .
drwxr-xr-x   29 root     root             0 Jan  1  1970 ..
--w-------    1 root     root          4096 Aug 23 05:25 export
lrwxrwxrwx    1 root     root             0 Jan  1  1970 gpiochip0 -> ...
lrwxrwxrwx    1 root     root             0 Jan  1  1970 gpiochip32 -> ...
lrwxrwxrwx    1 root     root             0 Jan  1  1970 gpiochip64 -> ...
--w-------    1 root     root          4096 Jan  1  1970 unexport

讀取 gpiochip0 的 base 可以得知 gpiochip0 的起始編號,接著再寫入 "29" 到 export,藉此打開 gpio29 的通道。

# cat /sys/class/gpio/gpiochip0/base
0
# echo "29" > /sys/class/gpio/export
# ls -al /sys/class/gpio
drwxr-xr-x    2 root     root             0 Jan  1  1970 .
drwxr-xr-x   29 root     root             0 Jan  1  1970 ..
--w-------    1 root     root          4096 Aug 23 06:48 export
lrwxrwxrwx    1 root     root             0 Aug 23 06:48 gpio29 -> ...
lrwxrwxrwx    1 root     root             0 Jan  1  1970 gpiochip0 -> ...
lrwxrwxrwx    1 root     root             0 Jan  1  1970 gpiochip32 -> ...
lrwxrwxrwx    1 root     root             0 Jan  1  1970 gpiochip64 -> ...
--w-------    1 root     root          4096 Jan  1  1970 unexport

設定 gpio29 為輸出
echo "out" > /sys/class/gpio/gpio29/direction
寫入 "1" 到 gpio29
echo "1" > /sys/class/gpio/gpio29/value
關閉 gpio29 的通道
echo "29" > /sys/class/gpio/unexport

本文章由作者:佐须之男 整理编辑,原文地址: 使用reg命令直接控制mt7621的gpio
本站的文章和资源来自互联网或者站长的原创,按照 CC BY -NC -SA 3.0 CN协议发布和共享,转载或引用本站文章应遵循相同协议。如果有侵犯版权的资 源请尽快联系站长,我们会在24h内删除有争议的资源。欢迎大家多多交流,期待共同学习进步。

相关推荐