Dell 700m with Debian Sarge
Kernel 2.6.9 custom built
This site is:
and
Here I will try to explain as best as I can how I got Debian Sarge
working on my Dell 700m laptop. Most things are very straight forward,
so I wont go into them. What I will focus on, is:
1.
Kernel 2.6.9 - with patch for Swsusp2
2.
IPW 2200 B/G Intel Pro Wireless Card
3.
1280x800 Resolution wide screen display
with X
4. Using
the
Touchpad correctly - Synaptics driver with X
5. ACPI power management
NEW UPDATES (CPU throttling,
Suspend
to RAM, Suspend to
Disk)
6. Flashing
BIOS with the lack of a Floppy drive
7.
Using TV out with the i810 Chipset - by Juergen
Lennefer
1.
I got Debian's new Sarge installer
from here.
I will assume you know how to choose what is suited for this laptop
(i386)
The install was straight forward from the CD. It boots, and installs.
What I did, is I made sure I installed with the 2.6.8 kernel. For that,
if I remember correctly, you need to pass a "linux26" command at the
install, when it prompts you. But to be sure, press F3 there, and it
will display the various kinds.
MAKE SURE that if you want the ACPI Software Suspend2 to work, you
create a sufficient SWAP partition.
That is RAM + 30%. I have 512 Ram so I went with 1GB Swap just to be
sure.
Once you are done, you can install your Preferred kernel, I chose the
2.6.9 as APCI is known to be better with 2.6.9. I installed the sources
from here.
Then I downloaded the patch for Swsusp2 from here
. At time
of writing, the newest one was 2.1.5. You unzip it to a location you
choose, then you go to the kernel source folder, usually
/usr/src/kernel-source-2.6.9/ and you apply the patches. Lets say you
unzipped the patch to /home/mike/swsusp
Then here is step by step what you do:
cd /usr/src/kernel-source-2.6.9/ ---> provided here are your
kernel
sources
/home/mike/swsusp/apply --> this will apply the patch.
For me it didnt go 100% smooth, one patch didnt want to apply, so the
installer asked me if I wanted to reverse it. I said NO. Just a note,
to unapply the patches, you do /home/mike/swsusp/unapply from the
kernel sources directory.
Now, go to the menuconfig, and configure your kernel as you want to. If
you have the same hardware as me , you might use my config here.
What you need to look for, is that under Power Management, having
applied the patch, you will see a new menu, Software Suspend 2. To read
a lot more of Debian Specific install, read here
. Please only choose (M) as
module and not (*) as compiled in. As
we use INITRD image for debian kernels, when swsusp2 loads, the HDD is
not being recognized yet, so it will stop loading it. When it is a
module, we can call it later, when the HDD is already initalized. More
about swsusp2 later in this document. Convenient
hyperlink to the place.
2.
This Intel PRO wireless is not working out
of the box as of yet, 2.6.9 kernel. You need to get two things, the Firmware
and
the Drivers.
The firmware will load every time you boot, and that is how it's
working properly. The driver you need to compile. When you unzip the
Firmware file, just copy all files to /usr/lib/hotplug/firmware/
Then unzip the driver, and do a "make" and "make install"
When you next reboot your computer, you will have everything ready. Of
course make sure that you have the wireless extensions installed. Try
passing the follwoing command "iwconfig" as root. If it works, you have
it. If its an unknown command, you need to install wireless-tools
"apt-get install wireless-tools"
Now pass the commang "iwconfig" (after rebooted with the firmware in
place and driver compiled) and see which eth interface is associated
with Wireless. For me it is eth0 and eth1 is the Wired Network.
Then do a regular config for the ethx (x being the number of your
interface) in /etc/network/interfaces
Here's mine, I have WEP encription, Shared key secure mode, and no DHCP
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 192.168.0.5
netmask 255.255.255.0
gateway 192.168.0.1
wireless_mode managed
wireless_essid xxxxxxx #
(this is the ESSID of your gateway)
wireless_key restricted
xxxxxxxxxxxxxxxxxxxxxxxxxx # (this is the WEP key)
3.
The 1280x800 resolution does not
work, as the BIOS doesn't have the 1280x800 resolution of the 855
Chipset. What you have to do, is run a script, every time you boot,
that will load itself to the ROM or RAM (sorry for inaccuracy) of the
Chip, so it will think it supports 1280x800. Thanks to this Gentleman,
Alain Poirier, it is now available. Get the patch from here.
You should read the
README always of course, but here is what you need to do to get it
working on your Dell700m, and in general everything that has the 855
Chip and 1280x800 resolution.
Unzip the file, and run "855resolution -l". You will see a bunch of
resolution modes. This is my output for reference:
VBIOS
Version: 3104
Mode 30 : 640x480, 8 bits/pixel
Mode 32 : 800x600, 8 bits/pixel
Mode 34 : 1024x768, 8 bits/pixel
Mode 38 : 1280x1024, 8 bits/pixel
Mode 3a : 1600x1200, 8 bits/pixel
Mode 3c : 1280x800, 8 bits/pixel
Mode 41 : 640x480, 16 bits/pixel
Mode 43 : 800x600, 16 bits/pixel
Mode 45 : 1024x768, 16 bits/pixel
Mode 49 : 1280x1024, 16 bits/pixel
Mode 4b : 1600x1200, 16 bits/pixel
Mode 4d : 1280x800, 16 bits/pixel
Mode 50 : 640x480, 32 bits/pixel
Mode 52 : 800x600, 32 bits/pixel
Mode 54 : 1024x768, 32 bits/pixel
Mode 58 : 1280x1024, 32 bits/pixel
Mode 5a : 1600x1200, 32 bits/pixel
Mode 5c : 1280x800, 32 bits/pixel
Mode 7c : 1280x801, 8 bits/pixel
Mode 7d : 1280x801, 16 bits/pixel
Mode 7e : 1280x801, 32 bits/pixel
As you can see I alreeady have 1280x800 resolutions enabled, and the
reason is that I already ran the script. What you do, is you check out
a Mode that you will never use for sure. I chose a ridiculously high
resolution, and I ran the patch against it. What you do, is you run
"855resolution 5c 1280 800", and what that does, is overwrites the Mode
5c to be 1280 800. As you can see for me 5c is now 1280x800.
As I said earlier, you need to run this every time you boot, as the
BIOS will forget it on reboot. I created a scrip and called it
"startupscript" and placed it in /etc/init.d/startupscript . Now I
installed rcconf (apt-get install rcconf) and then ran it "rcconf" and
now I can select this startupscript to start every time I boot. Rcconf
is a great tool anyways. Here is the script for reference
# /etc/init.d/startupscript
855resolution 5c 1280 800
Now we are not yet done. The XF86Config-4 has to be modified.
Here is what I did to get mine going.
Section "Monitor"
Identifier "Generic
Monitor"
HorizSync
30-90
VertRefresh 50-160
Option
"DPMS"
Modeline
"1280x800_60.00"
83.46 1280 1344 1480 1680 800 801 804 828
-HSync +Vsync
To this section, I added the part that is Italicized.
(Do not italicize it in
the real file)
Section "Screen"
Identifier "Default
Screen"
Device
"Generic
Video Card"
Monitor
"Generic
Monitor"
DefaultDepth 24
SubSection "Display"
Depth
24
Modes
"1280x800"
EndSubSection
Again the Italicized
part is
what I added.
Now restart your X and enjoy the High and wide resolution.
4.
Synaptics Touchpad Driver with X windows
Out of the box, your Touchpad will work, but not correctly. For
example, you cannot click with the TAP, etc. And not only that. This
new Synaptics technology lets you scroll with the touchpad, if you tap
once on the right side, keep your TAP pushed in (dont release) and pull
your finger up-down. The same you can do with a bottom TAP and pulling
finger left-right. This will equal to the browser's BACK and NEXT
buttons. Great feature once you get used to it.
Here is how its done:
apt-get install xfree86-driver-synaptics
Once that is done, you need to modify your XF86Config-4 file in two
places. I will just copy mine, and you can figure out what was changed.
Pretty easy:
# Add this section where it belongs:
Section "InputDevice"
Driver
"synaptics"
Identifier
"Mouse[1]"
Option
"Device"
"/dev/psaux"
Option
"Protocol" "auto-dev"
Option
"LeftEdge" "1700"
Option
"RightEdge" "5300"
Option
"TopEdge"
"1700"
Option
"BottomEdge" "4200"
Option
"FingerLow" "25"
Option
"FingerHigh" "30"
Option
"MaxTapTime" "180"
Option
"MaxTapMove" "220"
Option
"VertScrollDelta" "100"
Option
"MinSpeed" "0.06"
Option
"MaxSpeed" "0.12"
Option
"AccelFactor" "0.0010"
#
Option
"SHMConfig" "on"
#
Option
"Repeater"
"/dev/ps2mouse"
# Modify this end section like follows:
Section "ServerLayout"
Identifier "Default
Layout"
Screen
"Default
Screen"
InputDevice "Generic Keyboard"
InputDevice "Mouse[1]"
"CorePointer"
#
InputDevice "Configured Mouse"
InputDevice "Generic Mouse"
EndSection
As I am sure you can see, now the default mouse is Mouse[1], and
Mouse[1] is the synaptics mouse. Restart X and voila, you have a smart
touchpad.
5.
ACPI is not working out of the box. You need
several modifications.
-----NEW
UPDATE BEGINS 2005 04 12----
I just got speedstepping working as I wanted it to work, so it was time
to post the results and ways to get it work here.
First you need to make sure you have a higher kernel than 2.6.8 as
until then the Dothan CPU is unrecognized. There are patches you can
apply to an older kernel as well, but I havent done it, so I wont
explain it due to lack of experience. Before you compile the kernel,
please make sure you have the following enabled.
CONFIG_CPU_FREQ_GOV_USERSPACE=y
CONFIG_X86_SPEEDSTEP_CENTRINO=m
CONFIG_X86_SPEEDSTEP_CENTRINO_TABLE=y
CONFIG_X86_SPEEDSTEP_CENTRINO_ACPI=y
CONFIG_X86_SPEEDSTEP_ICH=m
CONFIG_X86_SPEEDSTEP_SMI=m
CONFIG_X86_SPEEDSTEP_LIB=m
CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK=y
The ones that are underlined are must haves, the rest I have no idea
honestly, but I have them anyways. To see if you have these in your
already built kernel, pass the following commands:
grep
SPEEDSTEP
/usr/src/kernel-source-2.6.x/.config
grep
USERSPACE
/usr/src/kernel-source-2.6.x/.config
of course change x in kernel-source-2.6.x to whatever your
kernel-source path is. If these come back with results same as mine,
you are good to do.
Now load the necessary modules, speedstep_centrino cpufreq_userspace
modprobe
speedstep_centrino
modprobe
cpufreq_userspace
For these to load automatically at every boot, put them in /etc/modules
(of course in that case do not include "modprobe")
Now install the powernowd
apt-get
powernowd
This will run in the background, and will set your CPU speed at
necessary speeds. THe speed for me varies between 600MHz and 1600MHz,
which is pretty nice. This is a dynamic tool, so it doesnt only have
the two (minimum maximum) values, but all together 8 speeds, so it can
adjust as it needed. All I can say that I can almost never hear the
fan, unless I do something drastic like compiling kernel, rendering,
encoding, etc. Pretty neat. I will try to play with it later as well,
my goal is to make something that will change the profile,for example
when unplugged, the speed can vary between only 600 and 900 etc. Also I
would like to make it lower than 600MHz if possible, but will have to
look into that later.
To check the CPU frequency you currently run at just pass the following
command:
less
/proc/cpuinfo
You should get something like this:
processor
: 0
vendor_id
: GenuineIntel
cpu
family : 6
model
: 13
model
name : Intel(R)
Pentium(R) M processor
1.60GHz
stepping
: 6
cpu
MHz
: 598.244
cache
size : 2048 KB
fdiv_bug
: no
hlt_bug
: no
f00f_bug
: no
coma_bug
: no
fpu
: yes
fpu_exception
: yes
cpuid
level :
2
wp
: yes
flags
: fpu vme de pse tsc msr mce cx8 sep mtrr pge mca cmov pat clfl
ush
dts acpi mmx fxsr sse sse2 ss tm
pbe est tm2
bogomips
: 1185.79
-----NEW
UPDATE ENDS 2005 04 12----
I had done two things. One was I wanted to have Suspend to RAM work.
With the 2.6.8 kernel, that was impossible. With the 2.6.9, it is
possible, and I will explain why. With the 2.6.8, the computer
suspends, but will never wake up. WIth 2.6.9 it will wake up as well,
but nothing is perfect enogh right? This scenario is true in this case
too. It will wake up, but will not post Video. That means that you wont
see anything on the screen, but will be able to SSH into the box via
ethernet. There is a tool that wil wake up the Video, and I found it here
. To
get the file, just click on the "video_post tool from Venki". This will
download a file named "Attachment.cgi" which you can handle just like a
zip file. Unzip it, and install it. It will have the Readme file with
it if I remember well. Just put it under a directory, in default it is
under /root. When you unzip it, it will have the directory /root/emu
and in there will be the tool /root/emu/video_post
All you need now, is to write a script that will do the suspend and
wake your video up after suspend. I will include my script here, but
you might need to tailor it to your needs. What I discovered is that
the Wireless network doesnt work after suspend, so I need to remove and
reload the wireless module, and also the regular wired netowrk module,
as that hangs the machine if not unloaded. Dont forget that. Got me
puzzled for a while.
Here is my /etc/acpi/lidbtn.sh script. For this you need to have a
/etc/apci/events/lidbtn file. Here are how mine look like:
/etc/acpi/events/lidbtn
event=button/lid
action=/etc/acpi/lidbtn.sh
This tells the ACPID that whenever the lid is closed or opened, it
should look for what to do in the /etc/acpi/lidbtn.sh file.
/etc/acpi/lidbtn.sh
#!/bin/bash
lid_state=/proc/acpi/button/lid/LID0/state
test
-e $lid_state || exit 0
if
cat $lid_state | grep closed >
/dev/null
then echo "lid closed ->
suspending"
rmmod ipw2200
rmmod b44
echo "mem" > /sys/power/state
modprobe i830
/root/emu/video_post
chvt 1
chvt 7
modprobe ipw2200
modprobe b44
/etc/init.d/networking restart
else
echo "lid opened -> resuming"
fi
This is a script I wrote, and might not be 100% correct, but it works
for me. Please remember I am not a linux pro. Now, make sure you have
acpid installed, if not then "apt-get install acpid". When acpid runs,
and you close the lid, you should get into suspend. When you open the
lid, the computer will come out of suspend, but you will
see a lot of
weird characters, not your regular X windows. THis is a because the
video_post tool is not a permanent way to fix it, and this is all we
have for now. I hear they are planning to fix this in the next few
kernels.
What
you need to do now,
is Press CTRL ALT F1 and then CTRL ALT F7
-----NEW
UPDATE BEGINS 2005 04 11----
Thanks to Juergen Lennefer,
this is resolved, hence I crossed
the text out. In the script above you already see the right parameters,
but just to explain what I had to do to solve the Console shifting, I
will show what I included in the script.
chvt
1
chvt
7
This makes the console shift
to 1 and then back to 7 (default
KDE - X windows console). I will here include Juergens email piece,
that explained about it. His solution is way more advanced, but all I
needed is to get back console 7, so I modified it to my needs. Here is
his solution:
"To
solve this SuSE has included a
script switch_vt which is part of
SuSE's
special ACPI powermanagement
scriptings. I added the video_post
program
just before switching the
consoles, but it still doesn't work.
I'm
quite shure this is because the
miss of the kernel fix in 2.6.9.
This
is switch_vt with my change:
#!/bin/bash
#
first get helper functions (e.g.
DEBUG, load_scheme, ...)
.
"/usr/lib/powersave/scripts/helper_functions"
DEBUG
"process function: switch_vt"
DIAG
#
Switch LCD on for Dell Inspiron 700m
/usr/local/bin/video_post
sleep
2
local
VT
VT=`fgconsole`
chvt
1
chvt
$VT
exit
0
Maybe
it makes you solution more
convenient ;-)"
Thanks again Juergen.
-----NEW
UPDATE ENDS 2005 04 11----
There you have your X back with no problem. Isnt that great? We dont
even miss WIndows anymore, do we :))
Now the second issue is the SOftwaresuspend. That you want if you will
run out of battery, and you want your laptop to shut down completely,
but save the state where it was left at.
You need to download the swsusp2 patches, and that is explained in
detail at the beginning of this document. Here is a convenient hyperlink
for all you lazy linux
geeks...:)))
Once you have your kernel configured, dont compile just yet. You need
to place a script in the /etc/mkinitrd/scripts/ directory. Name it
swsusp2 and here it is how it should look like:
/etc/mkinitrd/scripts/swsusp2
#!/bin/sh
# Put this script in /etc/mkinitrd/scripts/ and regenerate your initrd (by
# "mkinitrd -o /boot/initrd.img-`uname -r`" or reinstall your kernel package.
# Copy in modules
# Note: if you want to add gzip to the list, you'll need zlib_deflate too.
MODULES="suspend_core suspend_block_io suspend_text suspend_swap lzf suspend_lzf"
pushd $MODULEDIR > /dev/null 2>&1
for i in $MODULES ; do
find -name "$i.ko"
done | cpio -p --make-directories --quiet $INITRDDIR/lib/modules/$VERSION/
popd > /dev/null 2>&1
# Figure out swap device from the first device listed in /proc/swaps
swap_device=`awk 'BEGIN{getline;getline;print$1}' < /proc/swaps`
swap_type=`awk 'BEGIN{getline;getline;print$2}' < /proc/swaps`
if [ "x$swap_type" = "xpartition" ] ; then
resume2=`perl -e "@a=stat '$swap_device';printf 'swap:%04x', \\$a[6]"`
else
echo "Unable to determine swap device! You will need to set resume2= on your"
echo "kernel command-line manually."
fi
[ -n "$resume2" ] && resume2="echo $resume2 > /proc/software_suspend/resume2"
# Modify linuxrc script
mv $INITRDDIR/linuxrc $INITRDDIR/linuxrc.real
cat <<EOT > $INITRDDIR/linuxrc
#!/bin/sh
export PATH=/sbin:/bin
mount -t proc proc /proc
. /loadmodules
modprobe suspend_core
modprobe suspend_block_io
modprobe suspend_text
modprobe lzf
modprobe suspend_lzf
modprobe suspend_swap
$resume2
echo > /proc/software_suspend/do_resume
rmmod suspend_swap suspend_lzf lzf suspend_text suspend_block_io suspend_core
umount /proc
. ./linuxrc.real
EOT
chmod 777 $INITRDDIR/linuxrc
Now that the script is in place, you are ready to compile and install
your kernel. Dont forget to do the kernel as I described and even more
as you can see in this
page. I already included this link in the 1st section, but I cannot
emphasise it enough. This led me to completion.
Once you are done, do an "apt-get install hibernate" and when
it installed itself, run "hibernate" and you will go into suspend. When
you restart the computer, you will get back to the original state where
you left it at.
6.
BIOS flash - HowTO
I wanted to flash my BIOS, but it wasn't as easy as I thought so. Dell
has only Windoze support, so that wont fly very well with this. What
you need, is a DOS boot CD-rom, as we have no floppy drive built in. If
you have a USB floppy, then I envy you,and please don't keep reading
this :)) That makes things easy.
I found this
site, and go down
to the part, that is titled "
Clean Bootable CD-Rom (for
BIOS upgrade) [new! dec 16,
2002]
"
Here you will see how to create a BOOT CD that will boot into DOS. I
wasted a full day on this, and a lots of CD's until I found this site.
If you follow the steps closely, you will have no problem. Of course
you need a windows system to create it. I had a VMware Windows Install
under Linux, so it was no problem to me. I hope this helps you.
7.
Using Video out Feature with the i810
Chipset. This has not been tested yet, I recieved this info from
Juergen Lennefer, who stumbled accross this site, and wished to add
additional information. Thanks Juergen. Here comes his "email" and then
the config file
"Hello
Benedek,
how
is it going?
Yesterday
I had little time to do
some experiments with the internal
graphic
Intel chip i810 cause I've to
give a presentation with a beamer
connected
to the external video
connector on friday.
This
mostly not very loved internal
graphic solution is capable of some
astonishing
features. It has two
pipes to work with and with Xorg I'm
able
to have some different
multiheaded layouts now.
If
you activate in section
"ServerFlags" one of the layouts different
from
the DefaultLayout and connect a
second screen to the the video port
you'll
be surprised about the
abilities of this Intel chip.
Shure
it's not powerful enough to
play any Windoofs games, but for
professional
use I was very surprised
of the features, especially after
I
recognised a very bad video signal
quality in "Clone" mode.
I
haven't tried the TVLayout as I'm
unshure if my 700m will give PAL
signals
to the Svideo port, I'd
assume it's NTSC. Additional I haven't
got
any TV set to my working place ;-0
Btw,
I got most of the config file
from
http://ghoff.home.insightbb.com/xorg.conf.
Another
hint:
If
you won't always end your default
X11 session on vt7 you can start
another
one on vt8 with the new
config file like this:
su
- pres -c 'nohup
/usr/X11R6/bin/startx ${1+"$@"} -- :1 vt08 \
-xf86config
XF86Config-1 2>&1
>$HOME/.X.err'
"pres"
is my special presentation
user which starts Gnome for this usage
as
I'm normally running a very
complex configured KDE session ...
Have
fun with it ...
Looking
forward to your experiences
:-))
Brgds,
Juergen
PS:
Feel free to add this info to you
nice 700m-Webpage."
Here is the XF86Config-1
##############
#
Xorg configuration created by
system-config-display
#
Modified for use with Dell Inspiron
700m and SuSE 9.2 by Juergen Lennefer 04-Apr-2005
Section
"Files"
FontPath
"/usr/X11R6/lib/X11/fonts/misc:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/local"
FontPath
"/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/100dpi:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/Type1"
FontPath
"/usr/X11R6/lib/X11/fonts/URW"
FontPath
"/usr/X11R6/lib/X11/fonts/Speedo"
FontPath
"/usr/X11R6/lib/X11/fonts/PEX"
FontPath
"/usr/X11R6/lib/X11/fonts/cyrillic"
FontPath
"/usr/X11R6/lib/X11/fonts/latin2/misc:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/latin2/75dpi:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/latin2/100dpi:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/latin2/Type1"
FontPath
"/usr/X11R6/lib/X11/fonts/latin7/75dpi:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/baekmuk:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/japanese:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/kwintv"
FontPath
"/usr/X11R6/lib/X11/fonts/truetype"
FontPath
"/usr/X11R6/lib/X11/fonts/uni:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/CID"
FontPath
"/usr/X11R6/lib/X11/fonts/ucs/misc:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/ucs/75dpi:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/ucs/100dpi:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/hellas/misc:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/hellas/75dpi:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/hellas/100dpi:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/hellas/Type1"
FontPath
"/usr/X11R6/lib/X11/fonts/misc/sgi:unscaled"
FontPath
"/usr/X11R6/lib/X11/fonts/xtest"
FontPath
"/opt/kde3/share/fonts"
InputDevices "/dev/ttyS0"
InputDevices "/dev/ttyS1"
InputDevices "/dev/ttyS2"
InputDevices "/dev/ttyS3"
InputDevices "/dev/ttyS4"
InputDevices "/dev/ttyS5"
InputDevices "/dev/ttyS6"
InputDevices "/dev/ttyS7"
InputDevices "/dev/ttyS8"
InputDevices "/dev/psaux"
InputDevices "/dev/logibm"
InputDevices "/dev/sunmouse"
InputDevices "/dev/atibm"
InputDevices "/dev/amigamouse"
InputDevices "/dev/atarimouse"
InputDevices "/dev/inportbm"
InputDevices "/dev/gpmdata"
InputDevices "/dev/mouse"
InputDevices "/dev/usbmouse"
InputDevices "/dev/adbmouse"
InputDevices "/dev/input/mice"
InputDevices "/dev/input/event0"
InputDevices "/dev/pointer0"
InputDevices "/dev/pointer1"
InputDevices "/dev/pointer2"
InputDevices "/dev/pointer3"
EndSection
Section
"ServerFlags"
# Option "DefaultServerLayout"
"DefaultLayout"
# Option "DefaultServerLayout"
"MultiheadLayout"
Option "DefaultServerLayout"
"BeamerLayout"
# Option "DefaultServerLayout"
"TVLayout"
Option "AllowMouseOpenFail"
EndSection
Section
"Module"
Load
"dbe"
Load
"extmod"
Load
"fbdevhw"
Load
"glx"
Load
"record"
Load
"freetype"
Load
"type1"
Load
"dri"
EndSection
#Section
"Module"
#
Load
"freetype"
#
Load
"type1"
#
Load
"dbe"
#
Load
"glx"
#
Load
"extmod"
#
Load
"v4l"
#EndSection
###########
Section
"InputDevice"
Driver
"kbd"
Identifier "Keyboard0"
Option
"Protocol" "Standard"
Option
"XkbLayout" "us"
Option
"XkbModel" "pc104"
Option
"XkbRules" "xfree86"
EndSection
Section
"InputDevice"
Driver
"mouse"
Identifier "Mouse1"
Option
"ButtonNumber" "5"
Option
"Device" "/dev/mouse"
Option
"Name" "SynPS/2 Synaptics TouchPad"
Option
"Protocol" "imps/2"
Option
"Vendor" "Sysp"
Option
"ZAxisMapping" "4 5"
EndSection
Section
"InputDevice"
Driver
"mouse"
Identifier "Mouse3"
Option
"Device" "/dev/input/mice"
Option
"InputFashion" "Mouse"
Option
"Name" "USB-Mouse;IMPS/2"
Option
"Protocol" "imps/2"
Option
"ZAxisMapping" "4 5"
EndSection
###########
Section
"ServerLayout"
Identifier "DefaultLayout"
Screen
0 "Screen0" 0 0
InputDevice "Keyboard0"
"CoreKeyboard"
InputDevice "Mouse1"
"CorePointer"
InputDevice "Mouse3"
"SendCoreEvents"
EndSection
Section
"ServerLayout"
Identifier
"MultiheadLayout"
Screen
0 "Screend0" RightOf
"Screend1"
Screen
1 "Screend1"
InputDevice "Keyboard0"
"CoreKeyboard"
InputDevice "Mouse1"
"CorePointer"
InputDevice "Mouse3"
"SendCoreEvents"
Option
"Xinerama" "on"
# Option
"Clone" "on"
EndSection
Section
"ServerLayout"
Identifier
"BeamerLayout"
Screen
0 "Screend0" LeftOf "Beamer1"
Screen
1 "Beamer1"
InputDevice
"Keyboard0" "CoreKeyboard"
InputDevice
"Mouse1" "CorePointer"
InputDevice
"Mouse3" "SendCoreEvents"
Option
"Xinerama" "on"
# Option
"Clone" "on"
EndSection
Section
"ServerLayout"
Identifier
"TVLayout"
Screen
0 "Screentvd0" LeftOf "TV1"
Screen
1 "TV1"
InputDevice "Keyboard0"
"CoreKeyboard"
InputDevice "Mouse1"
"CorePointer"
InputDevice "Mouse3"
"SendCoreEvents"
# Option
"Xinerama" "on"
# Option
"Clone" "on"
EndSection
###########
Section
"Monitor"
Identifier
"Monitor0"
Option
"CalcAlgorithm" "CheckDesktopGeometry"
DisplaySize
320 240
HorizSync
30-82
ModelName
"Local LCD Panel 1280X800@60HZ"
Option
"DPMS"
VendorName
"--> LCD"
VertRefresh
57-60
Modeline
"1280x800" 83.46 1280 1344 1480 1680
800 801 804 828
EndSection
Section
"Monitor"
Identifier
"Monitor1"
VendorName
"--> CRT"
ModelName
"CRT 1280x1024"
HorizSync
31.5 - 67.0
VertRefresh
70.0 - 75.0
Option
"dpms"
EndSection
Section
"Monitor"
Identifier
"Monitor2"
VendorName
"--> Beamer"
ModelName
"Beamer 1024x768"
HorizSync
31.5 - 67.0
VertRefresh
50.0 - 65.0
Option
"dpms"
EndSection
Section
"Monitor"
Identifier
"TVm1"
VendorName
"Monitor Vendor"
ModelName
"TV"
Option
"dpms"
EndSection
###########
Section
"Device"
Identifier
"Videocard0"
Driver
"i810"
VendorName
"Intel"
BoardName
"855 GM"
EndSection
Section
"Device"
Identifier
"Videocardd0"
Driver
"i810"
VendorName
"Intel"
BoardName
"855 GM"
BusID
"PCI:0:2:0"
Screen
0
Option
"MonitorLayout" "CRT,LFP"
EndSection
Section
"Device"
Identifier
"Videocardd1"
Driver
"i810"
VendorName
"Intel"
BoardName
"855 GM"
BusID
"PCI:0:2:0"
Screen
1
Option
"MonitorLayout" "CRT,LFP"
EndSection
Section
"Device"
Identifier
"Videocardtvd0"
Driver
"i810"
VendorName
"Intel"
BoardName
"855 GM"
BusID
"PCI:0:2:0"
Screen
0
Option
"MonitorLayout" "TV,LFP"
EndSection
Section
"Device"
Identifier
"Videocardtvd1"
Driver
"i810"
VendorName
"Intel"
BoardName
"855 GM"
BusID
"PCI:0:2:0"
Screen
1
Option
"MonitorLayout" "TV,LFP"
EndSection
###########
Section
"Screen"
Identifier
"Screen0"
Device
"Videocard0"
Monitor
"Monitor0"
DefaultDepth
24
SubSection
"Display"
Viewport
0 0
Depth
24
Modes
"1280x800" "1024x768" "800x600" "640x480"
Virtual 1280 1024
EndSubSection
EndSection
Section
"Screen"
Identifier
"Screend0"
Device
"Videocardd0"
Monitor
"Monitor0"
DefaultDepth
24
SubSection
"Display"
Viewport
0 0
Depth
24
Modes
"1280x800" "1024x768" "800x600" "640x480"
Virtual 1280 1024
EndSubSection
EndSection
Section
"Screen"
Identifier
"Screend1"
Device
"Videocardd1"
Monitor
"Monitor1"
DefaultDepth
24
SubSection
"Display"
Viewport
0 0
Depth
24
EndSubSection
EndSection
Section
"Screen"
Identifier
"Beamer1"
Device
"Videocardd1"
Monitor
"Monitor1"
DefaultDepth
24
SubSection
"Display"
Viewport
0 0
Depth
24
Modes
"1024x768" "800x600" "640x480"
EndSubSection
EndSection
Section
"Screen"
Identifier
"Screentvd0"
Device
"Videocardtvd0"
Monitor
"Monitor0"
DefaultDepth
24
SubSection
"Display"
Viewport
0 0
Depth
24
Modes
"1280x800" "1024x768" "800x600" "640x480"
Virtual 1280 1024
EndSubSection
EndSection
Section
"Screen"
Identifier
"TV1"
Device
"Videocardtvd1"
Monitor
"TVm1"
DefaultDepth
24
SubSection
"Display"
Viewport
0 0
Depth
24
EndSubSection
EndSection
###########
Section
"DRI"
Group
"video"
Mode
0660
EndSection
Section
"Extensions"
EndSection
THE END
If you would like to add something to this document, please drop me a
line at linux *&at() celifornia ^%dot$# com
Benedek Frank