Installing Fedora 7 on a ThinkPad T61
Fedora 7 - Xen - T61
Original Link: http://skinetwork.org/mediawiki/index.php/Fedora-T61
Fedora 7 Xen Kernel on T61 - In progress
27 May 2007
Finally after awaiting for about less than 2 months, I got my T61 from Lenovo yesterday. Well, my first impression is worth wait. Here is my T61 configuration:
7662CTO CTO THINKPAD T61 WITH NVIDIA GRAPHICS - 1 YD 42V8190 SBB INTEL CORE 2 DUO PRCESST7300 42V8012 SBB MS WIN VISTA HOME BASIC 42V9597 SBB MSWIN VHB32 US ENGLISH 42V9324 SBB 14.1WXGA +TFT,W/OCAM 42X0906 ** SBB NVIDIA QUADRO NVS 140M MEDIACARD 41W2060 VBB 1GB PC2-5300 667MHZ 1DIMM 42V8195 SBB KEYBOARD US ENGLISH 42V9330 SBB UN(TRACKPOINT+TCHPD)+ FING.R 42V8702 SBB 120 GB HDD,5400RPM 42V8193 SBB INTEL TURBO MEMORY 1GB 42V8714 SBB CD-RW/DVD-ROM COM,UBAYSLIM 42X0805 SBB PC CARDSLOT EX CARDSLOT 42V8177 SBB INT.WIRE.WIFI/LINK4965AGN 62P6054 VBB INTEGR.BLUETOOTH PAN 42V9338 SBB 6 CELL LI-ION BATERRY 39T6442 SBB COUNTRY PACK NORTH AMERICA 27R1769 SBB PSTN CABLE 42V9391 SBB LANG.PACK US ENGLISH 42V9428 SBB PACKAGING US 42V9647 SBB 14.1WXGA+W/OCAWWAN,W/BT11N 39T6440 SBB 56K V.92 DESIGNED MODEM 42V8646 SBB CL.PLATE T61WLANANDBLTOOTH 42V9665 SBB FCC, LABEL 42V9667 SBB GEO LABEL US, WLAN,BT 41W2300 SBB LOGO PLATE 42V9631 SBB INT WLAN ANT 14.1" 11ABGN 42V9658 SBB MT 7662 SYSTEM LABEL 42X0929 SBB MECH MISC PARTS 42V7973 SBB MS LABEL (VISTA BASIC) 42X1232 SBB NEWINTELLAB_DUALCORE/CEPRO 42X0914 SBB NO SIM MODEL 42X1352 SBB PC CARDSLOT EXPRESCARDSLOT 42V9633 SBB STAND LCD C/B:14.1"W/O CAM 42X0915 SBB WLAN MISC PARTS 42X0912 SBB WWAN MISC PARTS 42X0922 SBB NVID QUADRO NVS XXXX W/AMT 42X1482 SBB BLUETOOTH W/ ANTENNA 42X1702 SBB BLUETOOTH SCREW 42V8063 SBB MS WAU ENGLISH NA-U MODELS 42V9341 SBB 1GB PC2-5300 DDR2 SODIMM
What did I do the first minute
Powered on T61 and hold the ThinkVantage button to go BIOS. Well, this is my first T61. I did notice the options to enable/disable the Virtualization Technology which I was most concerned about. I shall brief things soon here for people who are looking to install Linux and probably detail later.
Fedora 7 Installation
- Booted up from DVD - Fedora 7 Installation takes a long time to load AHCI driver, however, it does not recognize the disk. I put in FC7 LIve disk which fails to mount root because it couldn't locate the disk. To work around this problem, I had to switch SATA mode from AHCI to Compability mode in BIOS. Installation then went smooth and finished in less thatn 10 min.
Fedora 7 Xenified Kernel
yum groupinstall "Virtualization"
Xen kernel booted fine without any problems.
NVidia Quadro 140M - Non Xen Kernel
I was able to compile nvidia.ko module from NVIDIA-Linux-x86-100.14.11-pkg1.run for non-xen 2.6.21-1.3194.fc7-i586 kernel. Downloaded the latest from nvidia.org and simply ran the program and it took care rest of it. The xorg.conf file worked for the first time without any problems.
However, for the xen kernel, its a whole different story.
NVidia Quadro 140M - Xenified Kernel
As expected, nvidia.ko module failed to load into 2.6.20-2925.9.fc7xen-i686. The new nvidia pkg doesn't even try to compile the module for xen kernel, they look the xen kernel and quit the program. However, if you unpack the pkg and look in the NVIDIA-Linux-x86-100.14.11-pkg1/usr/src/nv/conftest.sh there is a variable the script looks if it wants to ignore the xen kernel, so I tried follow steps.
export IGNORE_XEN_PRESENCE=true // This basically let me atleast try compiling the module. Then followed the usual nvidia patch procedure but in vain. However I am pasting steps to debug further. yum install kernel-xen-devel.i686; cd /usr/src/kernels/2.6.20-2925.9.fc7xen-i686/; make oldconfig; make scripts; make prepare; mkdir nv_xen; cd nv_xen; wget http://us.download.nvidia.com/XFree86/Linux-x86/1.0-9631/NVIDIA-Linux-x86-1.0-9631-pkg1.run; wget http://www.nvnews.net/vbulletin/attachment.php?attachmentid=20801; mv attachment.php\?attachmentid\=20801 xen.patch; sh ./NVIDIA-Linux-x86-1.0-9631-pkg1.run --extract-only; cd NVIDIA*/usr/src/nv; patch -p1 < ../../../../xen.patch; CC="gcc -DNV_VMAP_4_PRESENT -DNV_SIGNAL_STRUCT_RLIM" make SYSSRC=/lib/modules/2.6.20-2925.9.fc7xen/source/ module; cp nvidia.ko /lib/modules/2.6.20-2925.9.fc7xen/kernel/drivers/video/; depmod -a;
I tried inserting the built module but it couldn't find some symbols and I couldn't get it to work. Well, I forgot compiz for a while and wanted to just get the Xen HVM taste. So tried to use the xorg's nv driver and interesting, that failed too.
I had to crack my head to get this X in xen kernel. So made up my mind and wanted to give the generic VESA driver a shot and it worked!!! Finally some XServer with XEN.
yum remove xorg-x11-drv* // remove all nv drv and all xorg stuff yum install system-config-display // yum selects minimum dependencies for this, includes xorg-server and xorg vesa driver sudo system-config-display
Select generic LCD 1440x900 and it worked fine. So my X on Xen is running off of vesa driver.
Xen HVM
I will trying this tonight and will update the wiki. Here is my xm info.
host : mobile release : 2.6.20-2925.9.fc7xen version : #1 SMP Tue May 22 08:53:03 EDT 2007 machine : i686 nr_cpus : 2 nr_nodes : 1 sockets_per_node : 1 cores_per_socket : 2 threads_per_core : 1 cpu_mhz : 1995 hw_caps : bfebfbff:20100000:00000000:00000140:0000e3bd:00000000:00000001 total_memory : 1006 free_memory : 61 xen_major : 3 xen_minor : 1 xen_extra : .0-rc7-2925.9.f xen_caps : xen-3.0-x86_32p hvm-3.0-x86_32 hvm-3.0-x86_32p xen_scheduler : credit xen_pagesize : 4096 platform_params : virt_start=0xf5800000 xen_changeset : unavailable cc_compiler : gcc version 4.1.2 20070502 (Red Hat 4.1.2-12) cc_compile_by : kojibuilder cc_compile_domain : (none) cc_compile_date : Tue May 22 08:51:22 EDT 2007 xend_config_format : 4
Update: Was easier than I thought ;-) . Using the fully virtualized config to run windows. Used the Virtual Machine Manager came with fedora and was just an easy setup. Works awesome!!
Wireless - Intel 4965
This was a tough one but finally there was one bug posted on T61 issue which helped me to get this working. Here are steps in brief.
- Got the rpm for Intel 4965 firmware. Install this will copy firmware files to /usr/lib/firmware
wget ftp://ftp.pbone.net/mirror/atrpms.net/el3-i386/atrpms/stable/iwlwifi-4965-ucode-4.44.15-4.noarch.rpm rpm -ivh iwlwifi-4965-ucode-4.44.15-4.noarch.rpm
- Make sure mac80211 is loaded.
modprobe mac80211
- Get the iwlwifi package from intel to compile the iwl4965 package
wget http://intellinuxwireless.org/iwlwifi/downloads/iwlwifi-0.0.32.tgz
- Dont be exited to compile that yet because it wont work on T61 because of PCI ID bug on T61. See this link http://bughost.org/bugzilla/show_bug.cgi?id=1294 So get the patch.
wget http://bughost.org/bugzilla/attachment.cgi?id=1058
- Extract the iwlwifi folder and apply the above patch using patch -pl or simple edit them manually, they are just couple changes in adding the PCI ID to the code.
- After apply the patch if you try to run make, it will still fail because I guess simple relative path problem. It gave me error looking for files in ../net/mac80211 which actual path is /usr/src/kernels/2.6.21-1.3194.fc7-i686/net/mac80211, so I created a link in the unzipped iwlwifi folder like below and then ran make.
ln -s /usr/src/kernels/2.6.21-1.3194.fc7-i686/net .
This time make was successful and it compiled the module in compatible/iwl4965.ko .
- Insert the module
insmod compatible/iwl4965.ko
- Activate the wireless device
ifconfig wlan0 up
- Test Use iwconfig to test and configure. Enjoy!!!
Intel Turbo Memory
TODO
ThinkFinger
TODO
Suspend / Resume
TODO
Bluetooth
TODP
Sorry for big TODO list, I shall fill in those as soon as I can. Questions: skanuganti@skinetwork.org