HTC Dream(aka T-Mobile G1, Android Dev Phone 1)のクロックアップを画策してみる
アプリは書かない(書けない)人なのでひたすらカーネルやらドライバやらをいじることにする。
まずは簡単なところからということで、クロックアップでも画策してみる。
カーネルソースの調査
CPUはQualcomm MSM7201AでARMコア。
設定できるクロックはkernel/arch/arm/mach-msm/clock-7x00a.cあたりに書かれていて、19.2MHz〜528MHz。正確に言うと、
- 19.2MHz
- 61.44MHz
- 81.92MHz
- 96MHz
- 122.88MHz
- 128MHz
- 176MHz
- 192MHz
- 245.76MHz
- 256MHz
- 264MHz
- 352MHz
- 384MHz
- 528Mhz
このうち、以下が有効にされている。
- 19.2MHz
- 122.88MHz
- 128MHz
- 245.76MHz
- 384MHz
- 528Mhz
一方、実際には、kernel/arch/arm/mach-msm/clock.cで、
- 可変範囲: 81.92MHz〜384MHz
- 画面オン時: 19.2MHz〜384MHz
- 画面オフ時: 19.2MHz〜245.76Mhz
に設定されている。kernel/arch/arm/mach-msm/clock.cをいじれば、取り合えずクロックアップは出来そうだ。
cpufreqドライバはkernel/drivers/cpufreq/cpufreq_msm7k.cだと思う。ここにはクロックは書かれていなくて、クロック可変の戦略のみ書かれている。cpufreqが正しく動作しているとすれば、kernel/drivers/cpufreq/cpufreq_msm7k.cをいじってクロック可変のポリシーを変えられるかもしれない。
⇒調べたらcpufreqは動いていなかった。