[ltp] Dual monitor setup: T40p+XFree-4.3.0

André Wyrwa linux-thinkpad@linux-thinkpad.org
Fri, 07 Nov 2003 12:23:28 +0100

> > What happens if you press FN+F7 while running X?
> Nothing. When pressing FN+F[1-6], the external (X) screen goes blank and the 
> laptop screen displays the console VT[1-6]. Pressing FN+F7 from there brings 
> back the external screen and blanks out the laptop screen.

That sounds like Ctrl-Alt-F[1-7], what about FN?

> I changed the setting for the boot display (in the IBM BIOS setup) to LCD+DVI 
> and now the laptop LCD is blank all the way - only the external screen is 
> live. 

> -------------------- /etc/X11/XF86Config ---------------------
> Section "Module"
>     Load        "dbe"  	# Double buffer extension
>     Load        "type1"
>     Load        "freetype"
>     Load        "speedo"
>     SubSection  "extmod"
>       Option    "omit xfree86-dga"   # don't initialise the DGA extension
>     EndSubSection
>     Load       "glx"
>     Load  "ddc"
>     Load  "extmod"
>     Load  "GLcore"
>     Load  "dri"
>     Load  "fbdevhw"
>     Load  "record"

Add 'Load "Xinerama"' here.

> Section "Device"
>         Identifier  "Videocard0"
>         Driver      "radeon"
>         VendorName  "ATI"
>         BoardName   "ATI Radeon Mobility M9"
>         Option      "AGPMode" "4"
> 	Screen	    0

Try changing Screen to 1 and in the next Section to 0 (switch the screen
entries), see below why.

>         BusID       "PCI:1:0:0"
> EndSection
> Section "Device"
>         Identifier  "Videocard1"
>         Driver      "radeon"
>         VendorName  "ATI"
>         BoardName   "ATI Radeon Mobility M9"
>         Option      "AGPMode" "4"
> 	Screen	    1
>         BusID       "PCI:1:0:0"
> EndSection

'man radeon' states that on dvi+vga cards dvi is the primary display.
And from what I understand here, this is exactly what happens to you
(cut together as needed):

> (II) RADEON(0): Primary Display == Type 3
> (II) RADEON(0): Manufacturer: DEL  Model: 4001  Serial#: 1094800725
> (II) RADEON(0): Serial No: 5Y23238PAAUU
> (II) RADEON(0): Monitor name: DELL 1901FP
> (II) RADEON(0): Ranges: V min: 56  V max: 76 Hz, H min: 30  H max: 80 kHz, 
> PixClock max 140 MHz

There, your primary display is autoprobed via ddc as the dell one. So
the primary port is the external one, that's also why your vt output is
now on the external display. So CRTC 0 seems to use the DVI port.

> (II) RADEON(1): Secondary Display == Type 1

Then CRTC 1 is initialized.

> (WW) RADEON(1): Monitor1: Using default hsync range of 28.00-33.00kHz
> (WW) RADEON(1): Monitor1: using default vrefresh range of 43.00-72.00Hz

But gets a problem, because you gave it the DELL display in the monitor
section (which is because your intention was to have it as secondary,
but it's in fact primary. So your secondary has to be the internal

> (--) RADEON(1): Virtual size is 640x480 (pitch 640)
> (**) RADEON(1): *Default mode "640x480": 25.2 MHz, 31.5 kHz, 60.0 Hz
> (II) RADEON(1): Modeline "640x480"   25.20  640 656 752 800  480 490 492 525 
> -hsync -vsync
> (**) RADEON(1): Display dimensions: (376, 300) mm

Then X just seems to get confused. Or...what might also happen is that
the secondary display goes to the VGA port. Please check tpctl --id and
tpctl --sdx output to get some info about your display states. You might
try connecting a monitor to the VGA port, to check if secondary screen
is there and you might try what happens if you press Fn+F7.