Penguin

This includes Xinerama dual head support, so that you can use both the LCD and an external monitor in XOrg. This worked for me, on my Presario M2000 laptop running Ubuntu 5.04 (Hoary). See the PresarioNotes page for other hints.

This also worked on an HP Pavilion DV4000(see PavilionNotes).

/etc/X11/xorg.conf:

# default font stuff that Ubuntu added
Section "Files"
        FontPath        "unix/:7100"                    # local font server
        # if the local font server has problems, we can fall back on these
        FontPath        "/usr/lib/X11/fonts/misc"
        FontPath        "/usr/lib/X11/fonts/cyrillic"
        FontPath        "/usr/lib/X11/fonts/100dpi/:unscaled"
        FontPath        "/usr/lib/X11/fonts/75dpi/:unscaled"
        FontPath        "/usr/lib/X11/fonts/Type1"
        FontPath        "/usr/lib/X11/fonts/CID"
        FontPath        "/usr/lib/X11/fonts/100dpi"
        FontPath        "/usr/lib/X11/fonts/75dpi"
        # paths to defoma fonts
        FontPath        "/var/lib/defoma/x-ttcidfont-conf.d/dirs/TrueType"
        FontPath        "/var/lib/defoma/x-ttcidfont-conf.d/dirs/CID"
EndSection

# default modules that Ubuntu added
Section "Module"
        Load    "bitmap"
        Load    "dbe"
        Load    "ddc"
        Load    "dri"
        Load    "extmod"
        Load    "freetype"
        Load    "glx"
        Load    "int10"
        Load    "record"
        Load    "type1"
        Load    "vbe"
       # custom, for HP Pavilion
        Load    "synaptics" # synaptics driver for the touchpad
EndSection

Section "InputDevice"
        Identifier      "Generic Keyboard"
        Driver          "keyboard"
        Option          "CoreKeyboard"
        Option          "XkbRules"      "xorg"
        Option          "XkbModel"      "pc104"
        Option          "XkbLayout"     "us"
EndSection

Section "InputDevice"
        Identifier      "Configured Mouse"
        Driver          "mouse"
        Option          "CorePointer"
        Option          "Device"                "/dev/input/mice"
        Option          "Protocol"              "ImPS/2"
        Option          "Emulate3Buttons"       "true"
        Option          "ZAxisMapping"          "4 5"
EndSection

Section "InputDevice"
        Identifier      "Synaptics Touchpad"
        Driver          "synaptics"
# see /usr/share/doc/xorg-driver-synaptics/README.gz for options
        Option          "SendCoreEvents"        "true"
        Option          "Device"                "/dev/psaux"
        Option          "Protocol"              "auto-dev"
        Option          "HorizScrollDelta"      "0"
        # don't do anything for 1-finger taps
        # this didn't work for me so I disable this device instead
        Option          "TapButton1"            "0" # 0 = no action
        Option          "MaxTapMove"            "0" # disables 1-finger tap
EndSection

Section "Device"
        Identifier      "Intel-LCD"
        Driver          "i810"
        #Driver         "vesa"
        BusID           "PCI:0:2:0"
        Option          "VBERestore" "true"
        VideoRam        16384
        # MonitorLayout "pipeA, pipeB".
        # use fn+F4 to toggle between the 2 pipes when you have
        # an external device attached
        # LFP = local flat panel...
        # CRT+TV means that fn+F4 will switch to using the external
        # monitor and/or svideo-out if attached
        Option          "MonitorLayout" "CRT+TV,LFP"
        Screen          0
EndSection

Section "Device"
        Identifier      "Intel-external"
        Driver          "i810"
        #Driver         "vesa"
        BusID           "PCI:0:2:0"
        VideoRam        16384
        Option          "Display"       "CRT"
        Option          "MonitorLayout" "CRT+TV,LFP" # put crt on pipe A
        Screen          1
EndSection


Section "Monitor"
        Identifier      "LCD"
        Option          "DPMS"
        HorizSync       30.0-71.0
        VertRefresh     50-160
EndSection


Section "Monitor"
        Identifier      "Philips 107S"
        VendorName      "Philips"
        ModelName       "107S"
        Option          "DPMS"
        HorizSync       30.0-70.0
        VertRefresh     50-160
EndSection

Section "Screen"
        Identifier      "Local LCD"
        Device          "Intel-LCD"
        Monitor         "LCD"
        DefaultDepth    24
        SubSection "Display"
                Depth           24
                # use "1400x1050" or "1280x800" for a widescreen
                Modes           "1400x1050" "1280x800" "1280x1024" "1024x768" "800x600"
                # use standard resolutions for non-widescreens
                #Modes           "1280x1024" "1024x768" "800x600"
        EndSubSection
EndSection

Section "Screen"
        Identifier      "External Monitor"
        Device          "Intel-external"
        Monitor         "Philips 107S"
        DefaultDepth    24
        SubSection "Display"
                Depth           24
                Modes           "1280x1024" "1024x768" "800x600"
        EndSubSection
EndSection

Section "ServerLayout"
        Identifier "Dual Head (Xinerama) Layout"
        Screen 0        "Local LCD"     0 0
# comment out the following line to stop using two monitors,
# and comment out the Xinerama option below
        Screen 1        "External Monitor" LeftOf "Local LCD"
        InputDevice     "Generic Keyboard"
        InputDevice     "Configured Mouse"
EndSection

Section "ServerFlags"
# comment out this line to stop using xinerama (dual head)
        Option "Xinerama" "true"
EndSection

# note that enabling xinerama disables Direct Rendering...
Section "DRI"
        Mode    0666
EndSection


The following works on a Dell 630m (i915) running Ubuntu 6.06. Only the relevant sections are provided. The rest are unchanged.


Section "Device"
        Identifier      "915-LCD"
        Driver                  "i810"
        BusID                           "PCI:0:2:0"
        Option                  "MonitorLayout" "CRT,LFP"
        Screen                  0
EndSection

Section "Device"
        Identifier      "915-External"
        Driver                  "i810"
        BusID                           "PCI:0:2:0"
        Option                  "MonitorLayout" "CRT,LFP"
        Screen                  1
EndSection

Section "Monitor"
        Identifier      "LCD"
        Option          "DPMS"
EndSection

Section "Monitor"
        Identifier      "External"
        Option          "DPMS"
EndSection

Section "Screen"
        Identifier      "LCD Screen"
        Device          "915-LCD"
        Monitor         "LCD"
        DefaultDepth    24
        SubSection "Display"
                Depth           24
                Modes           "1280x800"
        EndSubSection
EndSection

Section "Screen"
        Identifier      "External Screen"
        Device          "915-External"
        Monitor         "External"
        DefaultDepth    24
        SubSection "Display"
                Depth           24
                Modes           "1280x1024"
        EndSubSection
EndSection

Section "ServerLayout"
        Identifier      "Default Layout"
        Screen                  "LCD Screen"
        Screen                  "External Screen" RightOf "LCD Screen"
        InputDevice     "Generic Keyboard"
        InputDevice     "Configured Mouse"
        InputDevice     "stylus" "SendCoreEvents"
        InputDevice     "cursor" "SendCoreEvents"
        InputDevice     "eraser" "SendCoreEvents"
        InputDevice     "Synaptics Touchpad"
EndSection

Section "ServerFlags"
        Option   "Xinerama" "true"
EndSection