The replies I had to my question about preventing console poweroffs causing a
drop into PROM mode fall into several groups:
1. Useless - "leave the console switched on"; "just press c and RETURN".
I agree, but my manager doesn't. Especially as one of the systems is
essentially a turnkey system about 3,000km away.
2. Hardware solutions - construct a custom cable; connect a 4.7k resistor
between pins 25 and 2 and pins 25 to 3. Hal Stern explained why his circuit
doesn't always fix this problem on 4xx/6xx machines:
"the 4.7k ohm resistor doesn't work on all 4xx/6xx boxes, since
some of them don't have -5 volts on pin 25.
you can hook up a 9v battery with a voltage divider to get
the desired effect, although this is cheesy and subject to
ground loop problems..."
<I leave it to you to interpret the second paragraph>
3. Software solution - patch the kernel so the call to the routine that
checks for BREAK in the zs driver interrupt routine is nop'd out.
The third solution works fine! If you are an adb hacker, all you need to do
is find the call to _montrap (under 4.1.1), _prom_enter_mon (4.1.2 sun4c),
or (_mpprom_enter sun4m), and replace it with a nop (0x1000000).
If you aren't an adb hacker and are interested, I've knocked up a detailed
description of the steps you need to take; email me and I'll send you a copy.
Note that this solution disables the BREAK key. We'll probably put a small
script somewhere that patches /dev/mem to re-enable BREAK.
Thanks to the following...
Piete Brooks <Piete.Brooks@cl.cam.ac.uk>
Glenn Satchell <ups!upstage!glenn@fourx.aus.sun.com>
Kevin Sheehan <ups!kevin@fourx.aus.sun.com>
Elmar Kurgpold <ekurgpol@develop-law.usc.edu>
Hal Stern <stern@sunne.east.sun.com>
Jim Hoel <hoel@cec.mtu.edu>
Tim Beyea <beyea@erc.msstate.edu>
-- -------------------------------------------------------------------------- | Adrian Booth | | | Adrian Booth Computing Consultants | Ph: (09) 354 4936 | | 7 Glenrowan Pl., Willetton WA 6155 | abcc@DIALix.oz.au | | AUSTRALIA | | -------------------------------------------------------------------------- for a in past present future; do for b in clients employers associates relatives neighbours pets; do echo The opinions in this article in no way reflect the opinions of my $a $b. done;done
This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:06:53 CDT