印刷用表示へ切り替え 通常表示へ切り替え 更新履歴を表示 更新履歴を隠す
Linux スピードステップで動作するかも

ThinkPad T22 のチップセットまわりを調べてみることにした。Vine Linux 3.1 がスピードステップで動作するようになるかも知れない。

■ ■ ■

サーバに使用している機種は ThinkPad T22 (2647-9EJ)。OS は Vine Linux 3.1 で,このマシン上ではスピードステップとして動作しないことが分かった(nlog(n): cpufreq は未対応だった)。

しかし,まだ望みはある。SpeedStep and cpufreq. によると,チップセットのサウスブリッジが PIIX4 のときkernel-2.4, 2.5, 2.6-test で動作するという報告がある。Vine Linux 3.1 の現在のカーネルは kernel-2.4.27 なので,いけるかも! という期待が膨らむ。

まずはチップセット周りの調査が必要である。恐らくは speedstep-smi モジュールを使うことになるだろうが,それを調べるプログラムが公開されている。SpeedStep and cpufreq. から speedstep-detect をダウンロードして展開。make してから root になって実行してみた。

# cd speedstep-detect-0.01
# ./speedstep-detect
dmi_scan: return:
DMI 2.3 present.
46 structures occupying 1585 bytes.
DMI table at 0x1FFF0000.
BIOS Vendor: IBM
BIOS Version: 16ET32WW (1.12 )
BIOS Release: 04/27/2004
System Vendor: IBM
Product Name: 26479EJ
Version: Not Available
Board Vendor: IBM
Board Name: 26479EJ
Board Version: Not Available
Trying Intel's int15 GSIC:
BIOS support GSIC call:
        signature: GSIC
        command port = 0x00b2
        command =      0x0082
        event port =   0x00c000b3
        flags =        0x07d00000
probing chipsets: Found PIIX4
  pmbase at 0x1000
Dumping PM IO register for this southbridge:
PMCNTRL (0x1004): 0x1401
(0x1006):         0x0000
GPEN (0x100e):    0x0200
PCNTRL (0x1010):  0x00003200
(0x1016):         0x0000
DEVSTS (0x101c):  0x00000000
GLBLEN (0x1020):  0x0400
(0x1022):         0x00000000
GLBCTL (0x1028):  0x03011f05
DEVCTL (0x102c):  0x02000000
GPIs: (0x1030):   0x070862
(0x1033):         0x00
GPOs: (0x1034):   0x7f7786ff
(0x1038):         0x62 0x08 0x07 0x00 0xff 0x86 0x77 0x7f



You need to boot on AC and battery and see if GPOs change.
Then, see if one bit change in between, you have then to note the number
of this bit.  This will be the gpo_hilo= number kernel option for
enabling the speedstep-piix4 module under Linux.
                                      ..28..24..20..16..12...8...4...0
        GPOs: (0x1034):   0x7f7786ff  01111111011101111000011011111111

機種名やら BIOS のバージョンやらが全部出てきて,少し公開するのが恥ずかしいような気になるくらい。最後のメッセージに「AC とバッテリーをつないで GPO が変わるかどうかを調べろ」というのがある。上は AC アダプタだけを接続し,バッテリーは外した状態での実行結果である。バッテリーをつけっぱなしにしておくと,バッテリーが死んでしまうので外してあるのだ。着色した部分については後述。

AC アダプタとバッテリーの両方を接続し,リブートした後に speedstep-detect を実行してみる。

# ./speedstep-detect
dmi_scan: return:
DMI 2.3 present.
46 structures occupying 1585 bytes.
DMI table at 0x1FFF0000.
BIOS Vendor: IBM
BIOS Version: 16ET32WW (1.12 )
BIOS Release: 04/27/2004
System Vendor: IBM
Product Name: 26479EJ
Version: Not Available
Board Vendor: IBM
Board Name: 26479EJ
Board Version: Not Available
Trying Intel's int15 GSIC:
BIOS support GSIC call:
        signature: GSIC
        command port = 0x00b2
        command =      0x0082
        event port =   0x00c000b3
        flags =        0x07d00000
probing chipsets: Found PIIX4
  pmbase at 0x1000
Dumping PM IO register for this southbridge:
PMCNTRL (0x1004): 0x1401
(0x1006):         0x0000
GPEN (0x100e):    0x0200
PCNTRL (0x1010):  0x00003200
(0x1016):         0x0000
DEVSTS (0x101c):  0x00000000
GLBLEN (0x1020):  0x0400
(0x1022):         0x00000000
GLBCTL (0x1028):  0x03011f05
DEVCTL (0x102c):  0x02000000
GPIs: (0x1030):   0x070862
(0x1033):         0x00
GPOs: (0x1034):   0x7f7786fe
(0x1038):         0x62 0x08 0x07 0x00 0xfe 0x86 0x77 0x7f



You need to boot on AC and battery and see if GPOs change.
Then, see if one bit change in between, you have then to note the number
of this bit.  This will be the gpo_hilo= number kernel option for
enabling the speedstep-piix4 module under Linux.
                                      ..28..24..20..16..12...8...4...0
        GPOs: (0x1034):   0x7f7786fe  01111111011101111000011011111110

最後の方の赤色の行が微妙に違っている(最初の行はコマンドラインなので別)。この違いを控えておけというのである。

2005年9月23日追記:
Vine Linux 3.2 で動作するようになりました (nlog(n): カーネルの再構築でスピードステップに対応)。

Posted by n at 2005-08-23 01:07 | Edit | Comments (0) | Trackback(0)
Trackbacks

  • 「手違いで複数トラックバックを送ってしまった!」という場合でも気にしないでください (重複分はこちらで勝手に削除させていただきます)
  • タイムアウトエラーは,こちらのサーバの処理能力不足が原因です (詳細は トラックバック送信時のエラー をご覧ください)
  • トラックバックする記事には,この記事へのリンクを含めてください(詳細は 迷惑トラックバック対策 をご覧ください)
Comments
Post a comment
  • 電子メールアドレスは必須ですが,表示されません (気になる場合は「メールアドレスのような」文字列でもOKです)
  • URL を入力した場合はリンクが張られます
  • コメント欄内ではタグは使えません
  • コメント欄内に URL を記入した場合は自動的にリンクに変換されます
  • コメント欄内の改行はそのまま改行となります
  • 「Confirmation Code」に表示されている数字を入力してください (迷惑コメント対策です)


(必須, 表示されます)


(必須, 表示されません)


(任意, リンクされます)


Confirmation Code (必須)


Remember info (R)?