SL-B500/C700/C750/C760/C860/6000/C3000 special kernel

Hacking LinuxZaurus

近況報告

メディア

これ以外にもあったら教えて下さい。

無責任

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

何だろう

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

ライセンス

スペシャルカーネルは無料で配布しており、ライセンスはGPLです(念のため)。

カーネルの入れ換え手順

(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, C860)ならば、そこから取り出して下さい。 SHARP提供のアップデートソフトがない機種 (C750, C760, 6000)ならば、元のカーネルと同等のものを使って下さい。

/procファイルシステム

/procファイルシステムにより、カーネル設定の参照/変更が可能です。 例えば、CCCRの値を参照したい時は、
$ cat /proc/cccr_change
CCCRを241に変更したい時は、
# echo 241 > /proc/cccr_change
など、通常のファイルのようにアクセスします。 変更 (書き込み)はroot権限が必要です。 以下に主要なものを示しますが、これ以外にも、ぴろさんの カーネルパッチをまとめるのページにいくつか書いてあります。

FAQ

全般

各論

その他

技術情報

PXA27x動作周波数

SL-C3000はPXA270を搭載。
Turbo-mode frequency = 13MHz * L * N
Run-mode frequency = 13MHz * L
System-bus frequency = 13MHz * L / B
B = 1 (when in fast-bus mode)
B = 2 (when not in fast-bus mode)

CCCR     L   N  B  Turbo-mode  System-bus
2000210  16  2  1  416MHz      208MHz      (C3000 default)
2000310  16  3  1  624MHz      208MHz
2000214  20  2  1  520MHz      260MHz
2000218  24  2  1  624MHz      312MHz
詳しくはIntel(R) PXA27x Processor Family Developer's Manualを参照のこと。

PXA25x動作周波数

SL-B500/C700はPXA250を搭載。 SL-C750/C760/C860/6000はPXA255を搭載。
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

CCCR  L   M   N  Turbo-mode  System-bus
241   27  2   2  398MHz      100MHz      (B500/C700 default)
242   32  2   2  472MHz      118MHz
161   27  4   1  398MHz      199MHz      (C750/C760/C860/6000 default)
162   32  4   1  472MHz      236MHz
163   36  4   1  531MHz      264MHz
詳しくはIntel(R) PXA255 Applications Processors Developer's Manualを参照のこと。

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

カーネルソースには、SL-B500用=poodle-j、SL-C700用=corgi、SL-C750用=shepherd-j、SL-C760用=husky-j、SL-C860用=boxer-j、SL-6000用=tosa-j、SL-C3000用=spitz-jという名前のconfigが含まれています。 このファイルを元に、コンフィグレーションファイルを次のように修正しています。

機能早見表

記憶だけで書いてるので少し怪しい。
機能 B500 special kernel (v14x) C700 special kernel (v14x) C750/ C760/ C860 special kernel (v14x) 6000 special kernel (v16x) C3000 special kernel (v17x)
クロックアップ yes
CCCR= 242
yes
CCCR= 242
proc
CCCR= 161
yes
CCCR= 163
proc
CCCR= 2000210
コア電圧可変 no no no no proc
SIGSTOP問題対処 yes yes yes no yes
コンソール日本語表示 yes yes yes no yes
筆圧感知 proc proc proc not yet
tosa-presure-wm97xx-2.4.19.diff
proc
タッチスクリーン書き込み yes yes yes no yes
キーボード書き込み yes yes yes no yes
ハードウェアローテーション
no proc proc no no
3ボタン同時押し proc proc proc no -
LCD Bufferable no no no no no
fbcon fix no yes yes no -
WBキャッシュ
yes yes - - -
マウス3ボタンエミュレーション
yes yes yes no no
パワーキーサスペンド - proc proc - -
ppp-mppe yes yes yes no -
セキュリティパッチ yes yes yes yes yes
preemptive kernel no no no no no
lock break no no no no no
FCSE yes yes - - -
NO SHARP LOGO yes yes yes yes yes
MILD SWAP yes yes yes yes yes
FASTSYSCLK no proc proc no no
Bluetooth最新パッチ yes yes yes yes yes

山田哲靖 webmaster@tetsu.homelinux.org