Linux setup for Compaq Presario 2156EA

Generals

I wrote this document because I had a lot of problem to configure some parts of this laptop (specially the video card); I hope that this page can make life easier to somebody else :)
For any suggestion or update for this page, plese mail me to "presario2156ea at happyemi dot org"

Technical Info


Setup



1 - Issues in resizing Windows XP partition

I had some issue in resizing Windows partition, which is NTFS. I tried with QTParted (from a Knoppix Live distribution) and also with Partition Magic 8.0, but I couldn't resize anything because of an error that both programs throwed.

Solution is to run a little Linux program called ntfsfix (I ran it from a Knoppix session) and to restart your computer under Windows. When Windows starts, it will run scandisk automatically and it will fix the little error which caused Partition Magic and QTParted to fail. Ok, this is not a scientific way, but it works! :)

2 - Sound card setup

Sound Card is not a problem. The only thing to do, is to compile your kernel with right drivers. On 2.4.x kernels (and also on 2.6.x if you use OSS system instead of ALSA), you have to select the Trident 4DWave DX/NX, SiS 7018 or ALi 5451 PCI Audio Core driver.

If you have a 2.6.x kernel and you use ALSA drivers, then you should select ALi PCI Audio M5451.

3 - Network card setup

Network card works with no issues at all. Just select the right kernel driver :) It's called National Semiconductor DP8381x series PCI Ethernet support on my 2.6.10 kernel, but it should have a similar name on a 2.4.x kernel version.

4 - Video card setup

The ATI Radeon 320 IGP caused a lot of problems and, even now, I'm not completly satisfied.

First of all, you should check your X-Server version; you should have at least a 4.3.0 version installed.

Getting files

You have to visit the DRI home page and read all information about downloading (and installing) the dri support. Basically, you need two things: some files that are needed to enable dri support for XFree86 (these files will replace replace XFree86 with X.org files... It's not clear at present moment) and the driver for the video card. If you have a Debian system it's very easy to setup everything, because you only have to install three packages.

Configuring the kernel

In the Device Drivers menu, choose Character Devices and select the following:

ATI Radeon must be selected as a module, while the others can be compiled as modules or embedded into the kernel. Beware that if you compile agp support and ati chipset as modules, then you must load them BEFORE the ati radeon module (which will be called radeon.ko). If you don't, kernel modules will be showed as loaded, but 3d support will not work. One way to be sure of the right loading sequence is to write only ati_agp in your /etc/modules file.

Compiling the driver

You need to compile a new version of radeon.ko, using the sources from the DRI site. Once you get a new radeon.ko file, you need to copy it over the one you compiled with the kernel (that's why I said you to select ATI Radeon as a module); this step is done typing make install (or automaticaly if you use Debian package). It won't replace only radeon.ko but will also install some new modules for the DRI support. Compiling and installing is automatic using a Debian distribution. Only note that the package will look for a directory called /usr/src/kernel-headers-2.6.x, which exists only you have installed the right package. If you use a vanilla kernel (which is the one I use :)), don't worry: you only need to make a symbolic link. So let's say that you use a vanilla kernel version 2.6.10, and that it's installed in /usr/src/linux-2.6.10. Go in /usr/src/ and type:

ln -s linux-2.6.10 kernel-headers-2.6.10

And that's all.

Writing configuration files

Next step is to write your configuration into your /etc/X11/xorg.conf (this is the new configuration file. It will be read instead of XF86Config-4, but sintax is just the same). I'll report here only the part that you need for the video card:

	Section "Device"
        Identifier  "myradeon"
        Driver      "ati"
        VideoRam    65536
	EndSection
	
Of course you also have to change your Screen section:
	Section "Screen"
		Identifier	"Default Screen"
		Device		"myradeon"
		Monitor		"Generic Monitor"
		DefaultDepth	24
		DefaultFbBpp	32
		SubSection "Display"
			Depth		24
			Modes		"1024x768"
		EndSubSection
	EndSection
	

Finally you have to create a file called /etc/drirc. On the DRI site, you'll also find an example for this file (the example is for the ATI Radeon Card, which is exactly what we want :)).

Does it work?

To make sure that dri works, exec the command glxinfo and watch the third line. If it says direct rendering: Yes, then everything is ok.

Issues

I had some issues compiling the new radeon.ko. Two warnings are throwed while compiling and the module is not correctly loaded. To make 3D support work, I had to replace the radeon.ko provided with DRI (which actually is a 1.14) with the original provided by the vanilla kernel (which is 1.11). In this way, 3D support works, even if some warnings are reported in the log file because of the version mismatch. I'll update this section as soon I will be able to solve the problem.

5 - ACPI setup

Well, the only thing to make acpi support work (besides enabling it in your kernel configuration) is to DISABLE the apic support. Note that if you don't disable it, your laptop will hang at startup.
If you also have the framebuffer support activated, then your computer will hang with no messages at all (I call it "Black Screen of Death"). Thanks to my friend "_dave_" for this tip.
This laptop has no APM support, so it's useless to select it into the kernel configuration.

Last update: February 2005