Ubuntu on an Acer Ferrari - Breezy

Table of Contents

Last updated November 19th, 2005.

Although this page specifically targets Ubuntu GNU/Linux, I am willing to work with users of other distro's in order to make the instructions on this website be as generic as possible. Please email me if you have suggestions on how to make this better. Feel free to email me if you have problems. I will answer when I have time, although there is not guarantee of when that will be. Email Address. The following are the goals, or the items I intend on making work:
I assume no responsibility for what you do with this information. The University of Calgary assumes no responsibility for what you do with this information. It is in no way official, or supported. It may break your computer, or delete your data. What you do with these instructions, you do at your own risk.
I wanted to take complete advantage of the 64 bit CPU in this laptop, so I decided to install Ubuntu GNU/Linux x86_64. I will warn anyone who does this however, that there are many software packages from the universe and multiverse repositories which are not present in the x86_64 edition. Update: Breezy seems to have fixed this problems and I have not noticed a lack of applications in a long time.

These are older instructions, and do not apply if you use the newer driver supplied by ATI: 8.19.10. If you're still using the breezy supplied driver, then this will apply, so I'll leave it here.

The graphics subsystem is one of the biggest problems with the laptop. Ubuntu correctly identifies the graphics card, and sets up the appropriate xorg.conf file. However, somewhere along the technology chain, something switches the primary display to the vga-out and the secondary display to the laptop's LCD. Because it's not being told to clone the display, it switches off the secondary display (the LCD) when starting X.org. The end result is a black screen after X.org starts. The quick and easy fix to this is to add the following to your Section "Device":

Option "CRT2Position" "clone"
Option "MonitorLayout" "LVDS,CRT"
		

This allowed me to use the laptop with the full 1680x1050 resolution in order to debug and set up everything else. I'm not sure where the bug exists, (Module, Ubuntu Configuration, etc) but I will inform the ubuntu developers and hopefully they will track down where the bug exists for breezy.

Breezy Users: If you are having a problem with HW accel, then please look at bug # 17614 - Thursday October 20th, 2005.

The wired networking was working out of the box using the tg3 module.

Wireless worked well using ndiswrapper as per the following sites:

http://www.triplenet.dk/~xerne/linux/Ferrari.htm,

http://www.detla.de/index_ferrari.html

First, I installed ndiswrapper using synaptic, then I downloaded the:

ftp://ftp.support.acer-euro.com/notebook/ferrari_4000/driver/winxp64bit/80211g.zip

and installed it using:

sudo ndiswrapper -i bcmwl5.inf
sudo modprobe ndiswrapper

Then I tried using one of the 5 unprotected networks surrounding my apartment using the gnome-networking tool which is found in System -> Administration -> Networking.

DVD Playback had me worried, as I kept seeing the following in my logs:

[  637.266077] hdc: command error: status=0x51 { DriveReady SeekComplete Error }
[  637.266081] hdc: command error: error=0x50 { LastFailedSense=0x05 }
[  637.266084] ide: failed opcode was: unknown
[  637.266086] end_request: I/O error, dev hdc, sector 12126124

In the end, I'm fairly certain this was simply due to the region not being set on my DVD drive, which is easily solved by installing the regionset application through synaptic, and then running it with sudo. Remember, you can only change your region on your DVD drive a specified number of times, so be careful with this utility.

sudo apt-get install regionset
sudo regionset

You should then install libdvdcss. I leave this exercise up to you. Totem still refused to play the DVD, due to some codec issues:

** Message: don't know how to handle video/mpeg, mpegversion=(int)2, systemstrea m=(boolean)false
** Message: don't know how to handle audio/x-ac3

which was solved by installing all of the gstreamer-plugins:

sudo apt-get install gstreamer0.8-plugins
I'm sure that this is overkill to solve the problem, but in my case, I figured that extra media plugins was probably a good thing. Gnome even autostarts the totem when the DVD is inserted into the drive.

After installing the machine, you can look at the output of dmesg and notice the following error messages:


Aug  9 15:15:04 localhost kernel: ACPI: Subsystem revision 20050211
Aug  9 15:15:04 localhost kernel:     ACPI-0352: *** Error: Looking up [Z00I] in namespace, AE_NOT_FOUND
Aug  9 15:15:04 localhost kernel: search_node 000001003fadc2c0 start_node 000001003fadc2c0 return_node 0000000000000000

These are specifically due to a buggy ACPI implementation shipped with the computer. I spent a long time figuring out how to fix this and if it wasn't for these pages, I would have had NO clue:

http://acpi.sourceforge.net/download.html,

http://gaugusch.at/kernel.shtml

The essential idea behind this method is that you should make a copy of the buggy acpi implementation (dsdt.asl) from the bios, then you fix a number of typos and errors in it, and you can then recompile it. Once you have a compiled version without the errors, you should instruct your kernel to use this new version instead of the version found in the BIOS.

I have some reports that Bluetooth isn't working with the DSDT.aml that I am providing, I have confirmed that there seems to be some problems with bluetooth, but am unsure as to why. Additionally, the current DSDT does allow the battery information to be read from /proc/acpi/battery/BAT1/*, but the battery applet in gnome isn't properly reporting anything other than whether the battery is plugged in or not. I will be looking at this during the holidays, after Dec. 20th. If you have more information on this and would like to help, feel free to contact me.

I have uploaded a number of files to this website for this process. If you have the exact same laptop and BIOS version(S3A21) as I do, then you can use the DSDT.aml file directly and just create a new initrd package. On the other hand, if you have a different laptop and are looking for tidbits of information on how I fixed mine, you can use the instructions in the old hoary page as well as the dsdt.asl, dsdt-fixed.asl and dsdt.diff files to get an idea of what you can do to fix yours.

Once you have a fixed DSDT.aml file compiled, you can create a new initrd file by:

lakin@zedd:~$ sudo cp DSDT.aml /etc/mkinitramfs/
lakin@zedd:~$ sudo mkinitramfs -o initrd.img-2.6.12-9-amd64-k8.fixed
lakin@zedd:~$ sudo cp initrd.img-2.6.12-9-amd64-k8.fixed /boot/initrd.img-2.6.12-9-amd64-k8.fixed
And then you can edit your /boot/grub/menu.lst and make sure that the initrd image that you are using is the fixed one, rather than the old one. Once you've rebooted look in your /var/log/messages for the following lines to indicate that you've succesfully installed it:
Nov 19 07:19:00 localhost kernel: [   11.301523] ACPI: Looking for DSDT in initramfs... found /DSDT.aml ... successfully read 23286 bytes from /DSDT.aml
Nov 19 07:19:00 localhost kernel: [   11.301543] ACPI: Using customized DSDT
Nov 19 07:19:00 localhost kernel: [   11.301608]     ACPI-0306: *** Info: Table [DSDT] replaced by host OS
Many thanks go out to Cláudio F. Gil for supplying me with this method.

Once this was working, I had to restart dbus in order for the battery state to be read: sudo /etc/init.d/dbus restart.

Ubuntu mostly configured this out of the box, but it didn't install some of the necessary packages:

sudo apt-get install bluez-pin bluez-utils

After installing these packages turn on the hidd server by editing /etc/default/bluez-utils and changing the following line:

HIDD_ENABLED=0

to:


HIDD_ENABLED=1

Make sure the button for the bluetooth is on in the front (it should be glowing blue). Then restart the bluez-utils package:

sudo /etc/init.d/bluez-utils restart

After this I think it should be working, move your mouse around, click some buttons and/or use the button on the bottom of the mouse to initiate the connection. I should mention that I did not get it to work very well until after I used the gnome-bluetooth-manager package to discover the address of my device and then I ran:

sudo hidd --connect XX:XX:XX:XX:XX:XX

Since then blue tooth has been working upon boot with no extra work. I simply make sure that bluetooth is "on" and move the mouse.

This is not completely working. To start, you should edit the /etc/default/acpi-support and turn on sleep support. Then I ran /etc/acpi/sleep.sh

This succesfully puts the laptop to sleep. However, I cannot yet succesfully get it back from sleep mode. The screen does not come back on.

Here are some of my working configuration files. I am providing this so that users of other distributions/laptops have a reference point. These files are not necessarily perfectly configured, and there are many issues I should still work out.

If you do use these files as a reference and you find any problems that I can fix, I would appreciate knowing about them.

My Configuration Files