HTC Dream(aka T-Mobile G1, Android Dev Phone 1)の公式cupcake用クロックアップカーネルの下限クロックを下げてみる

cupcake(1.5)用クロックアップカーネルが安定しているようなので、もう少しいじってみた。
下限クロックが246MHzになっているのを、どこまで下げられるかやってみた。

下限クロック

いろいろ変えて試してみた。

クロック [MHz] 正確な値 [kHz] 起動結果
246 245760 OK
176 176000 OK
128 128000 OK
123 122880 起動せず

128MHzが限界らしい。

修正点

今回もカーネルのコンフィグ修正のみ。
arch/arm/configs/msm_defconfigをkernelディレクトリに.configとしてコピーしてから、下記のような修正をする。

--- arch/arm/configs/msm_defconfig      2009-03-21 23:01:52.000000000 +0900
+++ .config     2009-05-01 15:29:15.000000000 +0900
@@ -35,8 +35,8 @@
 CONFIG_BROKEN_ON_SMP=y
 CONFIG_LOCK_KERNEL=y
 CONFIG_INIT_ENV_ARG_LIMIT=32
-CONFIG_LOCALVERSION=""
-CONFIG_LOCALVERSION_AUTO=y
+CONFIG_LOCALVERSION="-00392-g8312baf"
+# CONFIG_LOCALVERSION_AUTO is not set
 CONFIG_SWAP=y
 # CONFIG_SYSVIPC is not set
 # CONFIG_POSIX_MQUEUE is not set
@@ -221,8 +221,8 @@
 CONFIG_MSM_CPU_FREQ=y
 CONFIG_MSM_CPU_FREQ_ONDEMAND=y
 # CONFIG_MSM_CPU_FREQ_SCREEN is not set
-CONFIG_MSM_CPU_FREQ_ONDEMAND_MAX=384000
-CONFIG_MSM_CPU_FREQ_ONDEMAND_MIN=245760
+CONFIG_MSM_CPU_FREQ_ONDEMAND_MAX=528000
+CONFIG_MSM_CPU_FREQ_ONDEMAND_MIN=128000
 CONFIG_MSM_HW3D=y
 CONFIG_MSM_ADSP=y
 CONFIG_WIFI_CONTROL_FUNC=y

出来上がったカーネルを下記に置いといた。
http://tetsu.homelinux.org/android/index.html
http://tetsu.homelinux.org/android/update-v4.zip

カーネルイメージの書き込み

adp1とUSBでつながっている状態で、

  • カーネルイメージをSDカードにコピー
$ adb push update-v4.zip /sdcard/update.zip
$ adb shell sync

として、SDカードにカーネルイメージをコピーする。

  • 赤(終話)ボタンを長押しして電源オフ。
  • ホームボタンを押しながら電源オンでリカバリモードに突入。
  • ALT+Lでヘルプ画面が出る。
  • ALT+Sでファームの書き込み。
  • 終わったらホーム+バックで再起動。