>> Medion CAD2000 (MD42595)
To follow the foundation laid by TuxMobil, I've put together this page in order to inform the people of the Linux-capabilities of this excellent laptop. Being here I assume you're allready familiar with the laptop through use of Windows XP Home Edition, especially since it seems to be bundled with it as a standard.

A short while after purchasing this laptop I started experimenting with the various Linux- distrobutions I came across that touted compatibility with, and increased performance with computers using Athlon 64-processors.

I ended up with a release of Mandrake Linux 10.0 RC1 for AMD64 processors, but that one failed to even finish the installation procedure - md5 checksums of the cd-images and several reburns of the cd's left me with the conclusion that it had to be the distrobution itself that failed (after checking the output in one of the terminals after the installation hanged - I must say it failed rather misserably with kernel errors and so forth). A few weeks later Mandrake released Mandrake Linux 10.1 RC2 AMD64, and that worked without any hitches during installation - this leads me to conclude that if you insist on using Mandrake you should be able to do so as long as you get a new version.

When it came to daily usage of Mandrake this was a very mixed affair since it had a strange mix of packages compiled against some 32-bit libraries in addition to a selection of 64-bit libraries leading to what I felt was a seriously unstable experience - it was time to try something new and community-based.

The distrobution I ended up with was one of the new and hip Debian-based distrobutions, more specifically the "Warty Warthog"-release of Ubuntu Linux. This, as opposed to Mandrake, is a Gnome-based distrobution aimed at building upon Debian as a foundation to create an easily updated desktop-distrobution packing the latest of features and functionality. "Warty Warthog" is at the moment the stabile version of Ubuntu Linux, and as such is only recieving security updates - I will take you through the steps for upgrading to "Hoary Hedgehog" so that you'll get the latest updates and hardware support added in this version. I should however include a warning that you'll see references to a lot of errors in this document that is due to faults in the software, but I promise that when you've done setting all of this up you'll have a system that is in a class of itselft when it comes to distributions supporting the x86_64 platform (allthough x86_64 is completely backwards compatible with software compiled fo x86 processors you won't see the benefits without an x86_64 based processor).

This document has been split into the following sections:
>> Hardware
>> Ubuntu Linux, getting it to work
>> Q&A, Troubleshooting
 
>> Document revisions
Version 1.2 (20.05.2005) : Minor updates
Version 1.1 (14.05.2005) : Added performance statistics for new ATI driver.
Instructions for installing the binary ATI drivers for ATI.com
Version 1.0 (19.02.2005) : Document released and put online
 
Valid HTML 4.01! Valid CSS! TuxMobil - Linux on Laptops, Notebooks, PDAs and Mobile Phones


>> Hardware
In this section I will try to summarize the hardware components that make up this laptop as well as include the output from a few relevant commands, if only to complete this guide and keep here as a reference. Interpreting the results of the various may not be all that easy if you're unfamiliar with the tools - if there is a brand or a chipset you don't recognise from the list I highly encourage that you search for it on google.

The following is an overview of the different chapters in this section of the guide:
>> Hardware summary
>> lspci
>> dmesg
>> Hardware summary
Capacity
Processor (CPU) :AMD Athlon 64 3000+ (1.8 GHz 512KB L2 cache)
Memory (RAM) :512MB DDR SDRAM PC2700
Harddrive :80GB (4200 rpm)
Chipset :VIA K8T800
 
Display and Graphics-card
Display type :17" LCD, TFT WXGA
Native resolution :1440x900 pixels, 32-bit colours
Connector for external display :15-pin D-sub (std. analog)
Supports Dualview
Max resolution, external display :1600x1200 pixels, 32-bit colours, 60Hz
Graphics card :ATI Mobility Radeon 9700 (GPU 472.5 MHz, MEM 270 MHz)
Graphics card, memory :128 MB DDR
TV-out :S-video
 
Sound
Soundcard-type :16-bit soundcard,
VT8233/A/233/8235/8237 AC97 Audio controller
Audio inputs :Microphone input (Mono)
Audio out :Headset with S/PDIF
Speakers :4 pcs. integrated surround
 
Communication
Analog modem :V.90, 56kbit,
Intel 537 (AC97 Modem)
Network adapter (LAN) :10/100/1000 Ethernet,
Realtek-8169 Gigabit Ethernet
Wireless adapter (WLAN) :802.11b/g 54 Mbps,
Intersil ISL3890, Prism Duette
Bluetooth :none
 
Integrated devices
CD-ROM :24x
DVD-ROM :8x
CD-R/CD-RW :16x/10x
DVD-R/DVD-RW :2x/1x
Floppy drive :none
 
Connections
PCMCIA (PC-card) :1x type I/II (CardBus),
CB1410 Cardbus Controller (Yenta)
FireWire :1x IEEE1394a (4-pin),
TSB43AB21 IEEE-1394a-2000 Controlle (PHY/Link)
USB :3x High Speed USB 2.0,
VT82xxxxx UHCI USB 1.1 Controller
Other connections : 1x PS/2
1x parallell port
1x serial port
Memorycard-reader for MS(Pro)/SD/MMC/SM
Battery type :Li-ion
Battery capacity :Approximately 2 hours
Pointing device :Synaptics touchpad
Weight :4.1kg
Size (WxDxH) :393 mm * 275 mm * 37.5 mm
 


>> Ubuntu Linux, getting it to work
Sections:
>> Installing Ubuntu
>> Stop XFree86 from crashing
>> Get it updated
>> Wireless card
>> Graphics card
>> Installing Ubuntu
"Warty Warthog" for x86_64 unfortunately gave me lots of errors when trying to install the distribution, and it all ended up refusing to install since it could not detect the cd-rom it was running from (don't ask why, but I think it's rather strange when a program refuses to realize the existance of the drive it's running from). This error only occured when I selected my native language in the language selection, but when I tried setting it to use english as language everything seemed to work fine.

Something the installation program, and the rather skimpy manual I saw at the time of install somehow forgot to mention that if you don't select an expert installation type, the grub bootloader will be automatically installed to your master boot record. What this means is that LiLo, and using alternatives to installing to the master boot record is not an option unless you choose an expert install.

As you might have noticed you never got to enter a root-password, and this is because the root account is disabled by default - the whole idea is that you should only do things as an ordinary, but instead of switching to root when privileges are needed you should instead use "sudo". If you're not familiar with sudo, just put sudo in front of every command that should be executed with root-privileges - this works fine unless you encounter errors such as XFree86 not starting. To enable the root account just type the following:
sudo passwd
 
>> Stop XFree86 from crashing
Directly after finishing the installation I was dumped to console because XFree86, the default in "Warty Warthog", refused to run and no matter the tweaking done to my resolutions and display definitions - the error was finally identified as a problem with one of the modules that comes with XFree86. To see the solution I used take a look at this link:
>> Q003: Can't start XFree86 with fresh "Warty Warthog"
>> FILE: /etc/X11/XF86Config-4
 
>> Get it updated
Being a Debian-based system, Ubuntu is extremely easily updated thanks to the apt-get package that automatically resolves dependencies for you without any fuss or random errors. The first thing we'll do is make sure that the current packages is updated and ready for use (this, as you might have imagined requires a working connection to the Internet). First start by updating the package lists and the upgrade the actual packages, in short just type the following:
sudo apt-get update
sudo apt-get upgrade
Upgrading to "Hoary Hedgehog" will be necessery in order to enable 3D-accelaration for your graphics card - this is hopefully sufficiently covered in the Unofficial Ubuntu Starter Guide. If you you don't feel like going there for the information I'll run through it in a few steps. The first steps is to open up an editor and open the file "/etc/apt/sources.list" (just run sudo gedit /etc/apt/sources.list). Look through the lines in the file and replace every instance of the word "warty" with "hoary" - now save and exit your editor. To upgrade the distrobution you can now do that by running the following set of commands:
sudo apt-get update
sudo apt-get dist-upgrade
After doing that you should make sure that all your packages are upgraded - if you've done that the time has come to make the switch to X.org instead of using the older XFree86 ("Hoary Hedgehog" and newer versions use X.org by default). To remove XFree86, and alter the configuration - just type the following:
sudo apt-get remove xserver-xfree86
sudo apt-get install xserver-xorg

sudo dpkg-reconfigure xorg-xserver
The last line should not be needed, but I've included it here anyway and recommend that you run if you find that X.org gives some strange error, or the computer still seems intent on loading XFree86 even though we just removed it.
 
>> Wireless card
The modules needed, and the firmware needed to make your wireless card comes with the stock kernels - if the relevant module isn't loaded upon bootup you can simply "modprobe prism54", or to make things permanent you can add the line "prism54" to the file called "/etc/modules.conf". If you don't plan to compile your own custom vanilla kernel please feel free to skip to the next section - the actual card is configured easily from Ubuntu after upgrading to the latest set of packages.

If you do not want to use any of the stock kernels you can download the sourcecode for the driver, and a way of retrieving the needed firmware at their homepage, http://www.prism54.com/. Unfortunately getting the firmware is a lot harder because of legal issues with the creators of the actual firmware, so I'll simply provide an alternate way.
cd /lib/hotplug/firmware
sudo cp isl3890-2.6.8.1-3-amd64-generic isl3890-`uname -r`
If you haven't noticed this simply copies one of the firmware-files bundled with the original kernel that comes with Ubuntu for x86_64, 2.8.1-3-amd64-generic, and substitutes the name used to identify the new custom kernel (works like a charm since the firmware doesn't actually change).

I've seen a lot of users searching for a site where they can download this firmware in the instances where the firmware wasn't included with their distribution - you can download the firmware from http://prism54.org/firmware/ and save it to the folder "/lib/hotplug/firmware" to enable hotplug to find it. Not sure what name the file'll have, but make sure that it is called "isl3890-<kernel version>" (rename it if necessary).
 
>> Graphics card
To get the graphics card working you need to first upgrade to the development release, "Hoary Hedgehog", and make sure that the newer X.org is used instead of XFree86. Then make sure that your kernel is upgraded to atleast kernel 2.6.10-3 since the previous kernels do not work with the graphics card - also make sure to install the corresponding version of the package named linux-restricted-modules. To load the needed module when the machine boots, add the line "fglrx" to the file "/etc/modules.conf".

To get the specific driver, fglrx, for X.org fetch the package named "xorg-driver-fglrx" - alter the driver specified in the file "/etc/X11/xorg.conf" to use fglrx instead of the OpenSource-variant. You can use the configuration tool, fglrxconfig, now installed to get a suitable configuration file for the X-server, but it's a lengthy and error-prone process that you should take with a pinch of salt - just copy the relevant parts into your own configuration. Personally I think it's simply easier to just look at a configuration file that I know works - so simply use my file as a template, you can get the file from the list of files below (I've also included my previous XFree86 configuration).
>> FILE: /etc/X11/xorg.conf
>> FILE: /etc/X11/XF86Config-4
After a reboot, and verifying that the kernel module is loaded, you can test and see wether the proprietary driver is actually being used, to do that you can try the command "fglrxinfo" - the output from the command should be something like the following:
>> Performance for driver 8.8.25
>> Performance for driver 8.12.10
If you find that this method doesn't work, or you simply would like to install the newer binary driver from ATI's homepage you can find instructions on doing this using the link below. If you are using a selfcompiled kernel you most likely won't have any other choice anyway.
>> Q005: Installing binary drivers downloaded from ATI.com
 


>> Q&A, Troubleshooting
The following is a selection of errors I've encountered while using Ubuntu Linux and the solutions I used to fix them. I will try to keep this update as my use of this system matures a bit more. Overview over problems and solutions listed below:
>> Q001: Cannot access the hardware clock by any known method
>> Q002: Can't boot into Windows 2000/XP
>> Q003: Can't start XFree86 with fresh "Warty Warthog"
>> Q004: Dualbooting with Microsoft Windows, clock is incorrect in Windows after using Ubuntu
>> Q005: Installing binary drivers downloaded from ATI.com
>> Q100: Contacting me
>> Cannot access the hardware clock by any known method
Upon boot you may notice the following errors:
* Setting the System Clock using the Hardware Clock as reference...
Cannot access the Hardware Clock via any known method.
Use the --debug option to see the details of our search for an access method.

* System time was Thu Sep 23 16:51:05 UTC 2004.
Cannot access the Hardware Clock via any known method.
Use the --debug option to see the details of our search for an access met[ ok ]

* System Clock set. System local time is now ThuSep 23 16:51:05 UTC 2004.
These errors are caused by VIA K8t800 need the RTC-module to be loaded before Linux attempts to use the hardware clock. Putting the rtc-module, as suggested all over the Internett, at the top of the file "/etc/modules.conf" does not work since the hardware clock is initialized before any modules are loaded.

To fix this error you either need to modify the script called "/etc/init.d/hwclockfirst.sh" to make sure that the module is loaded before the rest of the script runs (this has been unverified) - the other solution is to simply make sure that RTC is compiled into the kernel which might be somewhat easier if you allready plan to compile your own kernels instead of relying on the ones put together by the Ubuntu development team. To verify that this module will be compiled into your kernel, make sure that your kernel's ".config"-file contains the following line:
CONFIG_RTC=y
Note! This error also occurs on the AMD64 versions of Mandrake that I tested, and since this is generic Linux stuff it should also apply to all users facing this problem. The configuration file I've used (this has been modified to also work with the proprietary ATI-driver) has been attached.
>> FILE: /usr/src/linux/.config
 
>> Can't boot into Windows 2000/XP
You opted to install Ubuntu using the free unallocated space on your hard-drive, ie. you allready have an installed version of Microsoft Windows 2000/XP and shrunk your partitions to make room for Linux. After completing the installation of Ubuntu, booting into Windows isn't an option allthough you're certain the Windows partitions are still there at the beginning of your hard-drive ("cat /proc/partitions" reveals more partitions than those taken up by Linux). If this is the case you need to modify the boot-loader, grub by default, configuration so that it includes your Windows installation. When installing on my laptop, from the "Warty Warthog" x86_86 installation cd-set, the entry for Windows wasn't added automatically and I had to do it automatically.

To add the entry for Windows to your bootloader you need to edit the file called "/boot/grub/menu.lst" - look for a section stating "Put static boot stanzas before and/or after AUTOMAGIC KERNEL LIST", and add the following lines after that comment:
title Microsoft Windows XP Home Edition
rootnoverify (hd0,0)
chainloader +1
The example above assumes that your Windows-installation is located on the first partition (counting starts at Zero, and is specified via the second "0" on line 2).
 
>> Can't start XFree86 with fresh "Warty Warthog"
If you just installed "Warty Warthog" and is experiencing problems with the X-server trying to start up several times before finally dying and leaving you in console, this tip will probably help you as it did me. This appearantly only applies to fresh installations, and is due to an incompatible driver being loaded.

To stop X from crashing you should open up XFree86's configuration-file with an editor, nano is included by default - this file is, for those of you that have a limited experience with linux, placed in "/etc/X11" and is called XFree86-4. Because the root-user is disabled by default you have to use sudo, and you can do that by simply typing "sudo" before the actual command you want executed as root - for example to edit the referenced file by typing "sudo nano -w /etc/X11/XFree86-4"

Look to the bottom of the file you should see a line exactly like the quote directly below. Try commenting out this line by putting a "#"-character in front of the line, and save and quit the editor by first pressing [Ctrl] + [w] followed by [Ctrl] + [x]. To see if this fixed your problems you can try starting the graphical interface manually by typing "sudo /etc/init.d/gdm start".
InputDevice "Synaptics Touchpad"
If this doesn't work your problem was probably something else, and you should undo your alterations to the file we just edited.
 
>> Dualbooting with Microsoft Windows, clock is incorrect in Windows after using Ubuntu
Microsoft Windows 2000/XP has an incorrect implementation of the way it saves it's time to the BIOS when shutting down while Ubuntu does not have this error. The error is caused by Windows writing the local time when it should be writing the GMT instead - this will make it seem as if hours have been subtracted or added, depending on your timezone, when you boot back into Windows after using Ubuntu Linux. The solution is described in the Unofficial Ubuntu Starter Guide, but since the fix is so short I'll include it here as well.

To fix the error you should edit the file called "/etc/default/rcS", find and alter the variable called UTC so that it reads as following:
UTC=no
 
>> Installing binary drivers downloaded from ATI.com
This method of installation is somewhat harder than installing it from apt-get, but in contrary to that way of getting the driver this method seems to have a lot higher rate of success - atleast if you want 3d-acceleration to work.

Start by downloading thex86_64 driver from ATI.com (select options for downloading the drivers for a standard graphics card, and not the one for laptop computers), and make sure that you either have kernel-sources or kernel-headers installed for the kernel you are using. Then type in the commands below to compile and install the driver (you need to be logged in as root - type "sudo passwd" to enable root account in Ubuntu):
alien fglrx64_6_8_0-<version>.x86_64.rpm
dpkg -i --force-overwrite alien fglrx64_6_8_0-<version>.x86_64.deb

cd /lib/modules/fglrx/build_mod
chmod +x make.sh
./make.sh
cd ..

rmmod radeon
chmod +x make_install.sh
./make_install.sh
dpkg-divert --package fglrx --add /usr/X11R6/lib/libGL.so.1.2
The driver should now be installed and ready for use, and you should configure the driver using the same methods as described in the section called "Getting it to work, Graphics card".
 
>> Contacting me
If you have something to add to this page, or need help with this computer you can consider sending me an e-mail. Hints as to improving this hardware guide, or on achieving better scores in benchmarks are welcome.
>> E-mail: tebl.homelinux.com