#xperiaのカスタムカーネルのバッテリー消費が激しいんですw

NO IMAGE

仕事から帰ってはdmesgとにらめっこしての日々が続く今日この頃、いかがお過ごしでしょうかw

基本的にLinux素人なんですが、現状はログが示している通りなんです。

[code]
<6>[ 331.683213] suspend: exit suspend, ret = 0 (2011-05-22 08:04:09.231344804 UTC)
<6>[ 332.184096] PM: Syncing filesystems … done.
<4>[ 332.191865] Freezing user space processes … (elapsed 0.01 seconds) done.
<4>[ 332.210493] Freezing remaining freezable tasks … (elapsed 0.00 seconds) done.
<4>[ 332.211756] Suspending console(s) (use no_console_suspend to debug)
<7>[ 332.215218] msmrtc_tod_proc_result: 05/22/2011 08:04:09 (06)
<7>[ 332.217482] msmrtc_tod_proc_result: 05/22/2011 08:04:09 (06)
<7>[ 332.219050] msmrtc_tod_proc_result: 05/22/2011 08:04:09 (06)
<7>[ 332.221162] msmrtc_tod_proc_result: 05/22/2011 08:04:09 (06)
<6>[ 332.222716] lbs_suspend(): going to suspend
<6>[ 332.222743] ES209RA Audio Jack Driver : es209ra_audio_jack_suspend START
<6>[ 332.222905] ES209RA Audio Jack Driver : es209ra_audio_jack_suspend END
<7>[ 332.237139] vfp_pm_suspend: saved vfp state
<6>[ 332.238031] ES209RA Audio Jack Driver : es209ra_audio_jack_resume START
<6>[ 332.238124] ES209RA Audio Jack Driver : es209ra_audio_jack_resume END
<6>[ 332.238151] lbs_resume(): going to resume
<6>[ 332.308930] wakeup wake lock: SMD_RPCCALL
<7>[ 332.310686] msmrtc_tod_proc_result: 05/22/2011 08:04:09 (06)
<7>[ 332.311923] msmrtc_tod_proc_result: 05/22/2011 08:04:09 (06)
<4>[ 332.344929] Restarting tasks … done.
<6>[ 332.362990] suspend: exit suspend, ret = 0 (2011-05-22 08:04:09.911216267 UTC)
[/code]

抜粋なんですが、1行目が最後のサスペンドからの復帰時間がスタンプされてまして

その後、スリープすることなく、間髪いれずに

lbs_suspend(): going to suspend

というところで、再度サスペンドモードに入ります。

その後、ほとんど間髪いれずに

lbs_resume(): going to resume

ということで復帰モードに移行してます。つまり、sleep用のタイマーサービスが動いてないんですね…

この、サスペンドと復帰を繰り返しているために、画面は消灯していてもCPUは動きっぱなしだということです。

OCが原因でもなく、FPSの解除が原因でもなく、sleepしないことが原因です。

いま、3つのサービス
TIME_REMOTE_MTOA
DOG_KEEPALIVE
KEYPAD
がうまく動いていません。

ONC RPCがうまくうごいてないんですよね。このあたりに詳しい方が見れば、わかるのかもしれないですが…

Z氏のパッチもこの部分に対してのみ行われているんですが、arch/arm/mach-msm/smd_rpcrouter.cというファイルをZ氏のものに

差し替えれば、ほぼ、動きます。(本題の問題は残りますが。。。)

途中経過ですけど、いまこんな感じです。

このまま行くとたぶん、公式2.3が先にリリースされるなw

あと、docomo2.1用のA-SPECパッチも公開しておきます。

内容は
1.A-SPECの主目的である、task killerですが、カーネルパラメータでoom killerを動かすと
  Android自体が不安定になるので、build.propにて調整するように変更。
2.B-SPECのJITパラメータの変更は効果が薄いので廃止。
3.C-SPEC(CPU周波数調整でカスタムカーネルじゃないです)で、なるべく高い周波数で駆動しないように設定。

です。普段使ってますので、問題ないかと思います。

[ダウンロードが見つかりません]

なお、xRecoveryでインストールされると思いますが、reboot前に

念のためにdalvik-cacheをクリアしてください。

再起動後、安定して動き出しましたら、

再度、単純に再起動してください。(おまじないみたいなものw)

froyo版も同様に再構築中ですが、まぁ、需要があればやります。

疲れた…orz