Subject: kern/11873: wskbd doesn't work if it's not the console
To: None <gnats-bugs@gnats.netbsd.org>
From: None <fvdl@vaasje.org>
List: netbsd-bugs
Date: 01/02/2001 06:38:18
>Number: 11873
>Category: kern
>Synopsis: wskbd doesn't work if it's not the console
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Tue Jan 02 06:38:00 PST 2001
>Closed-Date:
>Last-Modified:
>Originator: Frank van der Linden
>Release: -current december 29th, 2000
>Organization:
serial debuggers, inc
>Environment:
System: NetBSD sushi 1.5P NetBSD 1.5P (VMWARE) #1: Tue Jan 2 15:23:04 MET 2001 fvdl@sushi:/work/trees/current/sys/arch/i386/compile/VMWARE i386
>Description:
When wskbd is not the console keyboard, it doesn't work, i.e.
no input gets through.
>How-To-Repeat:
I have a kernel config file aimed at reproducing a problem while
running X, but having a serial console, to be able to use DDB.
Its config file is appended below. wsdisplay, kbd, and how they
are attached seem to be probed correctly, but any getty process
running on /dev/ttyE* does not receive any keyboard input.
include "arch/i386/conf/std.i386"
#ident "GENERIC-$Revision: 1.354.2.5 $"
maxusers 32 # estimated number of users
# CPU support. At least one is REQUIRED.
options I686_CPU
# CPU-related options.
#options VM86 # virtual 8086 emulation
options USER_LDT # user-settable LDT; used by WINE
# eliminate delay no-ops in I/O; recommended on all but very old machines
options DUMMY_NOPS
options UCONSOLE # users can use TIOCCONS (for xconsole)
options INSECURE # disable kernel security levels
options "CONSDEVNAME=\"com\"",CONADDR=0x3f8,CONSPEED=9600
options CONS_OVERRIDE
options RTC_OFFSET=-60 # hardware clock is this many mins. west of GMT
options NTP # NTP phase/frequency locked loop
options KTRACE # system call tracing via ktrace(1)
options SYSVMSG # System V-like message queues
options SYSVSEM # System V-like semaphores
options SYSVSHM # System V-like memory sharing
#options SHMMAXPGS=1024 # 1024 pages is the default
options LKM # loadable kernel modules
# Diagnostic/debugging support options
options DIAGNOSTIC # cheap kernel consistency checks
options KMEMSTATS # kernel memory statistics (vmstat -m)
options DDB # in-kernel debugger
options DDB_HISTORY_SIZE=512 # enable history editing in DDB
makeoptions DEBUG="-g" # compile full symbol table
# Compatibility options
options COMPAT_NOMID # compatibility with 386BSD, BSDI, NetBSD 0.8,
options COMPAT_14 # NetBSD 1.4,
options COMPAT_43 # and 4.3BSD
options COMPAT_SVR4 # binary compatibility with SVR4
options COMPAT_LINUX # binary compatibility with Linux
options COMPAT_FREEBSD # binary compatibility with FreeBSD
# File systems
file-system FFS # UFS
file-system EXT2FS # second extended file system (linux)
file-system LFS # log-structured file system
file-system MFS # memory file system
file-system NFS # Network File System client
file-system NTFS # Windows/NT file system (experimental)
file-system CD9660 # ISO 9660 + Rock Ridge file system
file-system MSDOSFS # MS-DOS file system
file-system FDESC # /dev/fd
file-system KERNFS # /kern
file-system NULLFS # loopback file system
file-system OVERLAY # overlay file system
file-system PORTAL # portal filesystem (still experimental)
file-system PROCFS # /proc
# File system options
options QUOTA # UFS quotas
#options FFS_EI # FFS Endian Independent support
options SOFTDEP # FFS soft updates support.
options NFSSERVER # Network File System server
#options EXT2FS_SYSTEM_FLAGS # makes ext2fs file flags (append and
# immutable) behave as system flags.
# Networking options
#options GATEWAY # packet forwarding
options INET # IP + ICMP + TCP + UDP
options INET6 # IPV6
options IPSEC # IP security
options IPSEC_ESP # IP security (encryption part; define w/IPSEC)
options PFIL_HOOKS # pfil(9) packet filter hooks
options IPFILTER_LOG # ipmon(8) log support
options NMBCLUSTERS=2048
# These options enable verbose messages for several subsystems.
# Warning, these may compile large string tables into the kernel!
options MIIVERBOSE # verbose PHY autoconfig messages
options PCIVERBOSE # verbose PCI device autoconfig messages
options SCSIVERBOSE # human readable SCSI error messages
options USBVERBOSE # verbose USB device autoconfig messages
#
# wscons options
#
# builtin terminal emulations
options WSEMUL_VT100 # VT100 / VT220 emulation
# different kernel output - see dev/wscons/wsdisplayvar.h
options WS_KERNEL_FG=WSCOL_GREEN
#options WS_KERNEL_BG=WSCOL_BLACK
# compatibility to other console drivers
options WSDISPLAY_COMPAT_PCVT # emulate some ioctls
options WSDISPLAY_COMPAT_SYSCONS # emulate some ioctls
options WSDISPLAY_COMPAT_USL # VT handling
options WSDISPLAY_COMPAT_RAWKBD # can get raw scancodes
# Kernel root file system and dump configuration.
config netbsd root on ? type ?
#
# Device configuration
#
mainbus0 at root
apm0 at mainbus0 # Advanced power management
# Basic Bus Support
# PCI bus support
pci* at mainbus? bus ?
pci* at pchb? bus ?
pci* at ppb? bus ?
# PCI bridges
pchb* at pci? dev ? function ? # PCI-Host bridges
pcib* at pci? dev ? function ? # PCI-ISA bridges
ppb* at pci? dev ? function ?
# ISA bus support
isa* at mainbus?
isa* at pcib?
# ISA Plug-and-Play bus support
isapnp0 at isa?
# Math Coprocessor support
npx0 at isa? port 0xf0 irq 13 # x86 math coprocessor
# Console Devices
# wscons
pckbc0 at isa? # pc keyboard controller
pckbd* at pckbc? # PC keyboard
# "opms" should not be enabled together with "pms" or "pmsi"
pms* at pckbc? # PS/2 mouse for wsmouse
pmsi* at pckbc? # PS/2 "Intelli"mouse for wsmouse
vga0 at isa?
vga* at pci? dev ? function ?
pcdisplay0 at isa? # CGA, MDA, EGA, HGA
wsdisplay* at vga? console ?
wsdisplay* at pcdisplay? console ?
wskbd* at pckbd? console ?
wsmouse* at pms? mux 0
wsmouse* at pmsi? mux 0
pcppi0 at isa?
sysbeep0 at pcppi?
# Serial Devices
com0 at isa? port 0x3f8 irq 4 # Standard PC serial ports
com1 at isa? port 0x2f8 irq 3
# Parallel Printer Interfaces
# ISA parallel printer interfaces
lpt0 at isa? port 0x378 irq 7 # standard PC parallel ports
lpt1 at isa? port 0x278
lpt2 at isa? port 0x3bc
# VIA VT82C686A hardware monitor
viapm* at pci? dev ? function ?
viaenv* at viapm?
# SCSI Controllers and Devices
# PCI SCSI controllers
#ahc* at pci? dev ? function ?
#ncr* at pci? dev ? function ? # NCR 53c8xx SCSI (old driver)
siop* at pci? dev ? function ? # Symbios 53c8xx SCSI
# SCSI bus support
scsibus* at siop?
# SCSI devices
sd* at scsibus? target ? lun ? # SCSI disk drives
st* at scsibus? target ? lun ? # SCSI tape drives
cd* at scsibus? target ? lun ? # SCSI CD-ROM drives
ch* at scsibus? target ? lun ? # SCSI autochangers
ses* at scsibus? target ? lun ? # SCSI Enclosure Services devices
ss* at scsibus? target ? lun ? # SCSI scanners
uk* at scsibus? target ? lun ? # SCSI unknown
# IDE and related devices
# PCI IDE controllers - see pciide(4) for supported hardware.
# The 0x0001 flag force the driver to use DMA, even if the driver doesn't know
# how to set up DMA modes for this chip. This may work, or may cause
# a machine hang with some controllers.
pciide* at pci? dev ? function ? flags 0x0000
# IDE drives
# Flags are used only with controllers that support DMA operations
# and mode settings (e.g. some pciide controllers)
# The lowest order four bits (rightmost digit) of the flags define the PIO
# mode to use, the next set of four bits the DMA mode and the third set the
# UltraDMA mode. For each set of four bits, the 3 lower bits define the mode
# to use, and the last bit must be 1 for this setting to be used.
# For DMA and UDMA, 0xf (1111) means 'disable'.
# 0x0fac means 'use PIO mode 4, DMA mode 2, disable UltraDMA'.
# (0xc=1100, 0xa=1010, 0xf=1111)
# 0x0000 means "use whatever the drive claims to support".
wd* at pciide? channel ? drive ? flags 0x0000
# ATAPI bus support
atapibus* at pciide? channel ?
# ATAPI devices
# flags have the same meaning as for IDE drives.
cd* at atapibus? drive ? flags 0x0000 # ATAPI CD-ROM drives
sd* at atapibus? drive ? flags 0x0000 # ATAPI disk drives
uk* at atapibus? drive ? flags 0x0000 # ATAPI unknown
# Miscellaneous mass storage devices
# ISA floppy
fdc0 at isa? port 0x3f0 irq 6 drq 2 # standard PC floppy controllers
#fdc1 at isa? port 0x370 irq ? drq ?
fd* at fdc? drive ? # the drives themselves
# some machines need you to do this instead of fd*
#fd0 at fdc0 drive 0
# Network Interfaces
# PCI network interfaces
ex* at pci? dev ? function ? # 3Com 90x[B]
# MII/PHY support
exphy* at mii? phy ? # 3Com internal PHYs
nsphy* at mii? phy ? # NS83840 PHYs
ukphy* at mii? phy ? # generic unknown PHYs
# USB Controller and Devices
# PCI USB controllers
ohci* at pci? dev ? function ? # Open Host Controller
uhci* at pci? dev ? function ? # Universal Host Controller (Intel)
# CardBus USB controllers
#ohci* at cardbus? dev ? function ? # Open Host Controller
# USB bus support
usb* at ohci?
usb* at uhci?
# USB Hubs
uhub* at usb?
uhub* at uhub? port ? configuration ? interface ?
# USB Mice
ums* at uhub? port ? configuration ? interface ?
wsmouse* at ums? mux 0
# USB Keyboards
ukbd* at uhub? port ? configuration ? interface ?
wskbd* at ukbd? console ? mux 1
# USB Generic HID devices
uhid* at uhub? port ? configuration ? interface ?
# USB Printer
ulpt* at uhub? port ? configuration ? interface ?
# USB Modem
umodem* at uhub? port ? configuration ?
ucom* at umodem?
# USB Mass Storage
umass* at uhub? port ? configuration ? interface ?
atapibus* at umass? channel ?
scsibus* at umass? channel ?
# USB audio
uaudio* at uhub? port ? configuration ?
# USB Ethernet adapters
aue* at uhub? port ? # ADMtek AN986 Pegasus based adapters
cue* at uhub? port ? # CATC USB-EL1201A based adapters
kue* at uhub? port ? # Kawasaki LSI KL5KUSB101B based adapters
# Prolofic PL2301/PL2302 host-to-host adapter
upl* at uhub? port ?
# Serial adapters
# FTDI FT8U100AX serial adapter
#uftdi* at uhub? port ?
#ucom* at uftdi? portno ?
# Diamond Multimedia Rio 500
urio* at uhub? port ?
# USB Handspring Visor
uvisor* at uhub? port ?
ucom* at uvisor?
# USB Generic driver
ugen* at uhub? port ?
# Audio Devices
# PCI audio devices
auvia* at pci? dev ? function ? # VIA VT82C686A integrated AC'97 Audio
# Audio support
audio* at auvia?
# Pull in optional local configuration
include "arch/i386/conf/GENERIC.local"
# Pseudo-Devices
# disk/mass storage pseudo-devices
#pseudo-device raid 4 # RAIDframe disk driver
#options RAID_AUTOCONFIG # auto-configuration of RAID components
pseudo-device vnd 4 # disk-like interface to files
# network pseudo-devices
pseudo-device bpfilter 8 # Berkeley packet filter
pseudo-device ipfilter # IP filter (firewall) and NAT
pseudo-device loop # network loopback
pseudo-device tun 2 # network tunneling over tty
pseudo-device gre 2 # generic L3 over IP tunnel
pseudo-device ipip 2 # IP Encapsulation within IP (RFC 2003)
pseudo-device gif 4 # IPv[46] over IPv[46] tunnel (RFC1933)
#pseudo-device faith 1 # IPv[46] tcp relay translation i/f
#pseudo-device stf 1 # 6to4 IPv6 over IPv4 encapsulation
# miscellaneous pseudo-devices
pseudo-device pty 64 # pseudo-terminals
pseudo-device sequencer 1 # MIDI sequencer
# rnd works; RND_COM does not on port i386 yet.
pseudo-device rnd # /dev/random and in-kernel generator
#options RND_COM # use "com" randomness as well (BROKEN)
# mouse & keyboard multiplexor pseudo-devices
pseudo-device wsmux 2
>Fix:
Dunno, haven't looked into it further.
>Release-Note:
>Audit-Trail:
>Unformatted: