Trying to get dual monitors working..
Archives: December 1999
SELECT i.inumber as itemid, i.ititle as title, i.ibody as body, m.mname as author, m.mrealname as authorname, i.itime, i.imore as more, m.mnumber as authorid, m.memail as authormail, m.murl as authorurl, c.cname as category, i.icat as catid, i.iclosed as closed FROM nucleus_item as i, nucleus_member as m, nucleus_category as c WHERE i.iblog=1 and i.iauthor=m.mnumber and i.icat=c.catid and i.idraft=0 and i.itime<="2008-12-05 03:56:23" AND i.iblog = 1 AND i.inumber IN (20,19,15,14,13) ORDER BY i.itime DESC LIMIT 1,5
stdClass Object
(
[itemid] => 19
[title] => Linux/T23 - Dual Monitors
[body] => Trying to get dual monitors working..
[author] => erin
[authorname] => Erin Schnabel
[itime] => 2004-01-20 18:08:00
[more] => References:
- IBM P70 Monitor Example
- Running GNU/Linux on the IBM ThinkPad T40p
- Sample .xsession
- [ltp] Dual/MultiHead setup
- [ltp] T40p+multihead
Update – 2004-01-22
Well crap. All that research, and the Savage driver for the T23 just plain won’t do dual display.
I’ll have to wait for my upgrade.. ![[shakes head]](/images/smilies/confused.gif)
[authorid] => 1
[authormail] => erinschnabel@gmail.com
[authorurl] => http://ebullientworks.com/
[category] => General
[catid] => 1
[closed] => 0
)
stdClass Object
(
[itemid] => 15
[title] => IBM T23 Gentoo Kernel Config
[body] => Just for reference:
[author] => erin
[authorname] => Erin Schnabel
[itime] => 2003-12-20 10:38:00
[more] =>
[authorid] => 1
[authormail] => erinschnabel@gmail.com
[authorurl] => http://ebullientworks.com/
[category] => General
[catid] => 1
[closed] => 0
)
stdClass Object
(
[itemid] => 14
[title] => Fixing Sound/Suspend-Resume on IBM T23 for Gentoo
[body] => ALSA does work, as I mentioned here, but it seems to have problems across a suspend-resume, i.e. it doesn’t work post-resume.
Previously used patches don’t seem to apply to newer Alsa modules.
[author] => erin
[authorname] => Erin Schnabel
[itime] => 2003-12-19 16:01:00
[more] => Gentoo installs apmd_proxy in /etc/apm, with suspend.d and resume.d directories for handling special suspend/resume operations. Even better, event.d handles both.. 
So, based on some searching around, I ended up adding apmd to the list of services to start (rc-update add apmd default), and added the following script to get alsa to behave on resume:
bq. /etc/apm/event.d/alsa:
#!/bin/sh
<br />
case "$1" in
resume)
/usr/sbin/alsactl power off
/usr/sbin/alsactl power on
;;
suspend|standby)
;;
esac
Found this lovely snippet that answers why apm -s works better than Fn-F4 [emphasis added]:
The APM BIOS rejects suspend (or hibernate) requests under certain conditions: e.g., on my TP600, when my Xircom Ethernet/modem card is inserted and the machine is on AC power. If I do “apm -suspend” then the kernel apm driver hears about the request first and tells apmd which runs apmd_proxy which runs the scripts in /etc/apm/event.d which do things like eject the PCMCIA cards; only then does the apm driver pass the request on to the BIOS. (I think.) If I do “tpctl—suspend” on the other hand, the BIOS hears about the request first and, if the PCMCIA card is still inserted, it rejects the request with a couple of beeps (high—low). “apm—suspend” is therefore to be preferred to “tpctl—suspend”. Unfortunately there is no alternative to “tpctl—hibernate” : the apm program and the kernel apm driver don’t know how to ask for hibernation. Solution: write a little script that does “cardctl eject ; tpctl—hib”. Fn-F4 does the same as “tpctl—suspend” and Fn-F12 does the same as “tpctl—hibernate”.
The mention of the BIOS rejecting the suspend request when a PCMCIA card is inserted is exactly what I was seeing – I’m using my wireless card right now.
So after all that, I learned that I should suspend using apm -s and not with the thinkpad buttons if I have a pcmcia card active. With no PCMCIA card, the suspend request will be handled correctly by APM and apmd, and everything should be happy.
References:
Various records of Linux Installation attempts:
- How to set up an IBM Thinkpad T30 Debian GNU/Linux
- Debian GNU/Linux on an IBM Thinkpad T23
- Linux on A30p – Sound
- SuSE Linux 8.0 on IBM T30 Thinkpad
- Re: ThinkPad 600, kernel 2.2.17pre6, and hibernation
- [ltp] APMD and Standby on the TP-T21
- artsshell permissions
Older Alsa drivers:
Information for Linux on IBM Laptops
APM / Other tools
Everywhere I looked, things would reference debian’s /etc/apm/event.d/alsa script. Thing is, I don’t run debian, and I’ll be damned if I could find the contents of the script anywhere…
For future reference, I’ve attached the source here.
[authorid] => 1
[authormail] => erinschnabel@gmail.com
[authorurl] => http://ebullientworks.com/
[category] => General
[catid] => 1
[closed] => 0
)
ALSA does work, as I mentioned here, but it seems to have problems across a suspend-resume, i.e. it doesn’t work post-resume.
Previously used patches don’t seem to apply to newer Alsa modules.
stdClass Object
(
[itemid] => 13
[title] => CDRW on IBM T23 with Gentoo
[body] => Didn’t notice until now that my CD-RW/DVD player wasn’t loading properly – you can tell how much I use it, eh? 
I’d already built the kernel with the correct SCSI modules (see references, below).
I’d also already added “hdc=ide-scsi” to my grub boot parameters.
[author] => erin
[authorname] => Erin Schnabel
[itime] => 2003-12-19 11:36:00
[more] => What was left was the following:
/etc/devfsd.conf:
- uncommented:
# Give the cdrw group write permissions to /dev/sg0
# This is done to have non root user use the burner (scan the scsi bus)
REGISTER ^scsi/host.*/bus.*/target.*/lun.*/generic PERMISSIONS root.cdrw 660
- commented out:
# Create /dev/cdrom for the first cdrom drive
#LOOKUP ^cdrom$ CFUNCTION GLOBAL mksymlink cdroms/cdrom0 cdrom
#REGISTER ^cdroms/cdrom0$ CFUNCTION GLOBAL mksymlink $devname cdrom
#UNREGISTER ^cdroms/cdrom0$ CFUNCTION GLOBAL unlink cdrom
- uncommented the following:
# Create /dev/cdrw for the first cdrom on the scsi bus
# (change ‘sr0’ to suite your setup)
LOOKUP ^cdrw$ CFUNCTION GLOBAL mksymlink sr0 cdrw
REGISTER ^sr0$ CFUNCTION GLOBAL mksymlink $devname cdrw
UNREGISTER ^sr0$ CFUNCTION GLOBAL unlink cdrw
Result:
# cdrecord -scanbus
Cdrecord 2.01a14 (i686-pc-linux-gnu) Copyright© 1995-2003 J�rg Schilling
Linux sg driver version: 3.1.24
Using libscg version ‘schily-0.7’
scsibus0:
0,0,0 0) ‘MATSHITA’ ‘UJDA720 DVD/CDRW’ ‘1.03’ Removable CD-ROM
0,1,0 1) *
0,2,0 2) *
0,3,0 3) *
0,4,0 4) *
0,5,0 5) *
0,6,0 6) *
0,7,0 7) *
YAY! 
References:
[authorid] => 1
[authormail] => erinschnabel@gmail.com
[authorurl] => http://ebullientworks.com/
[category] => General
[catid] => 1
[closed] => 0
)
Didn’t notice until now that my CD-RW/DVD player wasn’t loading properly – you can tell how much I use it, eh? 
I’d already built the kernel with the correct SCSI modules (see references, below).
I’d also already added “hdc=ide-scsi” to my grub boot parameters.



