如何在Linux / Busybox中设置AT91 SHDN引脚

时间:2014-03-28 11:52:03

标签: linux linux-kernel embedded shutdown gpio

我有这台AT91 SAM9G25运行嵌入式Linux,Busybox作为发行版。我已经检查了数据表,但不幸的是我没有达到目标,这就是问题所在:

关闭时有一个Pin SHDN。在启动过程中它很高,我想在击中" poweroff"时将它设置为低电平。在Busybox中 - 所以系统此时仍处于开机状态,它只是断电过程的一部分。

我知道我必须在/etc/init.d/中编写一个关闭脚本。问题是,我不知道哪个是SAM9G25的Linux中SHDN-Pin的变量。有人有建议吗?我从数据表中得到的唯一有用的是,该引脚被称为" SHDN" Ball = D8,但我无法在Linux中使用它们。

感谢您的帮助

亲切的问候

2 个答案:

答案 0 :(得分:1)

您可以简单地使用poweroff,因为Linux内核中有关闭控制器的驱动程序。该驱动程序已在使用:

at91_shdwc_write(AT91_SHDW_CR, AT91_SHDW_KEY | AT91_SHDW_SHDW);

所以SHDN引脚应该被驱动为高电平。

答案 1 :(得分:1)

您应尝试检查.config文件中的配置

CONFIG_POWER_RESET=y
CONFIG_POWER_RESET_AT91_POWEROFF=y
CONFIG_POWER_RESET_AT91_RESET=y

或这些:

CONFIG_OLD_CLK_AT91=y
CONFIG_AT91_SAM9_ALT_RESET=y
CONFIG_AT91_SAM9G45_RESET=y
CONFIG_AT91_SAM9_TIME=y
CONFIG_HAVE_AT91_SMD=y
CONFIG_SOC_AT91SAM9=y

取决于您的内核版本