forcemax's

Ubuntu 8.10 Intrepid Ibex에서는 기존의 xorg.conf 파일을 설정하는 방법으로는 IBM TrackPoint의 휠 기능을 사용할 수 없다.

Xorg가 시동중에 hal의 설정을 임의로 불러와 사용하는데 이 부분에서 기존의 Xorg 설정이 무시되기 때문이다.

결국 hal에 설정을 해주어야 Xorg가 해당 설정을 읽어서 TrackPoint의 휠 기능이 동작할 수 있게 된다.

/proc/bus/input/devices 파일을 보면 다음과 같은 내용이 있다.

I: Bus=0003 Vendor=06cb Product=0009 Version=0100
N: Name="Synaptics Inc. Composite TouchPad / TrackPoint"
P: Phys=usb-0000:00:0b.0-4.4/input0
S: Sysfs=/devices/pci0000:00/0000:00:0b.0/usb1/1-4/1-4.4/1-4.4:1.0/input/input4
U: Uniq=
H: Handlers=mouse2 event4
B: EV=17
B: KEY=70000 0 0 0 0 0 0 0 0
B: REL=3
B: MSC=10

I: Bus=0003 Vendor=06cb Product=0009 Version=0100
N: Name="Synaptics Inc. Composite TouchPad / TrackPoint"
P: Phys=usb-0000:00:0b.0-4.4/input1
S: Sysfs=/devices/pci0000:00/0000:00:0b.0/usb1/1-4/1-4.4/1-4.4:1.1/input/input5
U: Uniq=
H: Handlers=mouse3 event5
B: EV=17
B: KEY=70000 0 0 0 0 0 0 0 0
B: REL=3
B: MSC=10

위에 나오는 내용외에도 각종 input device 관련 내용이 있는데 일단 무시하고 Name 항목을 복사해 두자.

/etc/hal/fdi/policy/mouse-wheel.fdi 파일을 만든다. 내용은 다음과 같다.

<match key="info.product" string="Synaptics Inc. Composite TouchPad / TrackPoint">
<merge key="input.x11_options.EmulateWheel" type="string">true</merge>
<merge key="input.x11_options.EmulateWheelButton" type="string">2</merge>
<merge key="input.x11_options.ZAxsisMapping" type="string">4 5</merge>
<merge key="input.x11_options.Emulate3Buttons" type="string">true</merge>
</match>

위 설정중 match 태그의 string property에 나오는 내용이 위에 /proc/bus/input/devices에서 복사해둔 내용이다.

위 파일을 저장하고 hal 데몬을 재시작한 후 X를 재시작 한다.

이제 IBM TrackPoint의 휠 기능이 동작한다.

참조 : http://www.linlap.com/wiki/Lenovo+Thinkpad+W500