Acer 3400LMI User Manual

F8-x86_64 on the Acer Ferrari 3400LMi
F8-x86_64 on the Acer Ferrari 3400LMi
by
Sven-Göran Bergh
Table of Contents
1 Introduction....................................................................................................3
1.1 Version.....................................................................................................3
1.2 Quick reference guide..............................................................................3
2 Installation......................................................................................................5
2.1 Potential pitfalls.......................................................................................5
2.1.1 Graphical installer.............................................................................5
2.1.2 Disk size.............................................................................................5
3 Hard drive.......................................................................................................6
3.1 Upgrading the drive.................................................................................6
4 IEEE 1394 Firewire........................................................................................6
4.1 Potential problems...................................................................................7
4.2 Configuring Firewire................................................................................8
4.3 Comments................................................................................................8
5 USB.................................................................................................................9
6 5-in-1 Card reader...........................................................................................9
7 PC-card...........................................................................................................9
8 Special keys & buttons...................................................................................9
8.1.1 X key-codes......................................................................................10
8.1.2 Scan-codes.......................................................................................11
8.1.3 Linux key-codes...............................................................................12
8.1.4 X key-codes revisited.......................................................................13
8.1.5 Configure actions............................................................................14
9 CPU & ACPI support.....................................................................................14
10 Graphics......................................................................................................15
10.1.1 The radeon driver..........................................................................16
10.1.2 Simple X configuration..................................................................16
10.2.1 Virtual screen size.........................................................................17
10.2.2 The xrandr tool..............................................................................18
10.2.3 Fn-F5 button..................................................................................18
10.3.1 Simple benchmark.........................................................................20
10.3.2 Optimization..................................................................................20
1
F8-x86_64 on the Acer Ferrari 3400LMi
10.3.3 Other observations........................................................................20
10.4 TV-out...................................................................................................21
10.4.1 Load detection...............................................................................21
10.4.2 NTSC or PAL.................................................................................21
10.4.3 Initialization...................................................................................21
11 Touch-pad...................................................................................................22
12 Wireless NIC...............................................................................................22
12.1 Installing WLAN...................................................................................23
12.1.1 WLAN tools....................................................................................23
12.1.2 WLAN firmware.............................................................................23
12.2 Get started with WLAN........................................................................24
12.2.1 The manual way.............................................................................24
12.2.2 The GUI way..................................................................................26
13 Bluetooth.....................................................................................................26
13.1 Verify installation.................................................................................26
13.2 Using a phone modem..........................................................................27
13.2.1 Prepare the phone.........................................................................28
13.2.2 Prepare the laptop.........................................................................28
13.2.3 Static configuration.......................................................................30
13.2.4 Dynamic routine............................................................................31
13.2.5 GPRS..............................................................................................32
13.3 Sending files.........................................................................................33
13.4 Mouse & keyboard...............................................................................33
13.5 KBluetooth............................................................................................33
13.5.1 Installation.....................................................................................33
13.5.2 Mouse & keyboard........................................................................34
13.5.3 Scan for devices............................................................................34
13.5.4 Lock screen...................................................................................35
13.5.5 Transfer files.................................................................................36
14 Infrared.......................................................................................................36
14.1 Configuring IrDA..................................................................................36
14.2 Testing IrDA.........................................................................................38
15 Modem........................................................................................................38
15.1 Installing daemon.................................................................................39
15.2 Potential issue......................................................................................41
15.2.1 Connecting....................................................................................41
15.2.2 Disconnecting................................................................................41
15.2.3 System hang..................................................................................42
16 References..................................................................................................42
Appendix A – /etc/X11/xorg.conf.......................................................................44
Appendix B – dual-head.sh................................................................................46
Appendix C – dun-bind.sh.................................................................................52
Appendix D – /etc/init.d/slmodemd...................................................................54
2
F8-x86_64 on the Acer Ferrari 3400LMi

1 Introduction

This document is primarily designed for my own records for future use. However, it is always nice if it may help others to get started with Linux on their laptops. The steps to get things to play on the Acer Ferrari 3400 Lmi are described here. Most procedures are general and may be useful for other hardware as well.
! ! ! WARNING ! ! !
However, I must warn those of you that still enjoy the luxury of an independent mind and free will. Stay away! Do not ever lay your hands on the Ferrari.
The same warning applies to the GNU/Linux software platform in general. It was several years ago my self defense was totally broken.
The combination is truly devastating! I have noticed strange things happening to me since I got My Precious...
Please feel free to comment on any topic or possible improvements in this document.

1.1 Version

This is an updated version of this document. This time I have chosen to install Fedora 8 x86_64, and many things has really changed to the better. The first version dealt with FC4-x86_64, and there are no major changes for FC5-x86_64. Consequently, if you are heading for FC4 or FC5 you probably want to have a look at the previous version of this document. While some details may be specific for Fedora, most stuff should translate to other distributions as well.

1.2 Quick reference guide

I've got all of the hardware working. Although, somethings need some extra tweaks. A summary may be found in the table below
3
F8-x86_64 on the Acer Ferrari 3400LMi
Hardware Status Details Notes
CPU OK Mobile AMD Athlon 64
3000+
No configuration needed. Frequency scaling works out of the box.
PCI Bridge OK VIA VT8237
[K8T800/K8T890 South]
No configuration needed.
Display OK 15” SXGA TFT
(1400x1050)
No configuration needed.
Graphics card
OK ATI Mobility Radeon 9700
128 MB, 8x AGP
Full functionality with the radeon driver, see below.
RAM OK 512 MB DRAM (extended
to 2GB)
No configuration needed.
Hard drive OK Original: Hitachi
Travelstar 80 GB Ultra ATA 100, IC25N080ATMR04-0, 4200 rpm Upgrade: Seagate Momentus, 160 GB, ATA/ATAPI-6, 5400rpm, ST9160821A
No configuration needed.
NIC (wired) OK Broadcom NetXtreme
BCM5788 Gigabit Ethernet
No configuration needed.
NIC (wireless)
OK Broadcom BCM4306
802.11b/g W-LAN
Use kernel module b43, see comments below.
Modem OK VIA AC'97 56k Modem. Unstable. See below for
configuration.
DVD drive OK Matshita DVD-RAM
UJ-825S (DVD/CD +/- R/W, DVD-RAM)
No configuration needed.
Sound OK VIA VT8233/A/8235/8237
AC97 Audio
No configuration needed.
Touchpad OK Synaptics SynPS/2 with 4
multi-buttons
No configuration needed. Multi-buttons works as well.
ACPI OK Suspend to RAM,
Suspend to disk, etc.
No configuration needed. Works out of the box.
Special keys & buttons
OK Mail, web, P1, P2, volume,
mute, Fn-*, etc.
See below for configuration.
4
F8-x86_64 on the Acer Ferrari 3400LMi
Hardware Status Details Notes
PC-card OK Texas Instruments
PCI4510 PC card/Cardbus
No configuration needed.
Bluetooth OK Cambridge Silicon Radio No configuration needed,
see comments below.
IEEE 1394 Firewire
OK Texas Instruments
PCI4510 IEEE-1394
No configuration needed, see comments below.
USB OK VIA, 4xUSB 2.0 No configuration needed.
Infrared OK See below for
configuration.
Card reader OK 5-in-1 (MMC, SM, SD, MS
[Pro])
No configuration needed.

2 Installation

No special procedure is needed during the core installation of F8 x86_64. Partition the hard drive as desired and install the components that you like. However, some packages will make life easier when configuring your new laptop. These are mentioned in the corresponding sections below and may be installed afterwards.

2.1 Potential pitfalls

Depending on your setup there are some pitfalls you should know about.

2.1.1 Graphical installer

Fedora Core 5 installation and later runs without any problems, while Fedora Core 4 should be started with:
# linux nofb
This tells the installation to disable the frame buffer so you may use the graphical mode of the installer. Otherwise you will loose the display shortly after the installation enters graphical mode. This only applies to FC4 and earlier.

2.1.2 Disk size

However, depending on your hardware you might notice a strange disk size during the installation of F8. If you see a disk size less than expected you should pass the kernel option libata.ignore_hpa=1 to the installation.
1. When you see the graphical boot screen, press tab.
2. Edit the boot command to look like:
5
F8-x86_64 on the Acer Ferrari 3400LMi
vmlinuz initrd=initrd.img libata.ignore_hpa=1

3 Hard drive

No hassle what so ever, but my own reflection is that the standard hard drive does not match the “high end gear” profile of this laptop. When the laptop was released 120 MB drives was the latest of the greatest and 100MB drives were off the shelf goods in most stores. However, a smaller drive would have been ok at a higher speed, at least 5400rpm.

3.1 Upgrading the drive

I am addicted to VMware and want extra of everything, size, speed, RAM, etc. Thus, I have replaced the original Hitachi Travelstar 80 GB (4200rpm) drive with a Seagate Momentus 160 GB (5400rpm, ATA/ATAPI-6, ST9160821A). What a difference! The higher speed, as well as the higher storage density, pays off in far better performance. Operating temperature is the same as for the original drive. According to the smartmontools it runs at 40-48 °C during normal load with peaks above 50 °C during heavy load. A highly recommended upgrade!
Depending on the hardware you might notice a strange disk size of your new drive. If you just plan to copy your existing installation to the new drive you need the following two lines in your /etc/modprobe.conf file:
alias scsi_hostadapter libata options libata ignore_hpa=1
If you plan on installing a fresh system on the new drive take a look in the 2 Installation section above. During the installation the proper entries are written to /etc/modprobe.conf.

4 IEEE 1394 Firewire

With FC5 and later there should not be any problems with the IEEE 1394 Firewire support. For me it works just as smooth as the USB support. If you are running kernel version 2.6.14 or later you may skip this section, unless you have specific interest in tweaking you Firewire settings.
A new alternative driver stack for Firewire support (a.k.a Juju) was introduced as experimental in kernel version 2.6.22. In Fedoras kernel configuration
2.6.23.9-85.fc8 the new IEEE1394 driver stack replaces the old drivers. The rest of this section deals with the old driver stack, i.e before Fedora kernel
2.6.23.9-85.fc8. For the most recent information please refer to http://www.linux1394.org.
However, on systems with kernel version 2.6.13 or earlier some might experience problems with the Firewire support due to different default values used in the kernel module. First a short description of the potential problems.
6
F8-x86_64 on the Acer Ferrari 3400LMi

4.1 Potential problems

There are no problems regarding loading modules or mounting an external IEEE 1394 drive, and if you are patient you managed to browse the content as well. The problems starts when you try to transfer larger amounts of data. The process stalls and chokes up the system log with messages like:
kernel: ieee1394: sbp2: aborting sbp2 command kernel: scsi1 : destination target 0, lun 0 kernel: command: Write (10): 2a 00 02 e1 bc 58 00 00 10 00 kernel: ieee1394: sbp2: aborting sbp2 command kernel: scsi1 : destination target 0, lun 0 kernel: command: Write (10): 2a 00 02 e1 bc 58 00 00 10 00 kernel: ieee1394: sbp2: aborting sbp2 command kernel: scsi1 : destination target 0, lun 0 kernel: command: Test Unit Ready: 00 00 00 00 00 00 kernel: ieee1394: sbp2: reset requested kernel: ieee1394: sbp2: Generating sbp2 fetch agent reset redneck kernel: ieee1394: sbp2: aborting sbp2 command kernel: scsi1 : destination target 0, lun 0 kernel: command: Write (10): 2a 00 01 06 d0 df 00 00 03 00 kernel: ieee1394: sbp2: aborting sbp2 command kernel: scsi1 : destination target 0, lun 0 kernel: command: Write (10): 2a 00 01 06 d0 df 00 00 03 00 kernel: ieee1394: sbp2: aborting sbp2 command kernel: scsi1 : destination target 0, lun 0 kernel: command: Write (10): 2a 00 02 e1 bd b0 00 00 20 00
Seems to me like a hole bunch of timeouts with corresponding bus resets. These suspicions got even stronger after timing a read data transfer:
# time cp -rp /media/ieee1394disk/430MB_folder ~
real 20m29.516s user 0m0.052s sys 0m6.476s
Copying 430 MB takes 20 minutes 29 seconds (comparable to USB 1.0 performance). However, the “actual” time is less than 7 seconds. 20 minutes and 22 seconds are spent waiting. Waiting for what? I do not know, but obviously some bits and pieces fail during the transfer. Furthermore, I do not feel comfortable with the data integrity when I see these kind of results.
After some digging in the kernel documentation and a quick look in the sbp2.c source file it turned out that this problem probably is related to a “buggy IEEE 1394 chip” in the external device. The proposed solution is to load the sbp2 module with the argument serialize_io=1. It turned out really well, so here are some tips regarding the IEEE 1394 configuration.
7
F8-x86_64 on the Acer Ferrari 3400LMi

4.2 Configuring Firewire

If you experience the problems mentioned above, and you are running kernel version 2.6.13 or earlier, put the following line in your /etc/modprobe.config:
options sbp2 serialize_io=1 max_speed=2
The serialize_io=1 option tells the scsi drivers to only send one scsi command at a time. Unfortunately, this setting has a small impact on performance, but it is the fix that makes things work.
In kernel version 2.6.14 the default value for serialize_io was changed from 0 to 1. Thus, if you are running kernel version 2.6.14 or later you should not need do do anything, unless you want to optimize performance (see comments below) or fiddle with the other settings.
The max_speed option might be useful in rare occasions if you want to limit the maximum transfer rate to support “even more buggy” external hardware. Valid values for the max_speed option are:
0 100 mb
1 200 mb
2 400 mb (default)
3 800 mb
When timing the very same read transfer as above I now get the following result:
# time cp -rp /media/ieee1394disk/430MB_folder ~
real 0m24.871s user 0m0.076s sys 0m6.400s
That is what I call improvement! Going from over 20 minutes down to roughly 25 seconds.

4.3 Comments

After some further exercises with other external hard drives it turned out that the problem described in the previous section indeed seems to be related to the IEEE 1394 chip in the external drives. With some hardware it is quite possible to use the faster serialize_io=0 option. The performance benefit is in the range 20-25%, so consider your options. If you only use IEEE 1394 for your own hardware and it works well with the faster setting, go for it. Otherwise, compatibility with other hardware might be more valuable. Personally, I think it was a wise decision to change the default setting in the sbp2 module. After all those “buggy IEEE 1394 chips” seem to be quite common, and prior to start
8
F8-x86_64 on the Acer Ferrari 3400LMi
optimizing performance you just want things to work.

5 USB

USB support works as expected. I have noticed no problems what-so-ever with the USB ports. Especially with the desktop enhancements introduced with FC5 it works like a charm. Absolutely no configuration needed.

6 5-in-1 Card reader

The 5-in-1 card reader utilizes the USB interface and is operational right after installation. Analogous to the USB ports there is no hassle at all.

7 PC-card

I have only used the PC-card slot for a Compact Flash memory adapter and it just works. True plug-and-play.

8 Special keys & buttons

The special keys & buttons are some what confusing. Some of the special buttons do not need any additional configuration to work. Others need a key code mapping, while some even lack a scan code. The chain of scan codes and key codes translations starts in the core Linux kernel and ends in your X configuration. Some examples of confusion:
The Mail button gets a pre-configured key code of 155 by Linux, but with X loaded the key code is 236. The buttons WWW, Fn-F4, Fn-F5, Fn-F8, Fn-up and Fn-down show similar behavior.
The buttons P1, P2, Fn-F1, Fn-F2, Fn-F3 do not have pre-configured key codes, while their respective scan codes are e074, e073, e025, e026 and e027. However, in single user mode they all lack scan-codes. I do not know why.
However, do not despair. It is possible to get all of the special keys & buttons working. Here is a short summary of my current status on this issue.
9
F8-x86_64 on the Acer Ferrari 3400LMi
Config
Button Work
setkeycodes
Xmodmap
KDE
Comments
Mail
yes x x E-mail button, ex: launch Thunderbird
WWW
yes x x WWW button, ex: launch Firefox
P1
yes x x x User button, ex: launch NetBeans
P2
yes x x x User button, ex: launch VMware
Fn-F1
yes x x x User button, ex:
Fn-F2
yes x x x User button, ex:
Fn-F3
yes x x x User button, ex:
Fn-F4
yes Sleep-button recognized by ACPI.
Fn-F5
yes x x Toggle external display, XF86Display
Fn-F6
yes Dim display, no configuration needed
Fn-F7
yes Toggle touch-pad, no configuration needed
Fn-F8
yes x x Toggle mute
Fn-Home
yes Go home (XF86Home)
Fn-End
yes Go to end (XF86End)
Fn-up
yes x x Volume raise
Fn-down
yes x x Volume lower
Fn-left
yes Brightness lighter, no configuration needed
Fn-right
yes Brightness darker, no configuration needed
Bluetooth
yes No configuration needed
WLAN
yes No configuration needed

8.1 Configuration procedure

It is a tedious procedure to find out the proper scan-codes, Linux key-codes and X key-codes. Yes, on top of the scan-codes there are both Linux and X key-codes to keep track of. I probably have it all confused, but here is how I did it:

8.1.1 X key-codes

1. Start by finding out what key-codes X already knows of. Here xev is a valuable friend. The buttons that had key codes configured by default for
10
F8-x86_64 on the Acer Ferrari 3400LMi
me was:
Button X key-code Default X key symbols
Mail 236 -
WWW 178 -
Fn-F4 223 none, but triggers KPowersave suspend->RAM
Fn-F5 214 none, but generate a Capability changed event
that is received by the X-server.
Fn-F8 160 -
Fn-NumLk 77 Num_Lock
Fn-Scr Lk 78 Scroll_Lock
Fn-Home 97 Home
Fn-End 103 End
Fn-up 176 -
Fn-down 174 -
These are the buttons that are the simplest to get working. Save these X key­codes for future use. First we need to get the other keys to show up under X as well. In order for them to do so they need properly configured Linux key-codes that they lack for the moment.

8.1.2 Scan-codes

This step is different and considerable easier under F8 than FC4 or FC5. There is no need to shutdown X now as before.
2. Just press the desired key, ex. P1. Then take look at the dmesg output:
# dmesg | tail atkbd.c: Unknown key pressed (translated set 2, code 0xf4 on isa0060/serio0). atkbd.c: Use 'setkeycodes e074 <keycode>' to make it known. atkbd.c: Unknown key released (translated set 2, code 0xf4 on isa0060/serio0). atkbd.c: Use 'setkeycodes e074 <keycode>' to make it known.
I got the following result:
11
F8-x86_64 on the Acer Ferrari 3400LMi
Button scan-code
P1 e074
P2 e073
Fn-F1 e025
Fn-F2 e026
Fn-F3 e027

8.1.3 Linux key-codes

3. Next, figure out what Linux key-codes that are available by looking at the Linux scan-code – key-code mapping.
# getkeycodes Plain scancodes xx (hex) versus keycodes (dec) for 1-83 (0x01-0x53) scancode equals keycode
0x50: 80 81 82 83 99 0 86 87 0x58: 88 117 0 0 95 183 184 185 0x60: 0 0 0 0 0 0 0 0 0x68: 0 0 0 0 0 0 0 0 0x70: 93 0 0 89 0 0 85 91 0x78: 90 92 0 94 0 124 121 0
Escaped scancodes e0 xx (hex)
e0 00: 0 0 0 0 0 0 0 0 e0 08: 0 0 0 0 0 0 0 0 e0 10: 165 0 0 0 0 0 0 0 e0 18: 0 163 0 0 96 97 0 0 e0 20: 113 140 164 0 166 0 0 0 e0 28: 0 0 255 0 0 0 114 0 e0 30: 115 0 172 0 0 98 255 99 e0 38: 100 0 0 0 0 0 0 0 e0 40: 0 0 0 0 0 119 119 102 e0 48: 103 104 0 105 112 106 118 107 e0 50: 108 109 110 111 0 0 0 0 e0 58: 0 0 0 125 126 127 116 142 e0 60: 0 0 0 143 0 217 156 173 e0 68: 128 159 158 157 155 226 0 112 e0 70: 0 0 0 0 0 0 0 0 e0 78: 0 0 0 0 0 0 0 0
4. First we need to set a Linux key-code for the keys that lack one. Add the following lines to /etc/rc.d/rc.local to set the key-codes after all services are started.
# Set Linux key-codes for special keys & buttons: #
12
F8-x86_64 on the Acer Ferrari 3400LMi
# Buttons: P1 P2 setkeycodes e074 151 e073 152 # # Buttons: Fn-F1 Fn-F2 Fn-F3 setkeycodes e025 131 e026 132 e027 133
5. In order to avoid a restart to load these setting, issues the very same commands.
# setkeycodes e074 151 e073 152 # setkeycodes e025 131 e026 132 e027 133

8.1.4 X key-codes revisited

6. Repeat step 1 and use xev to figure out what X key-codes these buttons got. I got the following:
Button X key-code
P1 201
P2 146
Fn-F1 135
Fn-F2 140
Fn-F3 248
7. Ok, now we have X key-codes for all special keys & buttons and need to map them to proper key-symbols. In order to do that put the following in the file /etc/X11/Xmodmap:
! Acer Ferrari 3400Lmi special keys & buttons ! ! Button X key-code ! ------ ---------­! Mail 236 ! WWW 178 ! P1 201 ! P2 146 ! Fn-F1 135 ! Fn-F2 140 ! Fn-F3 248 ! Fn-F5 214 ! Fn-F8 160 ! Fn-up 176 ! Fn-down 174 ! keycode 236 = XF86Mail keycode 178 = XF86WWW keycode 201 = XF86Launch1 keycode 146 = XF86Launch2
13
F8-x86_64 on the Acer Ferrari 3400LMi
keycode 135 = XF86Launch3 keycode 140 = XF86Launch4 keycode 248 = XF86Launch5 keycode 214 = XF86Display keycode 160 = XF86AudioMute keycode 176 = XF86AudioRaiseVolume keycode 174 = XF86AudioLowerVolume
8. The setting above are loaded the next time X is started, but to load them without a restart of X do:
# xmodmap -verbose /etc/X11/Xmodmap ... ! ! executing work queue ! keycode 0xec = XF86Mail keycode 0xb2 = XF86WWW keycode 0xc9 = XF86Launch1 keycode 0x92 = XF86Launch2 keycode 0x87 = XF86Launch3 keycode 0x8c = XF86Launch4 keycode 0xf8 = XF86Launch5 keycode 0xd6 = XF86Display keycode 0xa0 = XF86AudioMute keycode 0xb0 = XF86AudioRaiseVolume keycode 0xae = XF86AudioLowerVolume

8.1.5 Configure actions

9. Finally it is time to configure the button actions. Actions for all but the audio control keys are easily configured in the KDE Control Center -> Regional & Accessibility -> Keyboard Shortcuts under the tab Command Shortcuts.
10. However, you probably also want to configure the audio control buttons. This is done in the same manner inside KMix. Fire up KMix and go to the menu Settings/Configure Global Shortcuts...
11.If you want to use the Fn-F5 key to manipulate the graphical output, refer to the section 10 Graphics below.

9 CPU & ACPI support

A pleasant news is the advancements in ACPI support. Now all the desirable features are working right out of the box, without any configuration.
14
F8-x86_64 on the Acer Ferrari 3400LMi

9.1 Suspend

I am glad to see that both Suspend to Disk and Suspend to RAM works like a charm. Previous there has been a lot of struggle, if at all possible, to get a stable and reliable ACPI support. OK, I know that suspend has been around for a while by now, but hand on the heart - has it been user friendly and reliable? I have not had that experience. So a reliable ACPI support right out of the box feels really luxurious.
Even the special sleep key, Fn-F4, is configured during the installation and works as expected (Suspend to RAM). The power button works of course as well, as it always has done.

9.2 CPU frequency scaling

The CPU frequency scaling has been working for quite some time now. So it is no big surprise that it works out of the box in F8 on this puppy. However, it is always nice to see things evolve and improve. The improvements of the suspend functionality mentioned above together with solid CPU frequency management really shows off in power management.
KPowersave now feels really mature and has three pre-configured CPU policies: Performance, Dynamic and Powersave. Dynamic is the default and there is no real reason to change it.

10 Graphics

The advancement of Xorg and its related drivers and modules has been enormous the last two years. Fedora 8 includes Xorg 7.2 which is a welcome improvement in X-server configuration. Furthermore, there is absolutely no need to use the ATI proprietary driver any more. This is a true liberation, for sure I will not miss all the violations the proprietary ATI driver did to my Xorg configuration.
The graphical hardware is properly identified and setup during the installation, so you will enjoy X11 right from the start.
Another nice thing is that the dim display button, Fn-F6, works without any configurations.

10.1 Basics

The Ferrari 3400 is equipped with a ATI Mobility Radeon 9700 chip. This chip has 128MB of memory and provides two external outputs, VGA-0 and S-video. The built-in display is called LVDS. These names refer to the definitions used by the radeon X driver.
The graphical chip has 2 CRTCs, eg pipeline for rendering graphics. This means that only two outputs may be active simultaneously, either LVDS + VGA-0, LVDS
15
F8-x86_64 on the Acer Ferrari 3400LMi
+ S-video or VGA-0 + S-video. This is a common limitation for most graphics hardware.
Note: The output names differ depending on the driver used. The names used in this document relate to the radeon driver. If you use some other driver use xrandr -q to find out the proper names (provided that it supports RandR).

10.1.1 The radeon driver

Support for the ATI Mobility Radeon 9700 chip in the Ferrari is provided by the radeon driver. This driver supports all the features we want: the RandR extension (v 1.2), 3D acceleration (DRI) and TV-out.
There is also the ati driver, not to be confused with the proprietary fglrx driver. However, the ati driver is only a wrapper that auto-detects ATI cards and load the appropriate driver. In our case that will result in the radeon driver being loaded.
The main improvement in Xorg 7.2 is the arrival of version 1.2 of the X RandR (Resize and Rotate) extension. It provides automatic discovery of modes together with the ability to configure outputs dynamically. As of today only a few drivers support RandR 1.2. Fortunately, the radeon driver is one of them.

10.1.2 Simple configuration

If you are familiar with X configuration and take a look at the default /etc/X11/xorg.conf file, generated during the installation you will notice a significant change. Many of the traditional settings, sync and refresh rates, modes and modelines, are gone. All these settings are now auto-detected by RandR 1.2 and should only be present if you want to override the detected values. In some rare situations this might be needed, e.g. when an external monitor reports incorrect values.
In order to get full dual-head support you only need to add one line to the default X configuration. If you want to optimize 3D acceleration you need another line. That is a total of two lines for a full fledge X configuration supporting all features. Quite an improvement. Thank you all nice X guys!
The X server log file /var/log/Xorg.0.log will be your valuable companion when it comes to troubleshooting or just checking what configuration that is auto-detected.
For reference my xorg.conf is presented in Appendix A.

10.2 Dual-Head

The X Resize and Rotate (RandR) extension introduces a significant shift in dual­head configuration with its version 1.2. All your setting may now be altered on
16
F8-x86_64 on the Acer Ferrari 3400LMi
the fly by the command line tool xrandr, and there is no need to restart the X server.

10.2.1 Virtual screen size

RandR works its magic by means of a virtual screen that is larger than the a single monitor.
The size of the virtual screen is reported as the maximum value by the command:
# xrandr -q Screen 0: minimum 320 x 200, current 1400 x 1050, maximum 1400 x 1200 ...
In this case the size is 1400x1200, which is the default virtual screen size for this setup. The default screen size is too small for serious dual-head configurations. This value needs to be increased by setting the Virtual option in the Display sub­section in /etc/X11/xorg.conf:
SubSection "Display"
Viewport 0 0 Depth 24
Virtual 3000 2000
EndSubSection
This is the most (only) important setting needed in xorg.conf. However, in order to enjoy hardware support for 3D acceleration the virtual screen may not be larger than 3000x2000. This limitation differs for the various driver, but for the radeon driver the limitation is 3000x2000. This is sufficient for having an external monitor running at 1600x1200 side-by-side with your internal display as 1400x1050.
After modifying xorg.conf you need to restart your X server, ie. logout and logon again. Now, check your settings once again:
# xrandr -q Screen 0: minimum 320 x 200, current 1400 x 1050, maximum 3000 x 2000 VGA-0 connected (normal left inverted right x axis y axis) 1280x1024 59.9 1152x864 75.0 74.8 1024x768 84.9 75.1 70.1 60.0 43.5 832x624 74.6 800x600 84.9 72.2 75.0 60.3 56.2 640x480 84.6 75.0 72.8 66.7 60.0 720x400 87.8 70.1 LVDS connected 1400x1050+0+0 (normal left inverted right x axis y axis) 0mm x 0mm 1400x1050 60.0*+ 1360x768 59.8 60.0 1280x800 60.0 1152x864 60.0 1280x768 60.0
17
Loading...
+ 39 hidden pages