このドキュメントでは i.MX Android の電源問題のデバッグと消費電力の最適化について説明します。
Power ManagerがAndroidで導入したもの
• 早期サスペンド
これにより、LCD、キーパッドバックライト、タッチスクリーン、gsensorなどのドライバーが、ユーザースペースが/sys/power/request_stateに書き込んだときに通知を受け取り、ユーザーが見えるスリープ状態を変更する必要があることを示すことができます。これらのドライバーは、Linuxスタンドsuspend()のように機能し、これらのデバイスをサスペンド状態にしてバッテリー寿命を延ばします。
•レイトレジューム
遅延レジュメは早期サスペンドと一致します。Stand Linux の再開が完了した後、早期中断中に中断されたデバイスが再開されます
•ウェイクロック
Wake Lockは、アプリケーション、サービス、カーネルドライバーがCPUリソースを要求するために使用されます。ロックされたウェイクロックは、そのタイプに応じて、システムがサスペンドやその他の低電力状態に入るのを防ぎます。これは、フレームワークからカーネルまでのAndroid電源管理アーキテクチャのコアメンバーとして
パワーフレームワークを強化するために i.MX が導入したもの
バスフレック
ハイバス、ローパワーオーディオバス、ローバスの合計3つのシステムバスワーキングポイントをサポートします。
クロックフラグに従ってこれら3つのバスモードを自動的に切り替えます。
DDRの実行周波数は、バスモードの変更に応じて変化します(MX6DQ / DLの場合、最大528 / 400MHz、24MHzで最低)。
CPUFreqの
CPU 周波数スケーリング デバイス ドライバーを使用すると、CPU のクロック速度をその場で変更できます。CPUの周波数を変更すると、GP電圧は電圧値に変更されます。
デフォルトのインタラクティブガバナーを強化して、SDHC / GPUなどのパフォーマンスを向上させます。
システムパワープロファイルサービス&アプリ(MX6DQ/DL専用)
現在、通常モード、省電力モード、パフォーマンスモードの3つのプロファイルをサポートしており、パフォーマンスと消費電力のバランスを大幅に向上させます。
プロファイルは、CPU実行最大周波数、トリガー温度、最小周波数実行CPU、CPU実行CPUなど、お客様のHW / MD設計に応じてカスタマイズできます
LDOバイパスモード
i.MX6XにはLDOモジュールが内蔵されていますが、外部LDOサプライヤを使用することもできます。SWは、外部LDOまたは内部LDOを使用して構成を提供します。
サスペンドモード
ユーザーアイドルモード
オーディオ/ビデオ再生モード
アイドルオーディオ/ビデオ再生高消費電力
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
cat /sys/devices/platform/imx_busfreq.0/enable
cat /sys/kernel/debug/clock/osc_clk/pll2_528_bus_main_clk/periph_clk/mmdc_ch0_axi_clk/rate
cat /sys/kernel/debug/clock/osc_clk/pll2_528_bus_main_clk/pll2_pfd_400M/periph_clk/mmdc_ch0_axi_clk/rate
powerdebug –d -c
サスペンドモード:高消費電力
問題を特定するのに役立つヒントがいくつかあります
システムがサスペンド・モードで開始できなかった
echo 15 > /sys/module/wakelock/parameters/debug_mask
echo 15 > /sys/module/userwakelock/parameters/debug_mask
再開または中断時にシステムがハングする
make menuconfig PM debug sys を有効にします。
[*]電源管理のサポート
[*] パワー・マネージメント・デバッグ・サポート
[*] 詳細なパワー・マネージメント・デバッグ
これにより、システムはサスペンドに入力する前に、より有用な情報を印刷します
カーネルはサスペンドから再開しますが、Androidは再開しません
これは通常、キーレイアウトファイルが間違っていることが原因です
getevent
system/usr/keylayout/****.kl
Hi Paramod,
この情報は /sys/device/system/cpu/cpu0/cpufreq/scaling_max_freq から見つけることができます
よろしくお願いいたします。
フージェン
ありがとう、 Fuzhen 迅速な返信。
Android Advance ユーザー ガイド ドキュメントでは、freq_table が参照されています (freq_table の最大作業点)。この imx6dq の freq テーブルはどこにありますか?
ありがとう、そしてよろしく、
Paramod.
Hi PK,
システムの電源プロファイルの詳細については、R13.4.1とともにリリースされたAndroidユーザーガイダーを参照してください。
よろしくお願いいたします。
フージェン
こんにちはfuzhenlin/ジョディポール
Android 4.0.4に含まれるSystem Power Profile ServiceおよびApp(MX6DQ / DLのみ)に関するドキュメント/詳細はありますか?BSPですか?
各電源モードがデフォルトのFSLコードで何をするのか知りたいです。
ありがとう、そしてよろしく、
PK