i.MX6ULL の電源制御方法

本章では、ソフトウェアによるi.MX6ULLの電源制御方法について説明します。

14.1. poweroffコマンドによる制御

poweroff コマンドを利用して、i.MX6ULL 自身で電源を OFF にすることができます。

電源を OFF にするには、次のようにコマンドを実行します。

[armadillo ~]# poweroff

図14.1 poweroff コマンドによる電源 OFF


14.2. RTC による制御

RTC のアラーム割り込みによって、i.MX6ULL の電源を ON にすることができます。

また、RTCの割り込み信号はアラームを解除するまで出力され続けるため、i.MX6ULL の電源が ON になってから5秒以内に、ブートローダーもしくはLinuxカーネルがアラームを解除する必要があります。

ブートローダーの起動時に RTC のアラームを解除するには次のようにコマンドを実行します。

=> setenv stop_nr3225sa_alarm yes
=> saveenv

i.MX6ULLの電源をOFFにし、1分後に電源をONにするには、次のようにコマンドを実行します。

[armadillo ~]# echo +60 > /sys/class/rtc/rtc0/wakealarm  1
[armadillo ~]# poweroff  2
: (省略)
[   32.428051] reboot: Power down


U-Boot 2018.03-at4 (Dec 18 2018 - 18:34:38 +0900)  3

CPU:   Freescale i.MX6ULL rev1.0 at 396 MHz
Reset cause: POR
I2C:   ready
DRAM:  512 MiB
MMC:   FSL_SDHC: 0, FSL_SDHC: 1
Loading Environment from MMC... OK
In:    serial
Out:   serial
Err:   serial
Net:   FEC
=>

図14.2 i.MX6ULLの電源をOFFにし、1分後に電源をONにする手順


1

1分後にアラームを設定します。

2

i.MX6ULLの電源をOFFにします。

3

1分経過後、自動的にi.MX6ULLの電源がONになります。

[警告]

サブユニットに搭載されている RTC NR3225SAは、毎分 0 秒にしかアラーム割り込みを発生させることができません。

0時 0分 30秒の時に、1秒後にアラームが鳴るように設定したとしても、実際にアラーム割り込みが発生するのは 0時 1分 0秒となります。