Install Ubuntu 8.10 (Intrepid Ibex) on a ThinkPad T400
T400 Site under construction. You are invited building an useful guidance!
Contents
Before Installation
Before you can start Ubuntu from CD or USB you have to change two BIOS settings:
- Change to Internal or ATI Graphics with Config --> Display --> Graphics Device --> [Integrated graphics] or [Discrete Graphics]
- Disable OS Detection for Switchable Graphics. Otherwise it will mysteriously switch back to Switchable Graphics.
Now you can boot your Live-CD, connect to Wireless Lan, and install the OS.
What works out of the box?
- Wireless with iwlagn driver (Intel WiFi Link 5100/5300 WLAN controller)
- G mode + WEP and WPA2 PSK (If you have the ThinkPad 11b/g Wireless LAN mini PCI Express Adapter III (Aetheros Chipset), see below!)
- with status LED and everything!
- Bluetooth
- Even with Bluetooth Laser Mouse
- Intel Gigabit Ethernet Controller
- Intel driver for Integrated Graphics (Intel Integrated Intel GMA 4500MHD)
- with 3D acceleration out-of-the-box
- VGA output - mirrored and extended desktop both work, but might need to run the following to enable 1600x1200 resolution
$ sudo dpkg-reconfigure -phigh xserver-xorg
- ATI fglrx driver for Discrete Graphics (ATI Mobility Radeon 3470 graphics)
- To enjoy 3D acceleration, you have to install the proprietary fglrx Driver. (for example with the jockey-gtk tool)
- Touchpoint and Trackpad
- Including scroll at the right side of the pad by default. (for scrolling with the middle mouse button, see below!)
- Optical drive
- Not tested burning yet
- Sound card
- To use your internal microphone you have to change to "HDA Intel CONEXANT Analog (ALSA)" in audio-settings.
- built-in webcam with Skype
- 7-in-1 card reader from Ricoh (MMC, Memory Stick, Mem Stick Pro, SD, SDHC, XD, XD Type H Memory)
- Only tested SD cards.
- Control buttons/Hotkeys
- Volume control buttons
- Screen brightness control (but changing brightness is a little bit diffuse. It's getting brighter but on maximum it changes to nearly lowest and get brighter again.)
- Thinklight control
- WLAN/BT/OFF toggle (Fn+F5 and mechanical toggle)
- Media player control
- Some ACPI features
- Battery status, power graphs and history (tested with an single 6-Cell battery)
- Lid states and events
What needs some Tweaks?
ThinkVantage Button ThinkVantage
Edit the file /usr/share/hotkey-setup/ibm.hk with adding this line:
setkeycodes e017 148 #thinkpad button
You have to restart, then you refer a program with the "System -> Preferences -> Keyboard Shortcuts"-Menu (eg. Terminal, Firefox,...).
Internal LCD Resolution Fix
The native screen resolution of 1440x900 is not detected automatically. The problem is that a secondary cloned display is set to 1360x768, and is being displayed on the integrated screen. Disable screen cloning, and disable the secondary display to fix the problem. For a complete fix, a restart of X is required (CTRL+ALT+BACKSPACE) is required, and when logging in again, you may need to fix your dock icon positions.
However, GDM still displays at either 1152x864 or 1360x768, creating a fuzzy image, or leaving borders at right and bottom, respectively. But it isn't a problem after logging in.
TODO
|
Do you know how to fix this?
|
Shutdown freezes sometimes
It seems that ALSA has problems to shut down if network devices are still active. You can force ALSA during its unloading to disable the networking first (remember to backup your files!):
sudo gedit /etc/init.d/alsa_utils
Search for "stop)" and add immediately below:
ifconfig eth0 down ifconfig wlan0 down
NOTE - This doesn't seem to be a problem with Madwifi drivers, it is created by the Intel wireless card?
Now your shutdown should go smoothly.
VGA Output Resolution Fix
To enable 1600x1200 resolution to show up, run
$ sudo dpkg-reconfigure -phigh xserver-xorg
ThinkPad 11b/g Wireless LAN mini PCI Express Adapter III (Atheros AR5007EG/AR2425 Chipset)
There are two options for drivers here, the ath5k project, or older Madwifi drivers. The Madwifi drivers are based on the older, closed source HAL by Atheros, and the ath5k driver are based on the newer open source HAL by Atheros. Note that you should not enable more than one Atheros driver, or they will conflict with each other (this includes ath5k, ath9k, and Madwifi). If you need both BG & N support, do not use ath5k & ath9k, use Madwifi instead (only applicable if you are running multiple wireless cards).
NOTE: One user (with the a B/G card) reports that wireless performance was awful with the FOSS ath5k driver, but smooth and nice with Madwifi. YMMV - Also, the ath5k do not correctly detect hardware settings such as txpower.
Installing the ath5k drivers from the compat-wireless package
Original discussion thread: [1]
1. Become the super user of the system:
$ sudo su
*NOTE: Becareful here, as you have complete access to the system, and can do damage if careless. Optionally, you can work as a normal user, and preface each command with sudo.
Disable any currently running Madwifi drivers by running this in the terminal:
# rmmod ath_pci; rmmod ath_hal
3. These drivers require source compilitation, so the build-essential package is required:
# apt-get install build-essential
4. Enter the /usr/src directory, and download the source package:
# cd /usr/src; wget http://wireless.kernel.org/download/compat-wireless-2.6/compat-wireless-2008-10-31.tar.bz2
5. Extract the source and enter the directory:
# tar xjvf compat-wireless-2008-10-31.tar.bz2; cd compat-wireless-2008-10-31
6. Take a quick look at the README:
# less README
7. Begin the compiliation process
# make
8. Next, disable any active wireless connections, and run a script to make sure all wireless drivers that are going to be replaced are unloaded:
# make unload
9. Install the drivers:
# make install
10. If everything completed without errors, load the ath5k module:
# modprobe ath5k
11. Check to make sure the new drivers detected the wireless card (you may need to adjust the interface name if you have several wireless cards):
# ifconfig wlan0 up; iwconfig
NOTE: When I first installed these drivers, they were unable to bring the MAC chip up, and needed a restart.
12. Clean the src directory
Template:Cd /usr/src; rm compat-wireless-2008-10-31
NOTE: You can also delete the compat-wireless-2008-10-31/ folder if you need to recover the space, but it is useful to keep because the Makefile has a 'make uninstall' switch.
13. Last, blacklist any other drivers that may interfere with the new ath5k drivers:
{{echo "blacklist ath_pci" >> /etc/modprobe.d/blacklist; echo "blacklist ath_hal" >> /etc/modprobe.d/blacklist}}
Installing the Madwifi drivers:
The following instructions were originally found here [2]:
1. Under System/Administration/HarwareDrivers disable "Support for Atheros 802.11 wireless LAN cards
2. Reboot
3. The kernel headers and the compiler are needed to build this driver so install build-essential. In a terminal window (Applications/Accessories/Terminal) enter:
$ sudo apt-get install build-essential
4. Install Subversion
$ sudo apt-get install subversion
5. Checkout the Madwifi drivers to a directory on your local disk
$ cd~
$ mkdir madwifi
$ cd madwifi
$ svn co https://svn.madwifi.org/madwifi/branches/madwifi-hal-0.10.5.6
6. Build the drivers
$ cd madwifi-hal-0.10.5.6
$ make
7. Install the drivers
$ make install
8. Add the Atheros kernel module to the list of modules to be automatically loaded at boot by adding "ath_pci" (without the quotes) to the end of the /etc/modules file and save the file
$ sudo gedit /etc/modules
9. Now you can reboot and it should work. To get it working without a reboot you need to load the module manually you can use
$ sudo modprobe ath_pci
Scrolling with Trackpoint
Create a new file called /etc/hal/fdi/policy/mouse-wheel.fdi typing:
$ sudo gedit /etc/hal/fdi/policy/mouse-wheel.fdi
And fill it with this code:
<match key="info.product" string="TPPS/2 IBM 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.XAxisMapping" type="string">6 7</merge> <merge key="input.x11_options.YAxisMapping" type="string">4 5</merge> <merge key="input.x11_options.ZAxisMapping" type="string">4 5</merge> <merge key="input.x11_options.Emulate3Buttons" type="string">true</merge> </match>
Source: [3]
(Based on code from Michael Vogt and adapted to support both vertical and horizontal scrolling.)
Note: If you change to another Shell (<ctrl><alt>F1 etc) the Trackpoint does not scroll anymore. Restarting the Xserver works and can most easily done by choosing "switch user" and than log in again. All programs stay open and it does not take much time.
What doesn't work at the moment?
Integrated Fingerprint Reader
Theres a new chipset build in, the "AuthenTec AES2810". So neither the thinkfinger nor the fprint Project support this Device at the moment.
lsusb: Bus 002 Device 004: ID 08ff:2810 AuthenTec, Inc.
Switchable Graphics
I installed Ubuntu 8.10 with the on-board Intel Graphic chip. So 3D acceleration works out-of-the-box.
Then I booted with the ATI Graphics, which was no problem, because the radeon driver works very well, but only in 2D.
After installing fglrx packages, jockey also found out, that proprietary drivers are available. So i let him configure my xorg.conf:
Section "Monitor" Identifier "Configured Monitor" EndSection Section "Screen" Identifier "Default Screen" Monitor "Configured Monitor" Device "Configured Video Device" DefaultDepth 24 EndSection Section "Module" Load "glx" EndSection Section "Device" Identifier "Configured Video Device" EndSection Section "Device" Identifier "ATI Technologies Inc Mobility Radeon HD 3400 Series" BusID "PCI:01:00.0" Driver "fglrx" EndSection
After reboot also Compiz works (but not so smooth as with Intel, i allege)
Problem: Strating up with integrated graphic again, no 3D desktop works. After removing all fglrx packages, Compiz normally works.
So i changed my xorg.conf using the radeon driver, succeeding to have 3D on onboard Graphics and 2D on ATI Graphics.
I also tried radeonhd driver, which does not work.
Note 1: I got tired of going in to BIOS to switch chipsets, so I explicitly set the BusID in xorg.conf. The problem with this approach is that power consumption doubles, even when you are not using the discrete graphics card. I had 28W consumption when in switchable graphics mode, and 16W consumption when I configured "Integrated graphics" in BIOS.
Note 2: fglrx diverts libGL.so.1.2 that is installed by mesa. This means that you can't simply swap xorg.conf files and kernel modules, you need to replace libGL.so.1.2 with the proper one if you want restart X with a certain chipset.
TODO
|
Maybe anybody can get both working!
|
Suspend/Hibernate
Neither Suspend nor Hibernate work out of the box. They fall asleep, but when waking up only the mousepointer is on the black screen, put neither keyboard, nor mouse showing response.
Here's a Ubuntu forum discussion thread about the problem!
Petri K posted a workaround, to get suspend and hibernate working:
"I would say that this is a classical multiprocessor concurrency control problem! Disabling all but one core makes the bug disappear. Here is my suggestion for a workaround. Save in /etc/pm/sleep.d/00CPU with 755 permissions. Note that it has to be called 00CPU so that it gets executed before and after anything else."
$ sudo gedit /etc/pm/sleep.d/00CPU
Copy the following Code in gedit and save the file!
#!/bin/sh # Workaround for concurrency bug in xserver-xorg-video-intel 2:2.4.1-1ubuntu10. # Save this as /etc/pm/sleep.d/00CPU . "${PM_FUNCTIONS}" case "$1" in hibernate|suspend) for i in /sys/devices/system/cpu/cpu*/online ; do echo 0 >$i done ;; thaw|resume) sleep 10 # run with one core for 10 secs for i in /sys/devices/system/cpu/cpu*/online ; do echo 1 >$i done ;; *) ;; esac
Then close gedit and type this in terminal to set permission 755 (read, write and execute):
$ sudo chmod 755 /etc/pm/sleep.d/00CPU
Now suspend and hibernate should work for you!
Menu-Key
I changed keyboard modell to "IBM Thinkpad R60/T60/R61/T61" using the "German Dead acute" Layout.
But also with these settings my menu-key does not work. I tried to refer it with Firefox using the keyborad shortcuts-tool. It writes: "XF86WakeUp"
Problem: The FN-Key also writes "XF86WakeUp", which is not so practical, so I removed allocation!
TODO
|
Is ist possible to have an real menu-key?
|
Not tested yet
Active Protection System
There is no patch for Kernel 2.6.27-7 at the moment to use HDAPS. See also How to protect the harddisk through APS.
VGA/HDMI
- NEC MultiSync LCD 2190UX - VGA tested and working in mirrored and extended desktop modes (had to run
$ sudo dpkg-reconfigure -phigh xserver-xorg
to get 1600x1200 resolution to show up)
TODO
|
please test other external monitors!
|