[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

cannot boot OpenBSD 3.6 without keyboard plugged in

Hi there,

I've got an AMD x86 P75 clone which will not boot OpenBSD without a real keyboard physically attached.

I have successfully installed OpenBSD 3.6. When asked during the install, I told it to go for a serial console setup. The serial console is pretty much working ok. In the BIOS, I've set 'keyboard' to 'absent'. There is a boot.conf which switches things to com0 and a ttys file which has com0 enabled. That's all pretty much working -- I can type away at the serial console (which, incidentally, is an Apple PowerBook 145B running Comet 3.1.1 and a precambrian version of MS Works/Mac as terminal programs).

My trouble is that OpenBSD will hang at a very early stage of its bootstrapping process if there is no keyboard plugged in at that time. It seems as if OpenBSD is itself probing for a keyboard and is rather weirdly not letting things go any further until that's there.

boot(8) tells me that OpenBSD does indeed "Probe for console devices, which includes the (default) PC VGA+Keyboard console (pc0) and up to four serial consoles (com0 through com3) connected to the serial ports. "

The precise screen output, just after the BIOS POST, is:

=== begin quote ===
Using drive 0, partition 3.
probing :
=== end quote ===

and this is where it just hangs -- forever, UNLESS, yes, unless and until I plug in the keyboard. As soon as I do that, it just commences as if nothing had happened...

=== begin quote ===
pc0 com0 com1 apm pci mem[636K 15M a20=on]
disk: hd0
>> OpenBSD/i386 BOOT 2.06
switching console to com0
=== end quote ===

...and boots up happily and works. I can then of course unplug the keyboard, but whenever I reboot I absolutely require it again.

I have experimented a bit and disabled all local consoles, leaving only the com0 one in ttys. That obviously caused it to no longer display a logon prompt on a locally attached monitor, but it still hangs if there is no keyboard, so that didn't help.

I have also read various man pages and FAQs, including http://www.openbsd.org/faq/faq7.html and http://wand.net.nz/~bcj3/log/index.php?p=91 and the Absolute OpenBSD sample chapter (number 6). I have googled, but didn't find anything relevant. I really do want to be able to boot without a keyboard.

My AMD 586 PC's got ca. 500 MB HDD, sound card, ethernet, everything else stripped out and also subject to change).

Any pointers on this one greatly appreciated :)

PS: This is what shows up in the serial console:

(The first line being garbled is due to the fact that I use 19200 baud -- and if you do that OpenBSD first prints an announcement to com0 at 9600 baud, saying that it's about to switch to 19200 baud. Since I'm already at 9600 baud, that initial announcement comes across garbled. You know this of course.)

xfxxffxf~`fxf~f~`f`ff`~x~xxfxf`ff`xxx<0Cp3p3~`fxfx~x``ff`~fxffx`~ffx`fff `~f~xfxx
com0: 19200 baud
booting hd0a:/bsd: 4918204+859636 [52+230528+209187]=0x5ee0fc
entry point at 0x100120

[ using 440140 bytes of bsd ELF symbol table ]
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California. All rights reserved.
Copyright (c) 1995-2004 OpenBSD. All rights reserved. http://www.OpenBSD.org

OpenBSD 3.6 (GENERIC) #59: Fri Sep 17 12:32:57 MDT 2004
cpu0: AMD Am5x86 W/B 133/160 ("AuthenticAMD" 486-class)
cpu0: FPU
real mem = 16363520 (15980K)
avail mem = 6713344 (6556K)
using 225 buffers containing 921600 bytes (900K) of memory
mainbus0 (root)
bios0 at mainbus0: AT/286+(00) BIOS, date 10/10/94, BIOS32 rev. 0 @ 0xf6f20
apm0 at bios0: Power Management spec V1.1
apm0: AC on, battery charge unknown
pcibios0 at bios0: rev 2.1 @ 0xf0000/0x10000
pcibios0: PCI BIOS has 4 Interrupt Routing table entries
pcibios0: no compatible PCI ICU found
pcibios0: Warning, unable to fix up PCI interrupt routing
pcibios0: PCI bus #0 is the last bus
WARNING: can't reserve area for I/O APIC.
WARNING: can't reserve area for Local APIC.
bios0: ROM list: 0xc0000/0x8000
cpu0 at mainbus0
pci00 bus 0: configuen 1-5 added (80 address 00:c1:2pcib0 at pci0 det 0x60/5
pckbd0 at pckbc0 (kbd slot)
pckbc0: using irq 1 for kbd slot
wskbd0 at pckbd0: console keyboard, using wsdisplwdc0 at isa0 port 0x1f0/8 irq 1
wd0 at wdc0 channel 0 drive 0: <ST3491A>
wd0: 16-sector PIO, CHS, 408MB, 899 cyl, 15 head, 62 sec, 836070 sectors
wd0(wdc0:0:0): using BIOS timings
pcppi0 at isa0 port 0x61
midi0 at pcppi0: <PC speaker>
sysbeep0 at pcppi0
lpt0 at isa0 port 0x378/4 irq 7
npx0 at isa0 port 0xf0/16: using exception 16
pccom0 at isa0 port 0x3f8/8 irq 4: ns16550a, 16 byte fifo
pccom0: console
pccom1 at isa0 port 0x2f8/8 irq 3: ns16550a, 16 byte fifo
fdc0 at isa0 port 0x3f0/6 irq 6 drq 2
isapnp0 at isa0 port 0x279: read port 0x203
sb1 at isapnp0 "Analog Devices AD1816A, ADS7180, , " port
/16 irq 5 drq 1,0: dsp v3.02
midi1 at sb1: <SB MIDI UART>
audio0 at sb1
opl0 at sb1: model OPL3
midi2 at opl0: <SB Yamaha OPL3>
mpu0 at isapnp0 "Analog Devices AD1816A, ADS7181, PNPB006, " port 0x300/2
irq 11

mpu0: Analog Devices AD1816A
midi3 at mpu0: <MPU-401 MIDI UART>
joy0 at isapnp0 "Analog Devices AD1816A, ADS7182, PNPB02F, " port 0x200/8
biomask f545 netmask f745 ttymask f7c7
pctr: no performance counters in CPU
dkcsum: wd0 matched BIOS disk 80
root on wd0a
rootdev=0x0 rrootdev=0x300 rawdev=0x302
Automatic boot in progress: starting file system checks.
/dev/rwd0a: file system is clean; not checking
/dev/rwd0d: file system is clean; not checking
/dev/rwd0g: file system is clean; not checking
/dev/rwd0e: file system is clean; not checking
setting tty flags
starting network
starting system logger
starting rpc daemons:.
savecore: no core dump
checking quotas: done.
building ps databases: kvm dev.
clearing /tmp
starting pre-securelevel daemons:.
setting kernel security level: kern.securelevel: 0 -> 1
creating runtime link editor directory cache.
preserving editor files
starting network daemons: sendmail inetd sshd.
keyboard mapping set to uk
starting local daemons:.
standard daemons: cron.
Mon Sep 20 17:59:14 CEST 2004

OpenBSD/i386 (purgatory.eastwall.ropersonline.com) (tty00)


Visit your host, monkey.org