SL-B500/C700/C750/C760 special kernel

(update 2003/11/21)

statistics

近況報告

無責任

本カーネルの使用により、あなたのZaurusがレンガになったりしても、私は何も補償できませんのであしからず。

何だろう

SL-C750/C760のカーネルをちょっといじってSL-B500/C700/C750/C760でちょっと速く動くかもしれないようにしたものです。

カーネルの入れ換え手順

(1) SHARPのサイトからconsolescrollとupdater.sh.xxxxをもらってくる。updater.sh.xxxxはファイル名をupdater.shと変更。双方をメモリカードにコピーする。 (2) 下記から使いたいカーネルを選び、ファイル名はzImageと変更してメモリカードにコピーする(zImage.binではないことに注意)。 (3) consolescroll, updater.sh, zImage以外がメモリカードにないことを確認。特にinitrd.binは危険なので絶対に消して下さい。後は(1)のSHARPのサイトの手順通りですが、完全消去はしないで下さい(手順11で7だけ実行し、後は普通に電源を入れる)。

復旧手順

何か問題があった場合は、元のカーネルを使って上記(3)をやり直して下さい。元のカーネルは、SHARP提供のアップデートソフトがある機種(B500, C700)ならば、そこから取り出して下さい。 SHARP提供のアップデートソフトがない機種(C750, C760)ならば、元のカーネルと同等のものを使って下さい。

FAQ

全般

各論

その他

技術情報

ソース

linux-c750-20030620-rom1_10.tar.bz2を元にビルドしました。

動作周波数

               CCCR    L   M   N
C700(Normal)  0x0241  27   2   2
C750          0x0161  27   4   1

              0x0242  32   2   2

Crystal Frequency = 3.6864MHz
Memory Frequency = Crystal Frequency * L
Run Mode Frequency = Memory Frequency * M
Turbo Mode Frequency = Run Mode Frequency * N
PXbus Frequency = Run Mode Frequency / 2

Memory Frequency(100MHz)を基準に考えると、
C700(Normal)はRun modeは2倍速(200MHz)でTurbo modeは4倍速(400MHz)。
C750はRun modeもTurbo modeも4倍速(400MHz)。
Run mode周波数を高くするとPXバスも速くなる(Run mode周波数の半分)。

周波数確認

周波数の確認は、ターミナル(コンソール)にて
# /sbin/modprobe registers
# cat /proc/cpu/registers/CCCR
として行なう。modprobeはroot権限で一度だけ実行すればよい。

ソースの修正点

以下のようにソースを修正しています。

カーネルコンフィグレーション

SL-C750/C760のカーネルソースには、poodle-jという名前でSL-B500用のconfigが、corgiという名前でSL-C700用のconfigが含まれています。このファイルを元に、以下の点を修正しています。ただし、機種により有効にならない項目もあります。
# v11g
CONFIG_CORGI_LCD_BUFF=y
CONFIG_SL_CCCR242=y
CONFIG_SL_CCCR_CHANGE=y
# CONFIG_XSCALE_CACHE_ERRATA is not set
CONFIG_ARM_FCSE=y
CONFIG_PREEMPT=y
CONFIG_LOCK_BREAK=y
# CONFIG_SL7X0_POWER_KEY_OFF is not set
CONFIG_SL_3BUTTON_PATCH=y
CONFIG_SL_TS_PRESSURE=y
CONFIG_UNICON=y
CONFIG_UNICON_GB=y
CONFIG_UNICON_GB=m
CONFIG_UNICON_SJIS=y
CONFIG_UNICON_SJIS=m
CONFIG_UNICON_EUCJP=y
CONFIG_UNICON_EUCJP=m
# CONFIG_SHARP_LOGO_SCREEN is not set
CONFIG_SL_SYSCLK100=y

# v11g-TSPRESSUREn
CONFIG_CORGI_LCD_BUFF=y
CONFIG_SL_CCCR242=y
CONFIG_SL_CCCR_CHANGE=y
# CONFIG_XSCALE_CACHE_ERRATA is not set
CONFIG_ARM_FCSE=y
CONFIG_PREEMPT=y
CONFIG_LOCK_BREAK=y
# CONFIG_SL7X0_POWER_KEY_OFF is not set
CONFIG_SL_3BUTTON_PATCH=y
# CONFIG_SL_TS_PRESSURE is not set
CONFIG_UNICON=y
CONFIG_UNICON_GB=y
CONFIG_UNICON_GB=m
CONFIG_UNICON_SJIS=y
CONFIG_UNICON_SJIS=m
CONFIG_UNICON_EUCJP=y
CONFIG_UNICON_EUCJP=m
# CONFIG_SHARP_LOGO_SCREEN is not set
# CONFIG_SL_SYSCLK100 is not set

# v11g-PREEMPTn
CONFIG_CORGI_LCD_BUFF=y
CONFIG_SL_CCCR242=y
CONFIG_SL_CCCR_CHANGE=y
# CONFIG_XSCALE_CACHE_ERRATA is not set
CONFIG_ARM_FCSE=y
# CONFIG_PREEMPT is not set
# CONFIG_LOCK_BREAK is not set
# CONFIG_SL7X0_POWER_KEY_OFF is not set
CONFIG_SL_3BUTTON_PATCH=y
CONFIG_SL_TS_PRESSURE=y
CONFIG_UNICON=y
CONFIG_UNICON_GB=y
CONFIG_UNICON_GB=m
CONFIG_UNICON_SJIS=y
CONFIG_UNICON_SJIS=m
CONFIG_UNICON_EUCJP=y
CONFIG_UNICON_EUCJP=m
# CONFIG_SHARP_LOGO_SCREEN is not set
# CONFIG_SL_SYSCLK100 is not set

# v11g-PREEMPTn-TSPRESSUREn
CONFIG_CORGI_LCD_BUFF=y
CONFIG_SL_CCCR242=y
CONFIG_SL_CCCR_CHANGE=y
# CONFIG_XSCALE_CACHE_ERRATA is not set
CONFIG_ARM_FCSE=y
# CONFIG_PREEMPT is not set
# CONFIG_LOCK_BREAK is not set
# CONFIG_SL7X0_POWER_KEY_OFF is not set
CONFIG_SL_3BUTTON_PATCH=y
# CONFIG_SL_TS_PRESSURE is not set
CONFIG_UNICON=y
CONFIG_UNICON_GB=y
CONFIG_UNICON_GB=m
CONFIG_UNICON_SJIS=y
CONFIG_UNICON_SJIS=m
CONFIG_UNICON_EUCJP=y
CONFIG_UNICON_EUCJP=m
# CONFIG_SHARP_LOGO_SCREEN is not set
# CONFIG_SL_SYSCLK100 is not set

機能早見表

バージョン クロックアップ,
WBキャッシュON,
FCSE
3ボタン,
UNI-
CON
LCD
BUFF
NO
SHARP
LOGO
MILD
SWAP
CCCR
可変
筆圧 SYS-
CLK
100
PRE-
EMPT
LOCK
BREAK
v11g O O O O O O O O O O
v11g-TSPRESSUREn O O O O O O - - O O
v11g-PREEMPTn O O O O O O O O - -
v11g-PREEMPTn-TSPRESSUREn O O O O O O - - - -
SHARP - - - - - - - - - -


Mail: webmaster@tetsu.homelinux.org