前回 の続き。
暇を見つけて少しづつの作業ですが、やっとまともに使える環境が整いつつあります。
無線 LAN (AirMac Extreme 802.11a/b/g/n) その後
02:00.0 Network controller:
Broadcom Corporation BCM4328 802.11a/b/g/n (rev 03)
拍子抜け気味にあっさりと解決。
要するに security mode を restricted から open に変更する必要があったということのようです。
# cat /etc/sysconfig/network-scripts/ifcfg-wlan0
# Broadcom Corporation BCM4328 802.11a/b/g/n
DEVICE=wlan0
ONBOOT=yes
BOOTPROTO=dhcp
#
ESSID="xxx-yyy-zzz"
KEY="open s:xxxxyyyyzzzz"
タッチパッド
input: Apple Computer Apple Internal Keyboard / Trackpad as /class/input/input9
input,hidraw3: USB HID v1.11 Keyboard [Apple Computer Apple Internal Keyboard / Trackpad] on usb-0000:00:1d.2-2
input: Apple Computer Apple Internal Keyboard / Trackpad as /class/input/input10
input,hidraw4: USB HID v1.11 Device [Apple Computer Apple Internal Keyboard / Trackpad] on usb-0000:00:1d.2-2
appletouch: Geyser mode initialized.
input: appletouch as /class/input/input12
usbcore: registered new interface driver appletouch
キーボードを入力中、右手の親指付け根あたりがタッチパッドに触れてしまい、勝手にクリックと判断されてしまい、使いづらいことこの上ない。とにかくこのタッチパッド、やたらと敏感に反応するので、単なるマウス代わりとして使うにも結構難儀します。
ということでまず xorg.conf
のタッチパッドの設定を行うことに。
設定は web のどっかからコピペしただけです (笑)
Section "InputDevice"
Identifier "AppleTouch"
Driver "synaptics"
Option "SendCoreEvents" "true"
Option "Device" "/dev/input/mice"
Option "Protocol" "auto-dev"
# not using edge scrolling
Option "HorizEdgeScroll" "0"
Option "VertEdgeScroll" "0"
# use two finger scrolling
Option "VertTwoFingerScroll" "1"
Option "HorizTwoFingerScroll" "1" # set to 0 if you don't want horizontal scrolling
# scroll speed, lower is faster
Option "HorizScrollDelta" "10"
Option "VertScrollDelta" "10"
# minimum pressure motion factor
Option "PressureMotionMinZ" "10"
# touch and untouch thresholds, higher numbers if you like to push hard
Option "FingerLow" "10"
Option "FingerHigh" "20" # change to 30 or 40 if you like
# borders based on output from synclient
Option "LeftEdge" "20"
Option "RightEdge" "1200"
Option "TopEdge" "20"
Option "BottomEdge" "370"
# speeds, smaller number for a slower mouse
Option "MinSpeed" "0.8" # 0.5 is very slow, 1.5 is very fast
Option "MaxSpeed" "1.2" # up to 1.5 works ok
Option "AccelFactor" "0.10"
# tap times, change to suit your tapping habits
Option "MaxTapMove" "100"
Option "MaxTapTime" "100"
Option "MaxDoubleTapTime" "200"
# don't change these or two finger tap stops working
Option "TapButton2" "3"
Option "TapButton3" "2"
# must be commented out or normal tapping wont work
#Option "TapButton1" "0"
# needed for disabled while typing fix
Option "SHMConfig" "on"
EndSection
また、キーボード入力中に勝手にタップ操作と勘違いされないよう、GNOME デスクトップ起動時に次のコマンドを自動実行するように設定。
# syndaemon -t -d
iSight 内蔵カメラ
Bus 004 Device 002: ID 05ac:8501 Apple Computer, Inc.
Built-in iSight [Micron]
ファームウェアを読み込ませないと使えないタイプらしい。
ということで
isight-firmware-tools
のパッケージを作ることにしましたが、
バージョン 1.2 の HAL サポートが
いまいちまともに動いてくれないので、
--disable-hal --enable=udev
として UDEV 経由で 1.2-3vl5
を作り、とりあえず使うことに。
$ sudo ift-extract --apple-driver \
/mnt/OSX/System/Library/Extensions/IOUSBFamily.kext/Contents/PlugIns/AppleUSBVideoSupport.kext/Contents/MacOS/AppleUSBVideoSupport
$ ls -la /lib/firmware/isight.fw
-rw-r--r-- 1 root root 10871 5月23日 15:41 /lib/firmware/isight.fw
これで udev が自動的にデバイスを見つけ、ファームウェアを読み込み、uvcvideo
ドライバから見えるようになりました。
uvcvideo: Found UVC 1.00 device Built-in iSight (05ac:8501)
uvcvideo: Failed to query (135) UVC control 1 (unit 0) : -32 (exp. 26).
input: Built-in iSight as /class/input/input11
usbcore: registered new interface driver uvcvideo
USB Video Class driver (v0.1.0)
gstreamer-properties コマンドで認識されていることを確認。
ハードディスク問題さらに
前回解決した、ハードディスクが認識されない問題。ところがさらに続きが。
なんの気なしに、AC アダプタを外した状態でリブートすると、ata_piix
モジュールを読み込む最中にうんともすんとも言わなくなってしまう。
ACPI: PCI Interrupt 0000:00:1f.2[B] -> GSI 18 (level, low) -> IRQ 18
ata_piix 0000:00:1f.2: MAP [ P0 P2 P1 P3 ]
ここでずーっと止まったまま。
面白いことに、その最中に AC アダプタを接続すると、何事もなかったかのようにブートが継続する。 とはいえ、“Clocksource tsc unstable” とか (止まってから AC アダプタを接続するまでの時間ぽいね) とかメッセージが出てる。
ACPI: EC: missing confirmations, switch off interrupt mode.
ata_piix 0000:00:1f.2: SCR access via SIDPR is available but doesn't work
Clocksource tsc unstable (delta = -60927459992 ns)
scsi0 : ata_piix
scsi1 : ata_piix
ata1: SATA max UDMA/133 cmd 0x60f8 ctl 0x611c bmdma 0x6020 irq 18
ata2: SATA max UDMA/133 cmd 0x60f0 ctl 0x6118 bmdma 0x6028 irq 18
ata1.00: ATA-8: Hitachi HTS542516K9SA00, BBCAC3GP, max UDMA/133
ata1.00: 312581808 sectors, multi 16: LBA48 NCQ (depth 0/32)
bart kernel: ata1.00: configured for UDMA/133
scsi 0:0:0:0: Direct-Access ATA Hitachi HTS54251 BBCA PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 312581808 512-byte hardware sectors (160042 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sd 0:0:0:0: [sda] 312581808 512-byte hardware sectors (160042 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sda: sda1 sda2 sda3 sda4
sd 0:0:0:0: [sda] Attached SCSI disk
結局、安直に Tejun Heo さんを頼ってしまい (笑)、無事 こんなやりとり ののち、 解決。 今となって思えば、このくらいの内容やったら、自分で解決してパッチを投げたかったなぁ。
解決後の dmesg はこんな感じ:
ata_piix 0000:00:1f.2: version 2.12
ACPI: PCI Interrupt 0000:00:1f.2[B] -> GSI 18 (level, low) -> IRQ 18
ata_piix 0000:00:1f.2: MAP [ P0 -- -- -- ]
PCI: Setting latency timer of device 0000:00:1f.2 to 64
scsi0 : ata_piix
scsi1 : ata_piix
ata1: SATA max UDMA/133 cmd 0x60f8 ctl 0x611c bmdma 0x6020 irq 18
ata2: SATA max UDMA/133 cmd 0x60f0 ctl 0x6118 bmdma 0x6028 irq 18
ata1.00: ATA-8: Hitachi HTS542516K9SA00, BBCAC3GP, max UDMA/133
ata1.00: 312581808 sectors, multi 16: LBA48 NCQ (depth 0/32)
ata1.00: configured for UDMA/133
scsi 0:0:0:0: Direct-Access ATA Hitachi HTS54251 BBCA PQ: 0 ANSI: 5
sd 0:0:0:0: [sda] 312581808 512-byte hardware sectors (160042 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sd 0:0:0:0: [sda] 312581808 512-byte hardware sectors (160042 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 00 3a 00 00
sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sda: sda1 sda2 sda3 sda4
sd 0:0:0:0: [sda] Attached SCSI disk
ともあれ、2.6.25-7vl5 として incoming にアップロード。
バックライト、Fn キーなど
素直に pommed を使うことで解決。1.18-1vl5
をアップロード。
デフォルトでは fn
キーを押しながら F1
を押すと F1
として機能、fn
を押さないと液晶バックライト照度調整ボタンとして機能する (以下 F2
〜 F12
まで同様) ので、これを反転しておく (fn
キーを押したら特殊キー操作)。
general {
# fnmode: functions keys first (no need to use fn) or last
# Value is either 1 or 2, effect is hardware-dependent
fnmode = 2
}
とだけしといて、さらに PowerBook の時からやってるように
$ grep mac_hid /etc/sysctl.conf
dev.mac_hid.mouse_button_emulation = 1
dev.mac_hid.mouse_button2_keycode = 87
dev.mac_hid.mouse_button3_keycode = 88
として、F11 を中クリックに、F12 を右クリックに割り当てる。
AC アダプタ未接続時に液晶バックライトがやや暗くなり、接続時に明るくなるのも確認。
照度調整 (fn + F1
と fn + F2
)、
音量調整 (fn + F11
と fn + F12
)、
イジェクトキー (F12
の右隣のキー)
も期待した通りに機能することを確認。
ハイバネーション
kernel-2.6.25-7vl5 に組み込んである TuxOnIce 3.0-rc7 で、特に問題もなくハイバネート可能でした。ハイバネートからの復帰後のネットワーク (有線/無線) も 問題なさそうで、液晶バックライトなども特に問題なさげ。
TODO
- インストーラ対応残り
- booty (ブートローダをインストールする部分) の修正
- その他細かい Intel Mac 向けのケア