jdaviestx
04-24-2007, 11:48 AM
I recently bought a new Toshiba Sattelite A35 and immediately installed Debian Etch onto a secondary partition (I'm keeping Windows Vista around until I can safely completely ditch it). It has an Intel graphics card; according to "lspci":
00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS/940GML and 945GT Express Memory Controller Hub (rev 03)
00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
The display works great when I use the laptop by itself. However, I also bought a Samsung Syncmaster 226BW external flat panel for use when the laptop is docked. Unfortunately, although the display appears on the external monitor, it displays at the laptops internal screen's native resolution (of 1280x800) rather than the Syncmaster's native resolution of 1680x1050. I know that the card can handle this resolution, because when I dual-boot back to Windows, it displays beautifully.
I did some googling and discovered the "915resolution" Video BIOS mode hack, but that hasn't worked for me yet - I always get a 1280x800 display. Here's what I did with 915resolution:
# ./915resolution 5c 1680 1050 24
(I picked mode 5c more or less at random... the 915resolution docs seem to indicate it doesn't matter).
Here's an abbreviated copy of my xorg.conf:
Section "Module"
Load "i2c"
Load "bitmap"
Load "ddc"
# Load "dri"
Load "extmod"
Load "freetype"
# Load "glx"
Load "int10"
Load "vbe"
EndSection
Section "Device"
Identifier "Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller" Driver "i810"
BusID "PCI:0:2:0"
EndSection
Section "Device"
Identifier "External VGA"
Driver "i810"
BusID "PCI:0:2:1"
Option "MonitorLayout" "DFP"
EndSection
Section "Monitor"
Identifier "SyncMaster"
DisplaySize 432 324
HorizSync 30.0 - 81.0
VertRefresh 56.0 - 75.0
Option "DPMS"
EndSection
Section "Screen"
Identifier "Default Screen"
Device "Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller"
Monitor "SyncMaster"
DefaultDepth 24
SubSection "Display"
Depth 16
Modes "1680x1050" "1280x800"
EndSubSection
SubSection "Display"
Depth 24
Modes "1680x1050" "1280x800"
EndSubSection
EndSection
Section "ServerLayout"
Identifier "Default Layout"
Screen "Default Screen"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
InputDevice "Synaptics Touchpad"
EndSection
As you can see, I've been commenting things out more or less at random hoping that something will work.
According to xdpyinfo, I'm using xorg version 7.1.1 (a recent "dselect" didn't show any available updates). Here's an abbreviated copy of my /var/log/Xorg.log file (I can post the whole thing, but apparently there's a 10,000 character limit):
X Window System Version 7.1.1
Release Date: 12 May 2006
X Protocol Version 11, Revision 0, Release 7.1.1
Build Operating System: UNKNOWN
<snip>
(==) ServerLayout "Default Layout"
(**) |-->Screen "Default Screen" (0)
(**) | |-->Monitor "SyncMaster"
(**) | |-->Device "Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller"
<snip>
(--) PCI:*(0:2:0) Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller rev 3, Mem @ 0xdc100000/19, 0xc0000000/28, 0xdc200000/18, I/O @ 0x1800/3
(--) PCI: (0:2:1) Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller rev 3, Mem @ 0xdc180000/19
<snip>
(II) I810: Driver for Intel Integrated Graphics Chipsets: i810, i810-dc100,
i810e, i815, i830M, 845G, 852GM/855GM, 865G, 915G, E7221 (i915),
915GM, 945G, 945GM, 965G, 965G, 965Q, 946GZ
(II) Primary Device is: PCI 00:02:0
(WW) I810: No matching Device section for instance (BusID PCI:0:2:1) found
(--) Chipset 945GM found
<snip>
(II) Setting vga for screen 0.
<snip>
ABI class: X.Org Video Driver, version 1.0
(WW) I810(0): Bad V_BIOS checksum
(II) I810(0): Primary V_BIOS segment is: 0xc000
(II) I810(0): VESA BIOS detected
(II) I810(0): VESA VBE Version 3.0
(II) I810(0): VESA VBE Total Mem: 7872 kB
(II) I810(0): VESA VBE OEM: Intel(r) 82945GM Chipset Family Graphics Chip Accelerated VGA BIOS
(II) I810(0): VESA VBE OEM Software Rev: 1.0
(II) I810(0): VESA VBE OEM Vendor: Intel Corporation
(II) I810(0): VESA VBE OEM Product: Intel(r) 82945GM Chipset Family Graphics Controller
(II) I810(0): VESA VBE OEM Product Rev: Hardware Version 0.0
(II) I810(0): Integrated Graphics Chipset: Intel(R) 945GM
(--) I810(0): Chipset: "945GM"
(--) I810(0): Linear framebuffer at 0xC0000000
(--) I810(0): IO registers at addr 0xDC100000
(II) I810(0): 2 display pipes available.
(II) I810(0): detected 7932 kB stolen memory.
(II) I810(0): Kernel reported 488960 total, 1 used
(II) I810(0): I830CheckAvailableMemory: 1955836 kB available
(II) I810(0): Monitoring connected displays enabled
(II) I810(0): Will attempt to tell the BIOS that there is 12288 kB VideoRAM
(II) Loading sub module "int10"
(II) LoadModule: "int10"
(II) Reloading /usr/lib/xorg/modules/libint10.so
(II) I810(0): initializing int10
(WW) I810(0): Bad V_BIOS checksum
(II) I810(0): Primary V_BIOS segment is: 0xc000
(II) I810(0): VESA BIOS detected
(II) I810(0): VESA VBE Version 3.0
(II) I810(0): VESA VBE Total Mem: 12288 kB
(II) I810(0): VESA VBE OEM: Intel(r) 82945GM Chipset Family Graphics Chip Accelerated VGA BIOS
(II) I810(0): VESA VBE OEM Software Rev: 1.0
(II) I810(0): VESA VBE OEM Vendor: Intel Corporation
(II) I810(0): VESA VBE OEM Product: Intel(r) 82945GM Chipset Family Graphics Controller
(II) I810(0): VESA VBE OEM Product Rev: Hardware Version 0.0
(II) I810(0): BIOS now sees 12288 kB VideoRAM
(--) I810(0): Pre-allocated VideoRAM: 7932 kByte
(==) I810(0): VideoRAM: 65536 kByte
(==) I810(0): video overlay key set to 0x101fe
(**) I810(0): page flipping disabled
(==) I810(0): Using gamma correction (1.0, 1.0, 1.0)
(II) I810(0): BIOS Build: 1377
(==) I810(0): Device Presence: disabled.
(==) I810(0): Display Info: enabled.
(II) I810(0): Broken BIOSes cause the system to hang here.
If you encounter this problem please add
Option "DisplayInfo" "FALSE"
to the Device section of your XF86Config file.
(II) I810(0): Display Info: CRT: attached: TRUE, present: TRUE, size: (720,400)
(II) I810(0): Display Info: TV: attached: TRUE, present: TRUE, size: (1024,768)
(II) I810(0): Display Info: DFP (digital flat panel): attached: FALSE, present: FALSE, size: (0,2827)
(II) I810(0): Display Info: LFP (local flat panel): attached: TRUE, present: TRUE, size: (1280,800)
(II) I810(0): Display Info: Second (second CRT): attached: FALSE, present: FALSE, size: (0,2827)
(II) I810(0): Display Info: TV2 (second TV): attached: FALSE, present: FALSE, size: (0,2827)
(II) I810(0): Display Info: DFP2 (second digital flat panel): attached: FALSE, present: FALSE, size: (0,2827)
(II) I810(0): Display Info: LFP2 (second local flat panel): attached: FALSE, present: FALSE, size: (0,2827)
(II) I810(0): Currently active displays on Pipe A:
(II) I810(0): CRT
(II) I810(0): No active displays on Pipe B.
(==) I810(0): Display is using Pipe A
(--) I810(0): Maximum frambuffer space: 65368 kByte
(II) Loading sub module "ddc"
(II) LoadModule: "ddc"
(II) Reloading /usr/lib/xorg/modules/libddc.so
(II) I810(0): VESA VBE DDC supported
(II) I810(0): VESA VBE DDC Level 2
(II) I810(0): VESA VBE DDC transfer in appr. 1 sec.
(II) I810(0): VESA VBE DDC read successfully
(II) I810(0): Manufacturer: SAM Model: 27e Serial#: 1296380466
(II) I810(0): Year: 2007 Week: 4
(II) I810(0): EDID Version: 1.3
(II) I810(0): Analog Display Input, Input Voltage Level: 0.700/0.300 V
(II) I810(0): Sync: Separate Composite SyncOnGreen
(II) I810(0): Max H-Image Size [cm]: horiz.: 47 vert.: 30
(II) I810(0): Gamma: 2.20
(II) I810(0): DPMS capabilities: Off; RGB/Color Display
(II) I810(0): First detailed timing is preferred mode
(II) I810(0): redX: 0.644 redY: 0.333 greenX: 0.286 greenY: 0.603
(II) I810(0): blueX: 0.152 blueY: 0.079 whiteX: 0.313 whiteY: 0.329
(II) I810(0): Supported VESA Video Modes:
(II) I810(0): 720x400@70Hz
(II) I810(0): 640x480@60Hz
(II) I810(0): 640x480@67Hz
(II) I810(0): 640x480@72Hz
(II) I810(0): 640x480@75Hz
(II) I810(0): 800x600@56Hz
(II) I810(0): 800x600@60Hz
(II) I810(0): 800x600@72Hz
(II) I810(0): 800x600@75Hz
(II) I810(0): 832x624@75Hz
(II) I810(0): 1024x768@60Hz
(II) I810(0): 1024x768@70Hz
(II) I810(0): 1024x768@75Hz
(II) I810(0): 1280x1024@75Hz
(II) I810(0): 1152x870@75Hz
(II) I810(0): Manufacturer's mask: 0
(II) I810(0): Supported Future Video Modes:
(II) I810(0): #0: hsize: 1680 vsize 1050 refresh: 60 vid: 179
(II) I810(0): #1: hsize: 1280 vsize 1024 refresh: 60 vid: 32897
(II) I810(0): #2: hsize: 1280 vsize 960 refresh: 60 vid: 16513
(II) I810(0): #3: hsize: 1152 vsize 864 refresh: 75 vid: 20337
(II) I810(0): Supported additional Video Mode:
(II) I810(0): clock: 119.0 MHz Image Size: 474 x 296 mm
(II) I810(0): h_active: 1680 h_sync: 1728 h_sync_end 1760 h_blank_end 1840 h_border: 0
(II) I810(0): v_active: 1050 v_sync: 1053 v_sync_end 1059 v_blanking: 1080 v_border: 0
(II) I810(0): Ranges: V min: 56 V max: 75 Hz, H min: 30 H max: 81 kHz, PixClock max 140 MHz
(II) I810(0): Monitor name: SyncMaster
(II) I810(0): Serial No: HVCP102448
(II) I810(0): Will use BIOS call 0x5f05 to set refresh rates for CRTs.
(--) I810(0): Maximum space available for video modes: 12288 kByte
(II) I810(0): Using detected DDC timings
(II) I810(0): HorizSync 30-81
(II) I810(0): VertRefresh 56-75
<snip>
Any thoughts? I'd hate to have to resign myself to using (shudder) Vista whenever the machine is docked...
00:00.0 Host bridge: Intel Corporation Mobile 945GM/PM/GMS/940GML and 945GT Express Memory Controller Hub (rev 03)
00:02.0 VGA compatible controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
00:02.1 Display controller: Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller (rev 03)
The display works great when I use the laptop by itself. However, I also bought a Samsung Syncmaster 226BW external flat panel for use when the laptop is docked. Unfortunately, although the display appears on the external monitor, it displays at the laptops internal screen's native resolution (of 1280x800) rather than the Syncmaster's native resolution of 1680x1050. I know that the card can handle this resolution, because when I dual-boot back to Windows, it displays beautifully.
I did some googling and discovered the "915resolution" Video BIOS mode hack, but that hasn't worked for me yet - I always get a 1280x800 display. Here's what I did with 915resolution:
# ./915resolution 5c 1680 1050 24
(I picked mode 5c more or less at random... the 915resolution docs seem to indicate it doesn't matter).
Here's an abbreviated copy of my xorg.conf:
Section "Module"
Load "i2c"
Load "bitmap"
Load "ddc"
# Load "dri"
Load "extmod"
Load "freetype"
# Load "glx"
Load "int10"
Load "vbe"
EndSection
Section "Device"
Identifier "Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller" Driver "i810"
BusID "PCI:0:2:0"
EndSection
Section "Device"
Identifier "External VGA"
Driver "i810"
BusID "PCI:0:2:1"
Option "MonitorLayout" "DFP"
EndSection
Section "Monitor"
Identifier "SyncMaster"
DisplaySize 432 324
HorizSync 30.0 - 81.0
VertRefresh 56.0 - 75.0
Option "DPMS"
EndSection
Section "Screen"
Identifier "Default Screen"
Device "Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller"
Monitor "SyncMaster"
DefaultDepth 24
SubSection "Display"
Depth 16
Modes "1680x1050" "1280x800"
EndSubSection
SubSection "Display"
Depth 24
Modes "1680x1050" "1280x800"
EndSubSection
EndSection
Section "ServerLayout"
Identifier "Default Layout"
Screen "Default Screen"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
InputDevice "Synaptics Touchpad"
EndSection
As you can see, I've been commenting things out more or less at random hoping that something will work.
According to xdpyinfo, I'm using xorg version 7.1.1 (a recent "dselect" didn't show any available updates). Here's an abbreviated copy of my /var/log/Xorg.log file (I can post the whole thing, but apparently there's a 10,000 character limit):
X Window System Version 7.1.1
Release Date: 12 May 2006
X Protocol Version 11, Revision 0, Release 7.1.1
Build Operating System: UNKNOWN
<snip>
(==) ServerLayout "Default Layout"
(**) |-->Screen "Default Screen" (0)
(**) | |-->Monitor "SyncMaster"
(**) | |-->Device "Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller"
<snip>
(--) PCI:*(0:2:0) Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller rev 3, Mem @ 0xdc100000/19, 0xc0000000/28, 0xdc200000/18, I/O @ 0x1800/3
(--) PCI: (0:2:1) Intel Corporation Mobile 945GM/GMS/940GML Express Integrated Graphics Controller rev 3, Mem @ 0xdc180000/19
<snip>
(II) I810: Driver for Intel Integrated Graphics Chipsets: i810, i810-dc100,
i810e, i815, i830M, 845G, 852GM/855GM, 865G, 915G, E7221 (i915),
915GM, 945G, 945GM, 965G, 965G, 965Q, 946GZ
(II) Primary Device is: PCI 00:02:0
(WW) I810: No matching Device section for instance (BusID PCI:0:2:1) found
(--) Chipset 945GM found
<snip>
(II) Setting vga for screen 0.
<snip>
ABI class: X.Org Video Driver, version 1.0
(WW) I810(0): Bad V_BIOS checksum
(II) I810(0): Primary V_BIOS segment is: 0xc000
(II) I810(0): VESA BIOS detected
(II) I810(0): VESA VBE Version 3.0
(II) I810(0): VESA VBE Total Mem: 7872 kB
(II) I810(0): VESA VBE OEM: Intel(r) 82945GM Chipset Family Graphics Chip Accelerated VGA BIOS
(II) I810(0): VESA VBE OEM Software Rev: 1.0
(II) I810(0): VESA VBE OEM Vendor: Intel Corporation
(II) I810(0): VESA VBE OEM Product: Intel(r) 82945GM Chipset Family Graphics Controller
(II) I810(0): VESA VBE OEM Product Rev: Hardware Version 0.0
(II) I810(0): Integrated Graphics Chipset: Intel(R) 945GM
(--) I810(0): Chipset: "945GM"
(--) I810(0): Linear framebuffer at 0xC0000000
(--) I810(0): IO registers at addr 0xDC100000
(II) I810(0): 2 display pipes available.
(II) I810(0): detected 7932 kB stolen memory.
(II) I810(0): Kernel reported 488960 total, 1 used
(II) I810(0): I830CheckAvailableMemory: 1955836 kB available
(II) I810(0): Monitoring connected displays enabled
(II) I810(0): Will attempt to tell the BIOS that there is 12288 kB VideoRAM
(II) Loading sub module "int10"
(II) LoadModule: "int10"
(II) Reloading /usr/lib/xorg/modules/libint10.so
(II) I810(0): initializing int10
(WW) I810(0): Bad V_BIOS checksum
(II) I810(0): Primary V_BIOS segment is: 0xc000
(II) I810(0): VESA BIOS detected
(II) I810(0): VESA VBE Version 3.0
(II) I810(0): VESA VBE Total Mem: 12288 kB
(II) I810(0): VESA VBE OEM: Intel(r) 82945GM Chipset Family Graphics Chip Accelerated VGA BIOS
(II) I810(0): VESA VBE OEM Software Rev: 1.0
(II) I810(0): VESA VBE OEM Vendor: Intel Corporation
(II) I810(0): VESA VBE OEM Product: Intel(r) 82945GM Chipset Family Graphics Controller
(II) I810(0): VESA VBE OEM Product Rev: Hardware Version 0.0
(II) I810(0): BIOS now sees 12288 kB VideoRAM
(--) I810(0): Pre-allocated VideoRAM: 7932 kByte
(==) I810(0): VideoRAM: 65536 kByte
(==) I810(0): video overlay key set to 0x101fe
(**) I810(0): page flipping disabled
(==) I810(0): Using gamma correction (1.0, 1.0, 1.0)
(II) I810(0): BIOS Build: 1377
(==) I810(0): Device Presence: disabled.
(==) I810(0): Display Info: enabled.
(II) I810(0): Broken BIOSes cause the system to hang here.
If you encounter this problem please add
Option "DisplayInfo" "FALSE"
to the Device section of your XF86Config file.
(II) I810(0): Display Info: CRT: attached: TRUE, present: TRUE, size: (720,400)
(II) I810(0): Display Info: TV: attached: TRUE, present: TRUE, size: (1024,768)
(II) I810(0): Display Info: DFP (digital flat panel): attached: FALSE, present: FALSE, size: (0,2827)
(II) I810(0): Display Info: LFP (local flat panel): attached: TRUE, present: TRUE, size: (1280,800)
(II) I810(0): Display Info: Second (second CRT): attached: FALSE, present: FALSE, size: (0,2827)
(II) I810(0): Display Info: TV2 (second TV): attached: FALSE, present: FALSE, size: (0,2827)
(II) I810(0): Display Info: DFP2 (second digital flat panel): attached: FALSE, present: FALSE, size: (0,2827)
(II) I810(0): Display Info: LFP2 (second local flat panel): attached: FALSE, present: FALSE, size: (0,2827)
(II) I810(0): Currently active displays on Pipe A:
(II) I810(0): CRT
(II) I810(0): No active displays on Pipe B.
(==) I810(0): Display is using Pipe A
(--) I810(0): Maximum frambuffer space: 65368 kByte
(II) Loading sub module "ddc"
(II) LoadModule: "ddc"
(II) Reloading /usr/lib/xorg/modules/libddc.so
(II) I810(0): VESA VBE DDC supported
(II) I810(0): VESA VBE DDC Level 2
(II) I810(0): VESA VBE DDC transfer in appr. 1 sec.
(II) I810(0): VESA VBE DDC read successfully
(II) I810(0): Manufacturer: SAM Model: 27e Serial#: 1296380466
(II) I810(0): Year: 2007 Week: 4
(II) I810(0): EDID Version: 1.3
(II) I810(0): Analog Display Input, Input Voltage Level: 0.700/0.300 V
(II) I810(0): Sync: Separate Composite SyncOnGreen
(II) I810(0): Max H-Image Size [cm]: horiz.: 47 vert.: 30
(II) I810(0): Gamma: 2.20
(II) I810(0): DPMS capabilities: Off; RGB/Color Display
(II) I810(0): First detailed timing is preferred mode
(II) I810(0): redX: 0.644 redY: 0.333 greenX: 0.286 greenY: 0.603
(II) I810(0): blueX: 0.152 blueY: 0.079 whiteX: 0.313 whiteY: 0.329
(II) I810(0): Supported VESA Video Modes:
(II) I810(0): 720x400@70Hz
(II) I810(0): 640x480@60Hz
(II) I810(0): 640x480@67Hz
(II) I810(0): 640x480@72Hz
(II) I810(0): 640x480@75Hz
(II) I810(0): 800x600@56Hz
(II) I810(0): 800x600@60Hz
(II) I810(0): 800x600@72Hz
(II) I810(0): 800x600@75Hz
(II) I810(0): 832x624@75Hz
(II) I810(0): 1024x768@60Hz
(II) I810(0): 1024x768@70Hz
(II) I810(0): 1024x768@75Hz
(II) I810(0): 1280x1024@75Hz
(II) I810(0): 1152x870@75Hz
(II) I810(0): Manufacturer's mask: 0
(II) I810(0): Supported Future Video Modes:
(II) I810(0): #0: hsize: 1680 vsize 1050 refresh: 60 vid: 179
(II) I810(0): #1: hsize: 1280 vsize 1024 refresh: 60 vid: 32897
(II) I810(0): #2: hsize: 1280 vsize 960 refresh: 60 vid: 16513
(II) I810(0): #3: hsize: 1152 vsize 864 refresh: 75 vid: 20337
(II) I810(0): Supported additional Video Mode:
(II) I810(0): clock: 119.0 MHz Image Size: 474 x 296 mm
(II) I810(0): h_active: 1680 h_sync: 1728 h_sync_end 1760 h_blank_end 1840 h_border: 0
(II) I810(0): v_active: 1050 v_sync: 1053 v_sync_end 1059 v_blanking: 1080 v_border: 0
(II) I810(0): Ranges: V min: 56 V max: 75 Hz, H min: 30 H max: 81 kHz, PixClock max 140 MHz
(II) I810(0): Monitor name: SyncMaster
(II) I810(0): Serial No: HVCP102448
(II) I810(0): Will use BIOS call 0x5f05 to set refresh rates for CRTs.
(--) I810(0): Maximum space available for video modes: 12288 kByte
(II) I810(0): Using detected DDC timings
(II) I810(0): HorizSync 30-81
(II) I810(0): VertRefresh 56-75
<snip>
Any thoughts? I'd hate to have to resign myself to using (shudder) Vista whenever the machine is docked...