ThinkPad X200 のページです。

秋葉原の Jungle にて購入。(2014-04-03, 4,300円(税別))

仕様

Type7454-CTO
プレインストールOSWindows Vista Home Basic
CPUIntel Core 2 Duo P8400 (2.26GHz/2コア)
FSB1066MHz
チップセットモバイル インテル(R) GM45 Express チップセット
IDEコントローラIntel(R) 82801IBM/IEM (ICH9M/ICH9M-E)
メモリ標準/最大 1GB(1GB×1)/4GB(2GB×2)8GB(4GB×2)デュアルチャネル対応PC3-8500 対応
表示機能12.1V型TFT液晶(WXGA 1,280×800ドット、1,677万色)
グラフィックアクセラレータチップセット内蔵(インテル(R) グラフィックス・メディア・アクセラレータ X4500 HD)
HDD160GB(5,400rpm/シリアルATA/9.5mm/2.5")
Ether1000BASE-T/100BASE-TX/10BASE-T対応
無線LANIntel WiFi Link 5100 802.11a/b/g/n
Bluetoothあり

ノートブック - ThinkPad X200 | Lenovo 日本

BIOS

光学ドライブが内蔵されていないので、BIOS を更新するには Windows 用のツールを使うか、CD ブートイメージを焼いて外付け CD-ROM ドライブから起動するのが普通である。Linux マシンなどでは USB pen drive から起動できると便利なので、少し調べてみた。

CD ブートイメージ

archlinux で cdrtools をインストールして、ISO イメージファイルの構成を調べる。

% isoinfo -d -i 6duj48us.iso 
Setting input-charset to 'UTF-8' from locale.
CD-ROM is in ISO 9660 format
System id: 
Volume id: 6DUJ48US
Volume set id: 
Publisher id: 
Data preparer id: 
Application id: NERO BURNING ROM
Copyright File id: 
Abstract File id: 
Bibliographic File id: 
Volume set size is: 1
Volume set sequence number is: 1
Logical block size is: 2048
Volume size is: 19126
El Torito VD version 1 found, boot catalog is in sector 20

Joliet with UCS level 3 found.
No SUSP/Rock Ridge present
Eltorito validation header:
    Hid 1
    Arch 0 (x86)
    ID 'NERO BURNING ROM'
    Cksum 8A FC OK
    Key 55 AA
    Eltorito defaultboot header:
        Bootid 88 (bootable)
        Boot media 4 (Hard Disk Emulation)
        Load segment 7C0
        Sys type 6
        Nsect 1
        Bootoff 1B 27

論理レコードの大きさが 2,048 バイト、ブートオフセットが 27 なので、dd コマンドで HDD イメージファイルを抽出する。

% dd if=6duj48us.iso of=zoot.img bs=2048 skip=27 count=75744
   19126+0 records in
   19126+0 records out
   39170048 bytes transferred in 0.063829 secs (613672181 bytes/sec)

改造

MOD BIOS

純正の BIOS だと White List と呼ばれるリストに登録されている純正品以外のカードを内蔵すると 1802 エラーになるので、White List を無効にする BIOS に置き換えた。(メーカーの保証外の行為なので、あくまでも自己責任で)

無線LANカードの換装

購入した状態では Intel WiFi Link 5100 (802.11a/b/g/n) が内蔵されていたが、802.11ac が使える Intel Wireless-AC 7600 が利用可能か実験のために換装した。5100 はフルサイズの miniPCIe に対して、7260 はハーフサイズ。本来ならばエクステンダーが必要だが、X200 のケースは、無線LANカードがささっている方のスロットがハーフサーズ用の穴もあいているので、そのまま交換すればよかった。なお、アンテナ線は3本あって、そのうちの1本は使われていなかった。

2014-09-24:ヤマハのサイトに WLX-302 と Intel 7260 との相性(?)に関するお知らせを発見。

一部無線端末にて「WLX302」との無線通信が停止してしまう現象について
2014/09/10
    Intel社7260チップセットを採用した無線端末と通信できなくなる事例が発生しています。
    症状が発生した場合はお手数ですが、ヤマハルーターお客様ご相談センターにご連絡ください。

au の Home Spot Cube に接続して、テレビを録画したファイルを rsync で転送したら、kernel panic を起こした。負荷をかけるとだめなのかもしれない。

/etc/modprobe.d/iwlwifi.conf

options iwlwifi 11n_disable=1
options iwlwifi swcrypto=1

kernel のバグにより Intel 内蔵ビデオチップがレンダリングしない

起動時のコンソールに以下のエラーが表示され、Display Manager slim の画面がブラックアウトしてしまうことが多かった。

[    2.923450] [drm:init_ring_common] *ERROR* render ring initialization failed ctl 0001f001 (valid? 1) head 0000dd74 tail 00000000 start 003eb000 [expected 003eb000]
[    2.923473] [drm:i915_gem_init] *ERROR* Failed to initialize GPU, declaring it wedged

ぐぐってみると、最新のカーネルで発生する現象のようで、パッチも公開されている。また、repo-ck だとこのエラーが発生しないという報告もある。

/etc/pacman.conf に以下の内容を追加する。

#Linux Kernel and modules with Brain Fuck Scheduler v0.415 and all the goodies
#in the ck2 patch set.
[repo-ck]
Server = http://repo-ck.com/$arch

graysky の公開鍵を追加して、レポジトリを更新する。

$ su -
$ pacman-key -r 5EE46C4C && pacman-key --lsign-key 5EE46C4C
$ sudo pacman -Syy

linux-ck をインストールする。

$ sudo pacman -S ck-core2
:: 7 個のパッケージがグループ ck-core2 に含まれています:
:: リポジトリ repo-ck
   1) broadcom-wl-ck-core2  2) linux-ck-core2  3) linux-ck-core2-headers
   4) nvidia-304xx-ck-core2  5) nvidia-ck-core2
   6) virtualbox-ck-guest-modules-core2  7) virtualbox-ck-host-modules-core2

選択して下さい (デフォルト=all): 2 3

回線が細いせいため、一度にはダウンロードできなかったので、何度か同じコマンドを実行する必要があった。/etc/pacman.conf を編集し、wget でダウンロードするようにすれば、何度もリトライしてくれるので便利。

XferCommand? = /usr/bin/wget --passive-ftp -c -O %o %u

情報:Repo-ck - ArchWiki

/etc/default/grub を以下のように変更する。

GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="Arch"
GRUB_CMDLINE_LINUX_DEFAULT="acpi_osi=Linux zswap.enabled=1 zswap.compressor=lz4 resume=/dev/mapper/VolGroup00-Swap quiet elavator=bfq"
GRUB_CMDLINE_LINUX="

grub を更新

$ sudo grub-mkconfig -o /boot/grub/grub.cfg

再起動する。

linux 3.16.3-1 の場合の dmesg | grep drm

[    1.629004] [drm] Initialized drm 1.1.0 20060810
[    1.829070] [drm] Memory usable by graphics device = 2048M
[    1.829073] [drm] Replacing VGA console driver
[    1.829078] fb: switching to inteldrmfb from VESA VGA
[    1.853076] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    1.853077] [drm] Driver supports precise vblank timestamp query.
[    2.016782] [drm:init_ring_common] *ERROR* render ring initialization failed ctl 0001f001 (valid? 1) head 0000cac8 tail 00000000 start 003eb000 [expected 003eb000]
[    2.016808] [drm:i915_gem_init] *ERROR* Failed to initialize GPU, declaring it wedged
[    2.086722] [drm] GMBUS [i915 gmbus dpb] timed out, falling back to bit banging on pin 5
[    2.149116] fbcon: inteldrmfb (fb0) is primary device
[    2.655665] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
[    2.711649] [drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0

linux-ck-core2 3.16.3-1 の場合の dmesg | grep drm

[    1.400522] [drm] Initialized drm 1.1.0 20060810
[    1.659966] [drm] Memory usable by graphics device = 2048M
[    1.659969] [drm] Replacing VGA console driver
[    1.659974] fb: switching to inteldrmfb from VESA VGA
[    1.666075] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[    1.666076] [drm] Driver supports precise vblank timestamp query.
[    1.786060] [drm] GMBUS [i915 gmbus dpb] timed out, falling back to bit banging on pin 5
[    1.820949] fbcon: inteldrmfb (fb0) is primary device
[    2.337025] i915 0000:00:02.0: fb0: inteldrmfb frame buffer device
[    2.351667] [drm] Initialized i915 1.6.0 20080730 for 0000:00:02.0 on minor 0

情報

GRUB のパラメータ

バッテリーの持ちをよくしたり、性能を上げるためにカーネルオプションを指定するような記事が散見されるが、Lenovo ThinkPad X200 - ArchWiki - GRUB kernel parameterによれば、最近のカーネルはそれらのパラメータが最適されているので、ミュートボタンを有効化するのとハイバネーションからの復帰が早くなるように以下のパラメータだけ設定すれば良い。

/etc/default/grub を以下のように変更する。

GRUB_CMDLINE_LINUX_DEFAULT="acpi_osi=Linux zswap.enabled=1 zswap.compressor=lz4 resume=/dev/mapper/VolGroup00-Swap quiet"

grub を更新

$ sudo grub-mkconfig -o /boot/grub/grub.cfg

再起動する。

音が出ない

vlc などのソフトで音が出なかった。alsa-utils をインストールして、X61 のように xbindkeys で ボリュームボタンが有効になるようにすればよい。

$ sudo pacman -S alsa-oss alsa-utils xbindkeys

X61 でのボリュームボタン有効化と同様の設定を行う。

% xbindkeys -d > ~/.xbindkeysrc

以下の内容を ~/.xbindkeysrc に追加。

# Increase volume
#"amixer  set Master 2dB+"	←dBで指定すると、Invalid command で不可だった。
"amixer  set 'Master' 5%+"
  XF86AudioRaiseVolume

# Decrease volume
#"amixer set Master 2dB-"
"amixer  set 'Master' 5%-"
  XF86AudioLowerVolume

# Toggle mute
"amixer set Master toggle"
  XF86AudioMute

また、CTRL+F や CTRL+中ボタンで xterm が起動してしまうので、以下の行をコメントアウトしておく。

# set directly keycode (here control + f with my keyboard)
"xterm"
  c:41 + m:0x4

# specify a mouse button
"xterm"
  control + b:2

.xinitrc に awesome を起動する前に xbindkeys を実行するよう記述する。

xbindkeys	←追加
exec awesome

Beep 音が出ないようにする。

逆に、firefox などで Beep 音が出てうるさい場合は、xset -b を実行すれば良い。awesome の場合、.xinitrc に追加する。

xbindkeys
xset -b
exec $1

トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-08-22 (月) 07:33:12 (335d)