Remove opms(4) and its device, /dev/pms0, from the i386 port, because
it has been obsoleted by pms(4). Reviewed by fvdl and christos.
This commit is contained in:
parent
eb225418ed
commit
c6dc851f64
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: mi,v 1.465 2002/04/07 15:45:02 wiz Exp $
|
||||
# $NetBSD: mi,v 1.466 2002/04/18 12:54:09 wiz Exp $
|
||||
./usr/share/info/am-utils.info man-amd-info
|
||||
./usr/share/info/as.info man-computil-info
|
||||
./usr/share/info/awk.info man-util-info
|
||||
|
@ -676,7 +676,6 @@
|
|||
./usr/share/man/cat4/i386/npx.0 man-sys-catman
|
||||
./usr/share/man/cat4/i386/olms.0 man-sys-catman
|
||||
./usr/share/man/cat4/i386/omms.0 man-sys-catman
|
||||
./usr/share/man/cat4/i386/opms.0 man-sys-catman
|
||||
./usr/share/man/cat4/i386/pcibios.0 man-sys-catman
|
||||
./usr/share/man/cat4/i386/pnpbios.0 man-sys-catman
|
||||
./usr/share/man/cat4/icmp.0 man-sys-catman
|
||||
|
@ -2367,7 +2366,6 @@
|
|||
./usr/share/man/man4/i386/npx.4 man-sys-man
|
||||
./usr/share/man/man4/i386/olms.4 man-sys-man
|
||||
./usr/share/man/man4/i386/omms.4 man-sys-man
|
||||
./usr/share/man/man4/i386/opms.4 man-sys-man
|
||||
./usr/share/man/man4/i386/pcibios.4 man-sys-man
|
||||
./usr/share/man/man4/i386/pnpbios.4 man-sys-man
|
||||
./usr/share/man/man4/icmp.4 man-sys-man
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: obsolete.mi,v 1.44 2002/04/07 15:45:02 wiz Exp $
|
||||
# $NetBSD: obsolete.mi,v 1.45 2002/04/18 12:54:10 wiz Exp $
|
||||
/usr/share/man/cat1/amq.0
|
||||
/usr/share/man/cat1/g711conv.0
|
||||
/usr/share/man/cat1/i386
|
||||
|
@ -50,6 +50,7 @@
|
|||
/usr/share/man/cat4/i386/ie.0
|
||||
/usr/share/man/cat4/i386/joy.0
|
||||
/usr/share/man/cat4/i386/le.0
|
||||
/usr/share/man/cat4/i386/opms.0
|
||||
/usr/share/man/cat4/i386/pcvt.0
|
||||
/usr/share/man/cat4/i386/pms.0
|
||||
/usr/share/man/cat4/i386/speaker.0
|
||||
|
@ -174,6 +175,7 @@
|
|||
/usr/share/man/man4/i386/ie.4
|
||||
/usr/share/man/man4/i386/joy.4
|
||||
/usr/share/man/man4/i386/le.4
|
||||
/usr/share/man/man4/i386/opms.4
|
||||
/usr/share/man/man4/i386/pcvt.4
|
||||
/usr/share/man/man4/i386/pms.4
|
||||
/usr/share/man/man4/i386/speaker.4
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#!/bin/sh -
|
||||
#
|
||||
# $NetBSD: MAKEDEV,v 1.174 2002/03/16 17:03:33 martin Exp $
|
||||
# $NetBSD: MAKEDEV,v 1.175 2002/04/18 12:54:11 wiz Exp $
|
||||
#
|
||||
# Copyright (c) 1990 The Regents of the University of California.
|
||||
# All rights reserved.
|
||||
|
@ -64,7 +64,6 @@
|
|||
# Pointing devices:
|
||||
# mms* Microsoft bus mouse
|
||||
# lms* Logitech bus mouse
|
||||
# pms* PS/2 mouse
|
||||
# wsmouse* wscons mouse events
|
||||
#
|
||||
# Keyboard devices:
|
||||
|
@ -174,7 +173,7 @@ all)
|
|||
makedev bpf0 bpf1 bpf2 bpf3 bpf4 bpf5 bpf6 bpf7
|
||||
makedev lpt0 lpt1 lpt2 ttyv0 tun0 tun1 tun2 tun3 ipl
|
||||
makedev ccd0 ccd1 ccd2 ccd3 md0 ss0 ch0 uk0 uk1 random
|
||||
makedev speaker lkm mms0 lms0 pms0 joy0 joy1 apm local satlink0
|
||||
makedev speaker lkm mms0 lms0 joy0 joy1 apm local satlink0
|
||||
makedev iop0 mlx0 mly0
|
||||
makedev audio
|
||||
makedev radio
|
||||
|
@ -664,13 +663,12 @@ lpt*|lpa*)
|
|||
mknod $name$unit c $chr $(($unit + $flags))
|
||||
;;
|
||||
|
||||
bpf*|tun*|mms*|lms*|pms*|joy*)
|
||||
bpf*|tun*|mms*|lms*|joy*)
|
||||
case $i in
|
||||
bpf*) name=bpf; unit=${i#bpf}; chr=23;;
|
||||
tun*) name=tun; unit=${i#tun}; chr=40;;
|
||||
mms*) name=mms; unit=${i#mms}; chr=35;;
|
||||
lms*) name=lms; unit=${i#lms}; chr=36;;
|
||||
pms*) name=pms; unit=${i#pms}; chr=37;;
|
||||
joy*) name=joy; unit=${i#joy}; chr=26;;
|
||||
esac
|
||||
rm -f $name$unit
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
# $NetBSD: Makefile,v 1.50 2002/02/06 21:06:35 jdolecek Exp $
|
||||
# $NetBSD: Makefile,v 1.51 2002/04/18 12:54:11 wiz Exp $
|
||||
# from: @(#)Makefile 8.1 (Berkeley) 6/5/93
|
||||
|
||||
MAN= apm.4 autoconf.4 busmouse.4 console.4 fdc.4 \
|
||||
intro.4 io.4 lms.4 lpt.4 mem.4 mms.4 npx.4 \
|
||||
opms.4 pcibios.4 pnpbios.4
|
||||
pcibios.4 pnpbios.4
|
||||
MLINKS= mem.4 kmem.4 lms.4 olms.4 mms.4 omms.4
|
||||
MLINKS+=pcibios.4 PCIBIOS.4
|
||||
MANSUBDIR=/i386
|
||||
|
|
|
@ -1,73 +0,0 @@
|
|||
.\" $NetBSD: opms.4,v 1.7 2002/01/15 01:43:27 wiz Exp $
|
||||
.\"
|
||||
.\" Copyright (c) 1993 Christopher G. Demetriou
|
||||
.\" All rights reserved.
|
||||
.\"
|
||||
.\" Redistribution and use in source and binary forms, with or without
|
||||
.\" modification, are permitted provided that the following conditions
|
||||
.\" are met:
|
||||
.\" 1. Redistributions of source code must retain the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer.
|
||||
.\" 2. Redistributions in binary form must reproduce the above copyright
|
||||
.\" notice, this list of conditions and the following disclaimer in the
|
||||
.\" documentation and/or other materials provided with the distribution.
|
||||
.\" 3. All advertising materials mentioning features or use of this software
|
||||
.\" must display the following acknowledgement:
|
||||
.\" This product includes software developed for the
|
||||
.\" NetBSD Project. See http://www.netbsd.org/ for
|
||||
.\" information about NetBSD.
|
||||
.\" 4. The name of the author may not be used to endorse or promote products
|
||||
.\" derived from this software without specific prior written permission.
|
||||
.\"
|
||||
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
|
||||
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
|
||||
.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
|
||||
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
|
||||
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
.\"
|
||||
.\" <<Id: LICENSE,v 1.2 2000/06/14 15:57:33 cgd Exp>>
|
||||
.\"
|
||||
.Dd March 12, 1997
|
||||
.Dt OPMS 4 i386
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm opms
|
||||
.Nd PS/2 auxiliary port mouse driver
|
||||
.Sh SYNOPSIS
|
||||
.Cd pckbc* at isa?
|
||||
.Cd opms* at pckbc?
|
||||
.Cd opms0 at pc? irq 12
|
||||
.Cd opms0 at vt? irq 12
|
||||
.Sh DESCRIPTION
|
||||
This driver provides a interface to a PS/2 auxiliary port mouse which
|
||||
is backwards-compatible to previous
|
||||
.Nx / i386
|
||||
versions without
|
||||
.Xr wscons 4
|
||||
support.
|
||||
The
|
||||
.Dq opms
|
||||
driver internally converts the PS/2 mouse output into
|
||||
.Xr busmouse 4
|
||||
protocol.
|
||||
.Sh FILES
|
||||
.Bl -tag -width Pa -compact
|
||||
.It Pa /dev/pms0
|
||||
first PS/2 mouse device.
|
||||
.El
|
||||
.Sh SEE ALSO
|
||||
.Xr busmouse 4 ,
|
||||
.Xr lms 4 ,
|
||||
.Xr mms 4 ,
|
||||
.Xr pckbc 4 ,
|
||||
.Xr pms 4 ,
|
||||
.Xr wsmouse 4
|
||||
.Sh BUGS
|
||||
The
|
||||
.Nm
|
||||
device probe routine has been known to confuse some keyboard controllers.
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: CARDBUS,v 1.56 2002/04/17 02:22:48 mycroft Exp $
|
||||
# $NetBSD: CARDBUS,v 1.57 2002/04/18 12:54:12 wiz Exp $
|
||||
#
|
||||
# CARDBUS: GENERIC + CardBus support. Additionally, some
|
||||
# things typically not found on laptops have been commented out.
|
||||
|
@ -8,7 +8,7 @@
|
|||
|
||||
include "arch/i386/conf/std.i386"
|
||||
|
||||
#ident "CARDBUS-$Revision: 1.56 $"
|
||||
#ident "CARDBUS-$Revision: 1.57 $"
|
||||
|
||||
maxusers 32 # estimated number of users
|
||||
|
||||
|
@ -329,9 +329,7 @@ npx0 at isa? port 0xf0 irq 13 # x86 math coprocessor
|
|||
# wscons
|
||||
pckbc0 at isa? # pc keyboard controller
|
||||
pckbd* at pckbc? # PC keyboard
|
||||
# "opms" should not be enabled together with "pms"
|
||||
pms* at pckbc? # PS/2 mouse for wsmouse
|
||||
#opms* at pckbc? # backwards compatible PS/2 mouse
|
||||
vga0 at isa?
|
||||
vga* at pci? dev ? function ?
|
||||
pcdisplay0 at isa? # CGA, MDA, EGA, HGA
|
||||
|
@ -896,7 +894,6 @@ midi* at umidi? # USB MIDI
|
|||
#olms1 at isa? port 0x238 irq 5
|
||||
#omms0 at isa? port 0x23c irq 5 # Microsoft InPort mouse
|
||||
#omms1 at isa? port 0x238 irq 5
|
||||
#opms0 at pc? irq 12 # PS/2 auxiliary port mouse
|
||||
|
||||
|
||||
# Joysticks
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
# $NetBSD: DELPHI,v 1.15 2002/04/17 02:22:48 mycroft Exp $
|
||||
# $NetBSD: DELPHI,v 1.16 2002/04/18 12:54:12 wiz Exp $
|
||||
#
|
||||
# DELPHI -- one of thorpej@zembu.com's devel machines
|
||||
#
|
||||
|
||||
include "arch/i386/conf/std.i386"
|
||||
|
||||
ident "DELPHI-$Revision: 1.15 $"
|
||||
ident "DELPHI-$Revision: 1.16 $"
|
||||
|
||||
maxusers 64 # estimated number of users
|
||||
|
||||
|
@ -275,9 +275,7 @@ npx0 at isa? port 0xf0 irq 13 # x86 math coprocessor
|
|||
# wscons
|
||||
pckbc0 at isa? # pc keyboard controller
|
||||
pckbd* at pckbc? # PC keyboard
|
||||
# "opms" should not be enabled together with "pms"
|
||||
pms* at pckbc? # PS/2 mouse for wsmouse
|
||||
#opms* at pckbc? # backwards compatible PS/2 mouse
|
||||
#vga0 at isa?
|
||||
vga* at pci? dev ? function ?
|
||||
pcdisplay0 at isa? # CGA, MDA, EGA, HGA
|
||||
|
@ -729,8 +727,6 @@ spkr0 at pcppi? # PC speaker
|
|||
#olms1 at isa? port 0x238 irq 5
|
||||
#omms0 at isa? port 0x23c irq 5 # Microsoft InPort mouse
|
||||
#omms1 at isa? port 0x238 irq 5
|
||||
#opms0 at pc? irq 12 # PS/2 auxiliary port mouse
|
||||
#opms0 at vt? irq 12 # PS/2 auxiliary port mouse
|
||||
|
||||
|
||||
# Joysticks
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: DISKLESS,v 1.83 2002/04/17 02:22:48 mycroft Exp $
|
||||
# $NetBSD: DISKLESS,v 1.84 2002/04/18 12:54:12 wiz Exp $
|
||||
#
|
||||
# DISKLESS -- Generic machine setup for diskless boot.
|
||||
# This kernel can be loaded from a bootable floppy (i.e. kernel-copy)
|
||||
|
@ -152,7 +152,6 @@ olms0 at isa? port 0x23c irq 5 # Logitech bus mouse
|
|||
olms1 at isa? port 0x238 irq 5
|
||||
omms0 at isa? port 0x23c irq 5 # Microsoft InPort mouse
|
||||
omms1 at isa? port 0x238 irq 5
|
||||
#opms0 at pc? irq 12 # PS/2 auxiliary port mouse
|
||||
|
||||
#aha0 at isa? port 0x330 irq ? drq ? # Adaptec 154[02] SCSI controllers
|
||||
#aha1 at isa? port 0x334 irq ? drq ? # Adaptec 154[02] SCSI controllers
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: DR-EVIL,v 1.42 2002/04/17 02:22:49 mycroft Exp $
|
||||
# $NetBSD: DR-EVIL,v 1.43 2002/04/18 12:54:13 wiz Exp $
|
||||
#
|
||||
# DR-EVIL -- Dell Inspiron 3800 laptop used by thorpej@netbsd.org
|
||||
#
|
||||
|
@ -309,9 +309,7 @@ pcmcia* at cardslot?
|
|||
# wscons
|
||||
pckbc* at isa? # pc keyboard controller
|
||||
pckbd* at pckbc? # PC keyboard
|
||||
# "opms" should not be enabled together with "pms"
|
||||
pms* at pckbc? # PS/2 mouse for wsmouse
|
||||
#opms* at pckbc? # backwards compatible PS/2 mouse
|
||||
#vga0 at isa?
|
||||
vga* at pci?
|
||||
#pcdisplay0 at isa? # CGA, MDA, EGA, HGA
|
||||
|
@ -784,7 +782,6 @@ bktr* at pci? dev ? function ?
|
|||
#olms1 at isa? port 0x238 irq 5
|
||||
#omms0 at isa? port 0x23c irq 5 # Microsoft InPort mouse
|
||||
#omms1 at isa? port 0x238 irq 5
|
||||
#opms0 at pc? irq 12 # PS/2 auxiliary port mouse
|
||||
|
||||
|
||||
# Joysticks
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: GENERIC,v 1.485 2002/04/18 12:06:11 bouyer Exp $
|
||||
# $NetBSD: GENERIC,v 1.486 2002/04/18 12:54:13 wiz Exp $
|
||||
#
|
||||
# GENERIC machine description file
|
||||
#
|
||||
|
@ -20,7 +20,7 @@
|
|||
|
||||
include "arch/i386/conf/std.i386"
|
||||
|
||||
#ident "GENERIC-$Revision: 1.485 $"
|
||||
#ident "GENERIC-$Revision: 1.486 $"
|
||||
|
||||
maxusers 32 # estimated number of users
|
||||
|
||||
|
@ -338,10 +338,8 @@ npx0 at isa? port 0xf0 irq 13 # x86 math coprocessor
|
|||
# wscons
|
||||
pckbc0 at isa? # pc keyboard controller
|
||||
pckbd* at pckbc? # PC keyboard
|
||||
# "opms" should not be enabled together with "pms"
|
||||
pms* at pckbc? # PS/2 mouse for wsmouse
|
||||
#options PMS_DISABLE_POWERHOOK
|
||||
#opms* at pckbc? # backwards compatible PS/2 mouse
|
||||
vga0 at isa?
|
||||
vga* at pci? dev ? function ?
|
||||
pcdisplay0 at isa? # CGA, MDA, EGA, HGA
|
||||
|
@ -989,7 +987,6 @@ wsmouse* at mms? mux 0
|
|||
#olms1 at isa? port 0x238 irq 5
|
||||
#omms0 at isa? port 0x23c irq 5 # Microsoft InPort mouse
|
||||
#omms1 at isa? port 0x238 irq 5
|
||||
#opms0 at pc? irq 12 # PS/2 auxiliary port mouse
|
||||
|
||||
|
||||
# Joysticks
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: GENERIC_LAPTOP,v 1.48 2002/04/17 11:52:47 mycroft Exp $
|
||||
# $NetBSD: GENERIC_LAPTOP,v 1.49 2002/04/18 12:54:13 wiz Exp $
|
||||
# From: NetBSD: GENERIC,v 1.414 2001/07/30 19:59:05 ad Exp
|
||||
#
|
||||
# GENERIC_LAPTOP -- GENERIC with cardbus and some USB devices enabled
|
||||
|
@ -6,7 +6,7 @@
|
|||
|
||||
include "arch/i386/conf/std.i386"
|
||||
|
||||
#ident "GENERIC-$Revision: 1.48 $"
|
||||
#ident "GENERIC-$Revision: 1.49 $"
|
||||
|
||||
maxusers 32 # estimated number of users
|
||||
|
||||
|
@ -311,9 +311,7 @@ npx0 at isa? port 0xf0 irq 13 # x86 math coprocessor
|
|||
# wscons
|
||||
pckbc0 at isa? # pc keyboard controller
|
||||
pckbd* at pckbc? # PC keyboard
|
||||
# "opms" should not be enabled together with "pms"
|
||||
pms* at pckbc? # PS/2 mouse for wsmouse
|
||||
#opms* at pckbc? # backwards compatible PS/2 mouse
|
||||
vga0 at isa?
|
||||
vga* at pci? dev ? function ?
|
||||
pcdisplay0 at isa? # CGA, MDA, EGA, HGA
|
||||
|
@ -730,7 +728,6 @@ wsmouse* at mms? mux 0
|
|||
#olms1 at isa? port 0x238 irq 5
|
||||
#omms0 at isa? port 0x23c irq 5 # Microsoft InPort mouse
|
||||
#omms1 at isa? port 0x238 irq 5
|
||||
#opms0 at pc? irq 12 # PS/2 auxiliary port mouse
|
||||
|
||||
|
||||
# Joysticks
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: GENERIC_TINY,v 1.38 2002/04/18 12:06:12 bouyer Exp $
|
||||
# $NetBSD: GENERIC_TINY,v 1.39 2002/04/18 12:54:13 wiz Exp $
|
||||
#
|
||||
# GENERIC_TINY -- suitable default for 4M machines
|
||||
# No EISA, PCI, or SCSI.
|
||||
|
@ -224,9 +224,7 @@ npx0 at isa? port 0xf0 irq 13 # x86 math coprocessor
|
|||
# wscons
|
||||
pckbc0 at isa? # pc keyboard controller
|
||||
pckbd* at pckbc? # PC keyboard
|
||||
# "opms" should not be enabled together with "pms"
|
||||
#pms* at pckbc? # PS/2 mouse for wsmouse
|
||||
#opms* at pckbc? # backwards compatible PS/2 mouse
|
||||
vga0 at isa?
|
||||
#vga* at pci? dev ? function ?
|
||||
pcdisplay0 at isa? # CGA, MDA, EGA, HGA
|
||||
|
@ -521,7 +519,6 @@ we1 at isa? port 0x300 iomem 0xcc000 irq 10
|
|||
#olms1 at isa? port 0x238 irq 5
|
||||
#omms0 at isa? port 0x23c irq 5 # Microsoft InPort mouse
|
||||
#omms1 at isa? port 0x238 irq 5
|
||||
#opms0 at pc? irq 12 # PS/2 auxiliary port mouse
|
||||
|
||||
|
||||
# Joysticks
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: HOMEWORLD,v 1.65 2002/04/17 02:22:50 mycroft Exp $
|
||||
# $NetBSD: HOMEWORLD,v 1.66 2002/04/18 12:54:13 wiz Exp $
|
||||
# From: GENERIC,v 1.212 1999/01/06 23:30:53 thorpej Exp
|
||||
#
|
||||
# HOMEWORLD - TNF mail/gnats
|
||||
|
@ -234,9 +234,7 @@ npx0 at isa? port 0xf0 irq 13 # x86 math coprocessor
|
|||
# wscons
|
||||
pckbc0 at isa? # pc keyboard controller
|
||||
pckbd* at pckbc? # PC keyboard
|
||||
# "opms" should not be enabled together with "pms"
|
||||
#pms* at pckbc? # PS/2 mouse for wsmouse
|
||||
#opms* at pckbc? # backwards compatible PS/2 mouse
|
||||
#vga0 at isa?
|
||||
vga* at pci?
|
||||
#pcdisplay0 at isa? # CGA, MDA, EGA, HGA
|
||||
|
@ -583,7 +581,6 @@ inphy* at mii? phy ? # Intel 82555 PHYs
|
|||
#olms1 at isa? port 0x238 irq 5
|
||||
#omms0 at isa? port 0x23c irq 5 # Microsoft InPort mouse
|
||||
#omms1 at isa? port 0x238 irq 5
|
||||
#opms0 at pc? irq 12 # PS/2 auxiliary port mouse
|
||||
|
||||
|
||||
# Joysticks
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: INSTALL,v 1.192 2002/04/17 02:22:50 mycroft Exp $
|
||||
# $NetBSD: INSTALL,v 1.193 2002/04/18 12:54:14 wiz Exp $
|
||||
#
|
||||
# INSTALL - Installation kernel.
|
||||
#
|
||||
|
@ -230,9 +230,7 @@ pc0 at isa? port 0x60 irq 1 # pccons generic PC console driver
|
|||
# wscons
|
||||
#pckbc0 at isa? # pc keyboard controller
|
||||
#pckbd* at pckbc? # PC keyboard
|
||||
# "opms" should not be enabled together with "pms"
|
||||
#pms* at pckbc? # PS/2 mouse for wsmouse
|
||||
#opms* at pckbc? # backwards compatible PS/2 mouse
|
||||
#vga0 at isa?
|
||||
#vga* at pci?
|
||||
#pcdisplay0 at isa? # CGA, MDA, EGA, HGA
|
||||
|
@ -664,7 +662,6 @@ url* at uhub? port ? # Realtek RTL8150L based adapters
|
|||
#olms1 at isa? port 0x238 irq 5
|
||||
#omms0 at isa? port 0x23c irq 5 # Microsoft InPort mouse
|
||||
#omms1 at isa? port 0x238 irq 5
|
||||
#opms0 at pc? irq 12 # PS/2 auxiliary port mouse
|
||||
|
||||
# Joysticks
|
||||
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: INSTALL_LAPTOP,v 1.27 2002/04/14 01:42:53 mycroft Exp $
|
||||
# $NetBSD: INSTALL_LAPTOP,v 1.28 2002/04/18 12:54:14 wiz Exp $
|
||||
#
|
||||
# INSTALL - Installation kernel.
|
||||
#
|
||||
|
@ -238,9 +238,7 @@ pc0 at isa? port 0x60 irq 1 # pccons generic PC console driver
|
|||
# wscons
|
||||
#pckbc0 at isa? # pc keyboard controller
|
||||
#pckbd* at pckbc? # PC keyboard
|
||||
# "opms" should not be enabled together with "pms"
|
||||
#pms* at pckbc? # PS/2 mouse for wsmouse
|
||||
#opms* at pckbc? # backwards compatible PS/2 mouse
|
||||
#vga0 at isa?
|
||||
#vga* at pci?
|
||||
#pcdisplay0 at isa? # CGA, MDA, EGA, HGA
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: INSTALL_SMALL,v 1.81 2002/04/17 02:22:51 mycroft Exp $
|
||||
# $NetBSD: INSTALL_SMALL,v 1.82 2002/04/18 12:54:14 wiz Exp $
|
||||
#
|
||||
# INSTALL_SMALL - Small Installation kernel.
|
||||
#
|
||||
|
@ -465,7 +465,6 @@ we1 at isa? port 0x300 iomem 0xcc000 irq 10
|
|||
#olms1 at isa? port 0x238 irq 5
|
||||
#omms0 at isa? port 0x23c irq 5 # Microsoft InPort mouse
|
||||
#omms1 at isa? port 0x238 irq 5
|
||||
#opms0 at pc? irq 12 # PS/2 auxiliary port mouse
|
||||
|
||||
|
||||
# Joysticks
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: INSTALL_TINY,v 1.49 2002/04/17 02:22:51 mycroft Exp $
|
||||
# $NetBSD: INSTALL_TINY,v 1.50 2002/04/18 12:54:14 wiz Exp $
|
||||
#
|
||||
# INSTALL_TINY - Tiny Installation kernel, suitable for 4M machines.
|
||||
#
|
||||
|
@ -470,7 +470,6 @@ we1 at isa? port 0x300 iomem 0xcc000 irq 10
|
|||
#olms1 at isa? port 0x238 irq 5
|
||||
#omms0 at isa? port 0x23c irq 5 # Microsoft InPort mouse
|
||||
#omms1 at isa? port 0x238 irq 5
|
||||
#opms0 at pc? irq 12 # PS/2 auxiliary port mouse
|
||||
|
||||
|
||||
# Joysticks
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: IOPENER,v 1.26 2002/04/14 01:42:53 mycroft Exp $
|
||||
# $NetBSD: IOPENER,v 1.27 2002/04/18 12:54:14 wiz Exp $
|
||||
#
|
||||
# IOPENER -- GENERIC-like kernel for the Netpliance i-opener
|
||||
# from: GENERIC,v 1.358 2000/07/05 04:07:25 sommerfeld Exp
|
||||
|
@ -6,7 +6,7 @@
|
|||
|
||||
include "arch/i386/conf/std.i386"
|
||||
|
||||
#ident "IOPENER-$Revision: 1.26 $"
|
||||
#ident "IOPENER-$Revision: 1.27 $"
|
||||
|
||||
maxusers 32 # estimated number of users
|
||||
|
||||
|
@ -225,9 +225,7 @@ npx0 at isa? port 0xf0 irq 13 # x86 math coprocessor
|
|||
# wscons
|
||||
pckbc0 at isa? # pc keyboard controller
|
||||
pckbd* at pckbc? # PC keyboard
|
||||
# "opms" should not be enabled together with "pms"
|
||||
pms* at pckbc? # PS/2 mouse for wsmouse
|
||||
#opms* at pckbc? # backwards compatible PS/2 mouse
|
||||
vga* at pci? dev ? function ?
|
||||
wsdisplay* at vga? console ?
|
||||
wskbd* at pckbd? console ?
|
||||
|
|
|
@ -1,11 +1,11 @@
|
|||
# $NetBSD: LAMB,v 1.20 2002/04/17 23:23:49 hubertf Exp $
|
||||
# $NetBSD: LAMB,v 1.21 2002/04/18 12:54:14 wiz Exp $
|
||||
#
|
||||
# LAMB - a complete kernel for wildlab LAMB, http://www.wildlab.com/
|
||||
#
|
||||
|
||||
include "arch/i386/conf/std.i386"
|
||||
|
||||
#ident "GENERIC-$Revision: 1.20 $"
|
||||
#ident "GENERIC-$Revision: 1.21 $"
|
||||
|
||||
maxusers 32 # estimated number of users
|
||||
|
||||
|
@ -264,9 +264,7 @@ npx0 at isa? port 0xf0 irq 13 # x86 math coprocessor
|
|||
# wscons
|
||||
pckbc0 at isa? # pc keyboard controller
|
||||
pckbd* at pckbc? # PC keyboard
|
||||
# "opms" should not be enabled together with "pms"
|
||||
pms* at pckbc? # PS/2 mouse for wsmouse
|
||||
#opms* at pckbc? # backwards compatible PS/2 mouse
|
||||
vga0 at isa?
|
||||
pcdisplay0 at isa? # CGA, MDA, EGA, HGA
|
||||
wsdisplay* at vga? console ?
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: MINBAR,v 1.36 2002/04/17 02:22:52 mycroft Exp $
|
||||
# $NetBSD: MINBAR,v 1.37 2002/04/18 12:54:14 wiz Exp $
|
||||
# From: GENERIC,v 1.212 1999/01/06 23:30:53 thorpej Exp
|
||||
#
|
||||
# MINBAR -- offshore CVS server
|
||||
|
@ -220,9 +220,7 @@ npx0 at isa? port 0xf0 irq 13 # x86 math coprocessor
|
|||
# wscons
|
||||
pckbc0 at isa? # pc keyboard controller
|
||||
pckbd* at pckbc? # PC keyboard
|
||||
# "opms" should not be enabled together with "pms"
|
||||
#pms* at pckbc? # PS/2 mouse for wsmouse
|
||||
#opms* at pckbc? # backwards compatible PS/2 mouse
|
||||
#vga0 at isa?
|
||||
vga* at pci?
|
||||
#pcdisplay0 at isa? # CGA, MDA, EGA, HGA
|
||||
|
@ -569,7 +567,6 @@ inphy* at mii? phy ? # Intel 82555 PHYs
|
|||
#olms1 at isa? port 0x238 irq 5
|
||||
#omms0 at isa? port 0x23c irq 5 # Microsoft InPort mouse
|
||||
#omms1 at isa? port 0x238 irq 5
|
||||
#opms0 at pc? irq 12 # PS/2 auxiliary port mouse
|
||||
|
||||
|
||||
# Joysticks
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: NBFTP,v 1.39 2002/04/17 02:22:52 mycroft Exp $
|
||||
# $NetBSD: NBFTP,v 1.40 2002/04/18 12:54:14 wiz Exp $
|
||||
# From: GENERIC,v 1.212 1999/01/06 23:30:53 thorpej Exp
|
||||
#
|
||||
# NBFTP -- ftp/sup.netbsd.org server machine
|
||||
|
@ -234,9 +234,7 @@ npx0 at isa? port 0xf0 irq 13 # x86 math coprocessor
|
|||
# wscons
|
||||
pckbc0 at isa? # pc keyboard controller
|
||||
pckbd* at pckbc? # PC keyboard
|
||||
# "opms" should not be enabled together with "pms"
|
||||
#pms* at pckbc? # PS/2 mouse for wsmouse
|
||||
#opms* at pckbc? # backwards compatible PS/2 mouse
|
||||
#vga0 at isa?
|
||||
vga* at pci?
|
||||
#pcdisplay0 at isa? # CGA, MDA, EGA, HGA
|
||||
|
@ -583,7 +581,6 @@ ukphy* at mii? phy ? # generic unknown PHYs
|
|||
#olms1 at isa? port 0x238 irq 5
|
||||
#omms0 at isa? port 0x23c irq 5 # Microsoft InPort mouse
|
||||
#omms1 at isa? port 0x238 irq 5
|
||||
#opms0 at pc? irq 12 # PS/2 auxiliary port mouse
|
||||
|
||||
|
||||
# Joysticks
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: SWINGER,v 1.30 2002/04/17 02:22:52 mycroft Exp $
|
||||
# $NetBSD: SWINGER,v 1.31 2002/04/18 12:54:15 wiz Exp $
|
||||
# from NetBSD: GENERIC,v 1.325 2000/04/14 14:53:32 augustss Exp
|
||||
#
|
||||
# SWINGER -- thorpej's Abit BP6+dual Celeron
|
||||
|
@ -6,7 +6,7 @@
|
|||
|
||||
include "arch/i386/conf/std.i386"
|
||||
|
||||
#ident "SWINGER-$Revision: 1.30 $"
|
||||
#ident "SWINGER-$Revision: 1.31 $"
|
||||
|
||||
maxusers 64 # estimated number of users
|
||||
|
||||
|
@ -270,9 +270,7 @@ npx0 at isa? port 0xf0 irq 13 # x86 math coprocessor
|
|||
# wscons
|
||||
pckbc0 at isa? # pc keyboard controller
|
||||
pckbd* at pckbc? # PC keyboard
|
||||
# "opms" should not be enabled together with "pms"
|
||||
pms* at pckbc? # PS/2 mouse for wsmouse
|
||||
#opms* at pckbc? # backwards compatible PS/2 mouse
|
||||
#vga0 at isa?
|
||||
vga* at pci? dev ? function ?
|
||||
#pcdisplay0 at isa? # CGA, MDA, EGA, HGA
|
||||
|
@ -755,7 +753,6 @@ bktr* at pci? dev ? function ?
|
|||
#olms1 at isa? port 0x238 irq 5
|
||||
#omms0 at isa? port 0x23c irq 5 # Microsoft InPort mouse
|
||||
#omms1 at isa? port 0x238 irq 5
|
||||
#opms0 at pc? irq 12 # PS/2 auxiliary port mouse
|
||||
|
||||
|
||||
# Joysticks
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
# $NetBSD: files.i386,v 1.205 2002/04/16 20:50:20 thorpej Exp $
|
||||
# $NetBSD: files.i386,v 1.206 2002/04/18 12:54:12 wiz Exp $
|
||||
#
|
||||
# new style config file for i386 architecture
|
||||
#
|
||||
|
@ -248,10 +248,6 @@ file arch/i386/isa/omms.c omms needs-flag
|
|||
device mms: wsmousedev
|
||||
attach mms at isa
|
||||
file arch/i386/isa/mms.c mms
|
||||
device opms
|
||||
attach opms at pckbcport with opms_hack
|
||||
attach opms at pckbc with opms_pckbc
|
||||
file arch/i386/isa/pms.c opms | opms_hack | opms_pckbc needs-flag
|
||||
|
||||
include "dev/wscons/files.wscons"
|
||||
include "dev/wsfont/files.wsfont"
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: conf.c,v 1.154 2002/03/16 16:55:56 martin Exp $ */
|
||||
/* $NetBSD: conf.c,v 1.155 2002/04/18 12:54:15 wiz Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1998 The NetBSD Foundation, Inc.
|
||||
|
@ -37,7 +37,7 @@
|
|||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: conf.c,v 1.154 2002/03/16 16:55:56 martin Exp $");
|
||||
__KERNEL_RCSID(0, "$NetBSD: conf.c,v 1.155 2002/04/18 12:54:15 wiz Exp $");
|
||||
|
||||
#include "opt_compat_svr4.h"
|
||||
|
||||
|
@ -153,8 +153,6 @@ cdev_decl(spkr);
|
|||
cdev_decl(mms);
|
||||
#include "olms.h"
|
||||
cdev_decl(lms);
|
||||
#include "opms.h"
|
||||
cdev_decl(pms);
|
||||
#include "cy.h"
|
||||
cdev_decl(cy);
|
||||
#include "cz.h"
|
||||
|
@ -300,7 +298,7 @@ struct cdevsw cdevsw[] =
|
|||
cdev_lkm_dummy(), /* 34 */
|
||||
cdev_mouse_init(NOMMS,mms), /* 35: Microsoft mouse */
|
||||
cdev_mouse_init(NOLMS,lms), /* 36: Logitech mouse */
|
||||
cdev_mouse_init(NOPMS,pms), /* 37: PS/2 mouse */
|
||||
cdev_notdef(), /* 37: was: opms (PS/2 mouse) */
|
||||
cdev_tty_init(NCY,cy), /* 38: Cyclom serial port */
|
||||
cdev_disk_init(NMCD,mcd), /* 39: Mitsumi CD-ROM */
|
||||
cdev_bpftun_init(NTUN,tun), /* 40: network tunnel */
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
/* $NetBSD: conf.h,v 1.9 2002/02/28 03:17:28 simonb Exp $ */
|
||||
/* $NetBSD: conf.h,v 1.10 2002/04/18 12:54:15 wiz Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1996 The NetBSD Foundation, Inc.
|
||||
|
@ -49,6 +49,4 @@ cdev_decl(mms);
|
|||
|
||||
cdev_decl(lms);
|
||||
|
||||
cdev_decl(pms);
|
||||
|
||||
cdev_decl(joy);
|
||||
|
|
|
@ -1,691 +0,0 @@
|
|||
/* $NetBSD: pms.c,v 1.49 2001/11/15 07:03:33 lukem Exp $ */
|
||||
|
||||
/*-
|
||||
* Copyright (c) 1994, 1997 Charles M. Hannum.
|
||||
* Copyright (c) 1992, 1993 Erik Forsberg.
|
||||
* All rights reserved.
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions
|
||||
* are met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
||||
* WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
|
||||
* NO EVENT SHALL I BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
/*
|
||||
* XXXX
|
||||
* This is a hack. This driver should really be combined with the
|
||||
* keyboard driver, since they go through the same buffer and use the
|
||||
* same I/O ports. Frobbing the mouse and keyboard at the same time
|
||||
* may result in dropped characters and/or corrupted mouse events.
|
||||
*/
|
||||
|
||||
#include <sys/cdefs.h>
|
||||
__KERNEL_RCSID(0, "$NetBSD: pms.c,v 1.49 2001/11/15 07:03:33 lukem Exp $");
|
||||
|
||||
#include "opms.h"
|
||||
#if (NOPMS_HACK + NOPMS_PCKBC) > 1
|
||||
#error Only one PS/2 style mouse may be configured into your system.
|
||||
#endif
|
||||
|
||||
#include <sys/param.h>
|
||||
#include <sys/kernel.h>
|
||||
#include <sys/systm.h>
|
||||
#include <sys/buf.h>
|
||||
#include <sys/malloc.h>
|
||||
#include <sys/ioctl.h>
|
||||
#include <sys/tty.h>
|
||||
#include <sys/file.h>
|
||||
#include <sys/select.h>
|
||||
#include <sys/proc.h>
|
||||
#include <sys/vnode.h>
|
||||
#include <sys/device.h>
|
||||
#include <sys/poll.h>
|
||||
|
||||
#if (NOPMS_HACK > 0)
|
||||
#include <machine/cpu.h>
|
||||
#include <machine/intr.h>
|
||||
#include <machine/pio.h>
|
||||
#endif
|
||||
#if (NOPMS_PCKBC > 0)
|
||||
#include <machine/bus.h>
|
||||
#include <dev/ic/pckbcvar.h>
|
||||
#endif
|
||||
#include <machine/mouse.h>
|
||||
#include <machine/conf.h>
|
||||
|
||||
#if (NOPMS_HACK > 0)
|
||||
|
||||
#include <dev/isa/isavar.h>
|
||||
|
||||
#define PMS_DATA 0x60 /* offset for data port, read-write */
|
||||
#define PMS_CNTRL 0x64 /* offset for control port, write-only */
|
||||
#define PMS_STATUS 0x64 /* offset for status port, read-only */
|
||||
#define PMS_NPORTS 8
|
||||
|
||||
/* status bits */
|
||||
#define PMS_OBUF_FULL 0x01
|
||||
#define PMS_IBUF_FULL 0x02
|
||||
|
||||
/* controller commands */
|
||||
#define PMS_INT_ENABLE 0x47 /* enable controller interrupts */
|
||||
#define PMS_INT_DISABLE 0x45 /* disable controller interrupts */
|
||||
#define PMS_AUX_ENABLE 0xa8 /* enable auxiliary port */
|
||||
#define PMS_AUX_DISABLE 0xa7 /* disable auxiliary port */
|
||||
#define PMS_AUX_TEST 0xa9 /* test auxiliary port */
|
||||
|
||||
#endif /* NOPMS_HACK > 0 */
|
||||
|
||||
/* mouse commands */
|
||||
#define PMS_SET_SCALE11 0xe6 /* set scaling 1:1 */
|
||||
#define PMS_SET_SCALE21 0xe7 /* set scaling 2:1 */
|
||||
#define PMS_SET_RES 0xe8 /* set resolution */
|
||||
#define PMS_GET_SCALE 0xe9 /* get scaling factor */
|
||||
#define PMS_SET_STREAM 0xea /* set streaming mode */
|
||||
#define PMS_SET_SAMPLE 0xf3 /* set sampling rate */
|
||||
#define PMS_DEV_ENABLE 0xf4 /* mouse on */
|
||||
#define PMS_DEV_DISABLE 0xf5 /* mouse off */
|
||||
#define PMS_RESET 0xff /* reset */
|
||||
|
||||
#define PMS_CHUNK 128 /* chunk size for read */
|
||||
#define PMS_BSIZE 1020 /* buffer size */
|
||||
|
||||
struct opms_softc { /* driver status information */
|
||||
struct device sc_dev;
|
||||
#if (NOPMS_HACK > 0)
|
||||
void *sc_ih;
|
||||
#endif
|
||||
#if (NOPMS_PCKBC > 0)
|
||||
pckbc_tag_t sc_kbctag;
|
||||
pckbc_slot_t sc_kbcslot;
|
||||
#endif
|
||||
|
||||
struct clist sc_q;
|
||||
struct selinfo sc_rsel;
|
||||
u_char sc_state; /* mouse driver state */
|
||||
#define PMS_OPEN 0x01 /* device is open */
|
||||
#define PMS_ASLP 0x02 /* waiting for mouse data */
|
||||
u_char sc_status; /* mouse button status */
|
||||
int sc_x, sc_y; /* accumulated motion in the X,Y axis */
|
||||
};
|
||||
|
||||
#if (NOPMS_HACK > 0)
|
||||
int opms_hack_probe __P((struct device *, struct cfdata *, void *));
|
||||
void opms_hack_attach __P((struct device *, struct device *, void *));
|
||||
int opmsintr __P((void *));
|
||||
|
||||
struct cfattach opms_hack_ca = {
|
||||
sizeof(struct opms_softc), opms_hack_probe, opms_hack_attach,
|
||||
};
|
||||
#endif
|
||||
#if (NOPMS_PCKBC > 0)
|
||||
int opms_pckbc_probe __P((struct device *, struct cfdata *, void *));
|
||||
void opms_pckbc_attach __P((struct device *, struct device *, void *));
|
||||
|
||||
struct cfattach opms_pckbc_ca = {
|
||||
sizeof(struct opms_softc), opms_pckbc_probe, opms_pckbc_attach,
|
||||
};
|
||||
#endif
|
||||
|
||||
void opmsinput __P((void *, int));
|
||||
|
||||
extern struct cfdriver opms_cd;
|
||||
|
||||
#define PMSUNIT(dev) (minor(dev))
|
||||
|
||||
#if (NOPMS_HACK > 0)
|
||||
|
||||
static __inline int pms_wait_output __P((void));
|
||||
static __inline int pms_wait_input __P((void));
|
||||
static __inline void pms_flush_input __P((void));
|
||||
static __inline void pms_dev_cmd __P((u_char));
|
||||
static __inline void pms_pit_cmd __P((u_char));
|
||||
static __inline void pms_aux_cmd __P((u_char));
|
||||
|
||||
#define PMS_DELAY \
|
||||
{ u_char x = inb(0x84); (void) x; } \
|
||||
{ u_char x = inb(0x84); (void) x; } \
|
||||
{ u_char x = inb(0x84); (void) x; } \
|
||||
{ u_char x = inb(0x84); (void) x; } \
|
||||
{ u_char x = inb(0x84); (void) x; } \
|
||||
{ u_char x = inb(0x84); (void) x; }
|
||||
|
||||
static __inline int
|
||||
pms_wait_output()
|
||||
{
|
||||
u_int i;
|
||||
|
||||
for (i = 100000; i; i--)
|
||||
if ((inb(PMS_STATUS) & PMS_IBUF_FULL) == 0) {
|
||||
PMS_DELAY;
|
||||
return (1);
|
||||
}
|
||||
return (0);
|
||||
}
|
||||
|
||||
static __inline int
|
||||
pms_wait_input()
|
||||
{
|
||||
u_int i;
|
||||
|
||||
for (i = 100000; i; i--)
|
||||
if ((inb(PMS_STATUS) & PMS_OBUF_FULL) != 0) {
|
||||
PMS_DELAY;
|
||||
return (1);
|
||||
}
|
||||
return (0);
|
||||
}
|
||||
|
||||
static __inline void
|
||||
pms_flush_input()
|
||||
{
|
||||
u_int i;
|
||||
|
||||
pms_wait_output();
|
||||
delay(10000);
|
||||
for (i = 10; i; i--) {
|
||||
if ((inb(PMS_STATUS) & PMS_OBUF_FULL) == 0)
|
||||
return;
|
||||
PMS_DELAY;
|
||||
(void) inb(PMS_DATA);
|
||||
}
|
||||
}
|
||||
|
||||
static __inline void
|
||||
pms_dev_cmd(value)
|
||||
u_char value;
|
||||
{
|
||||
int s;
|
||||
|
||||
s = spltty();
|
||||
pms_wait_output();
|
||||
outb(PMS_CNTRL, 0xd4);
|
||||
pms_wait_output();
|
||||
outb(PMS_DATA, value);
|
||||
splx(s);
|
||||
}
|
||||
|
||||
static __inline void
|
||||
pms_aux_cmd(value)
|
||||
u_char value;
|
||||
{
|
||||
int s;
|
||||
|
||||
s = spltty();
|
||||
pms_wait_output();
|
||||
outb(PMS_CNTRL, value);
|
||||
splx(s);
|
||||
}
|
||||
|
||||
static __inline void
|
||||
pms_pit_cmd(value)
|
||||
u_char value;
|
||||
{
|
||||
int s;
|
||||
|
||||
s = spltty();
|
||||
pms_wait_output();
|
||||
outb(PMS_CNTRL, 0x60);
|
||||
pms_wait_output();
|
||||
outb(PMS_DATA, value);
|
||||
splx(s);
|
||||
}
|
||||
|
||||
/*
|
||||
* XXX needs more work yet. We should have a `pckbd_attach_args' that
|
||||
* provides the parent's io port and our irq.
|
||||
*/
|
||||
int
|
||||
opms_hack_probe(parent, cf, aux)
|
||||
struct device *parent;
|
||||
struct cfdata *cf;
|
||||
void *aux;
|
||||
{
|
||||
u_char x;
|
||||
|
||||
/*
|
||||
* We only attach to the keyboard controller via
|
||||
* the console drivers. (We really wish we could be the
|
||||
* child of a real keyboard controller driver.)
|
||||
*/
|
||||
if ((parent == NULL) ||
|
||||
((strcmp(parent->dv_cfdata->cf_driver->cd_name, "pc") != 0) &&
|
||||
(strcmp(parent->dv_cfdata->cf_driver->cd_name, "vt") != 0)))
|
||||
return (0);
|
||||
|
||||
/* Can't wildcard IRQ. */
|
||||
if (cf->cf_loc[PCKBCPORTCF_IRQ] == PCKBCPORTCF_IRQ_DEFAULT)
|
||||
return (0);
|
||||
|
||||
pms_flush_input();
|
||||
#if 0
|
||||
pms_dev_cmd(PMS_RESET);
|
||||
if (!pms_wait_input())
|
||||
return 0;
|
||||
x = inb(PMS_DATA);
|
||||
#endif
|
||||
pms_aux_cmd(PMS_AUX_TEST);
|
||||
if (!pms_wait_input())
|
||||
return 0;
|
||||
x = inb(PMS_DATA);
|
||||
pms_pit_cmd(PMS_INT_DISABLE);
|
||||
if (x & 0x04)
|
||||
return 0;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
void
|
||||
opms_hack_attach(parent, self, aux)
|
||||
struct device *parent, *self;
|
||||
void *aux;
|
||||
{
|
||||
struct opms_softc *sc = (void *)self;
|
||||
int irq = self->dv_cfdata->cf_loc[PCKBCPORTCF_IRQ];
|
||||
isa_chipset_tag_t ic = aux; /* XXX */
|
||||
|
||||
printf(" irq %d\n", irq);
|
||||
|
||||
/* Other initialization was done by pmsprobe. */
|
||||
sc->sc_state = 0;
|
||||
|
||||
sc->sc_ih = isa_intr_establish(ic, irq, IST_EDGE, IPL_TTY,
|
||||
opmsintr, sc);
|
||||
}
|
||||
|
||||
#endif /* NOPMS_HACK > 0 */
|
||||
|
||||
#if (NOPMS_PCKBC > 0)
|
||||
int
|
||||
opms_pckbc_probe(parent, match, aux)
|
||||
struct device *parent;
|
||||
struct cfdata *match;
|
||||
void *aux;
|
||||
{
|
||||
struct pckbc_attach_args *pa = aux;
|
||||
u_char cmd[1], resp[2];
|
||||
int res;
|
||||
|
||||
if (pa->pa_slot != PCKBC_AUX_SLOT)
|
||||
return (0);
|
||||
|
||||
/* Flush any garbage. */
|
||||
pckbc_flush(pa->pa_tag, pa->pa_slot);
|
||||
|
||||
/* reset the device */
|
||||
cmd[0] = PMS_RESET;
|
||||
res = pckbc_poll_cmd(pa->pa_tag, pa->pa_slot, cmd, 1, 2, resp, 1);
|
||||
if (res) {
|
||||
#ifdef DEBUG
|
||||
printf("opmsprobe: reset error\n");
|
||||
#endif
|
||||
return (0);
|
||||
}
|
||||
if (resp[0] != 0xaa) {
|
||||
printf("opmsprobe: reset response 0x%x\n", resp[0]);
|
||||
return (0);
|
||||
}
|
||||
|
||||
/* get type number (0 = mouse) */
|
||||
if (resp[1] != 0) {
|
||||
#ifdef DEBUG
|
||||
printf("opmsprobe: type 0x%x\n", resp[1]);
|
||||
#endif
|
||||
return (0);
|
||||
}
|
||||
|
||||
return (1);
|
||||
}
|
||||
|
||||
void
|
||||
opms_pckbc_attach(parent, self, aux)
|
||||
struct device *parent, *self;
|
||||
void *aux;
|
||||
{
|
||||
struct opms_softc *sc = (void *)self;
|
||||
struct pckbc_attach_args *pa = aux;
|
||||
u_char cmd[1];
|
||||
int res;
|
||||
|
||||
sc->sc_kbctag = pa->pa_tag;
|
||||
sc->sc_kbcslot = pa->pa_slot;
|
||||
|
||||
printf("\n");
|
||||
|
||||
/* Other initialization was done by pmsprobe. */
|
||||
sc->sc_state = 0;
|
||||
|
||||
pckbc_set_inputhandler(sc->sc_kbctag, sc->sc_kbcslot,
|
||||
opmsinput, sc, sc->sc_dev.dv_xname);
|
||||
|
||||
/* no interrupts until enabled */
|
||||
cmd[0] = PMS_DEV_DISABLE;
|
||||
res = pckbc_poll_cmd(pa->pa_tag, pa->pa_slot, cmd, 1, 0, 0, 0);
|
||||
if (res)
|
||||
printf("opmsattach: disable error\n");
|
||||
pckbc_slot_enable(sc->sc_kbctag, sc->sc_kbcslot, 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
int
|
||||
pmsopen(dev, flag, mode, p)
|
||||
dev_t dev;
|
||||
int flag;
|
||||
int mode;
|
||||
struct proc *p;
|
||||
{
|
||||
int unit = PMSUNIT(dev);
|
||||
struct opms_softc *sc;
|
||||
#if (NOPMS_PCKBC > 0)
|
||||
u_char cmd[1];
|
||||
int res;
|
||||
#endif
|
||||
|
||||
if (unit >= opms_cd.cd_ndevs)
|
||||
return ENXIO;
|
||||
sc = opms_cd.cd_devs[unit];
|
||||
if (!sc)
|
||||
return ENXIO;
|
||||
|
||||
if (sc->sc_state & PMS_OPEN)
|
||||
return EBUSY;
|
||||
|
||||
if (clalloc(&sc->sc_q, PMS_BSIZE, 0) == -1)
|
||||
return ENOMEM;
|
||||
|
||||
sc->sc_state |= PMS_OPEN;
|
||||
sc->sc_status = 0;
|
||||
sc->sc_x = sc->sc_y = 0;
|
||||
|
||||
/* Enable interrupts. */
|
||||
#if (NOPMS_HACK > 0)
|
||||
pms_aux_cmd(PMS_AUX_ENABLE);
|
||||
pms_pit_cmd(PMS_INT_ENABLE);
|
||||
pms_dev_cmd(PMS_DEV_ENABLE);
|
||||
if (pms_wait_input())
|
||||
pms_flush_input();
|
||||
#endif
|
||||
#if (NOPMS_PCKBC > 0)
|
||||
pckbc_slot_enable(sc->sc_kbctag, sc->sc_kbcslot, 1);
|
||||
|
||||
cmd[0] = PMS_DEV_ENABLE;
|
||||
res = pckbc_enqueue_cmd(sc->sc_kbctag, sc->sc_kbcslot,
|
||||
cmd, 1, 0, 1, 0);
|
||||
if (res) {
|
||||
printf("opms_enable: command error\n");
|
||||
return (res);
|
||||
}
|
||||
#endif
|
||||
|
||||
#if 0
|
||||
pms_dev_cmd(PMS_SET_RES);
|
||||
pms_dev_cmd(3); /* 8 counts/mm */
|
||||
pms_dev_cmd(PMS_SET_SCALE21);
|
||||
pms_dev_cmd(PMS_SET_SAMPLE);
|
||||
pms_dev_cmd(100); /* 100 samples/sec */
|
||||
pms_dev_cmd(PMS_SET_STREAM);
|
||||
#endif
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
pmsclose(dev, flag, mode, p)
|
||||
dev_t dev;
|
||||
int flag;
|
||||
int mode;
|
||||
struct proc *p;
|
||||
{
|
||||
struct opms_softc *sc = opms_cd.cd_devs[PMSUNIT(dev)];
|
||||
#if (NOPMS_PCKBC > 0)
|
||||
u_char cmd[1];
|
||||
int res;
|
||||
#endif
|
||||
|
||||
/* Disable interrupts. */
|
||||
#if (NOPMS_HACK > 0)
|
||||
pms_dev_cmd(PMS_DEV_DISABLE);
|
||||
if (pms_wait_input())
|
||||
pms_flush_input();
|
||||
pms_pit_cmd(PMS_INT_DISABLE);
|
||||
pms_aux_cmd(PMS_AUX_DISABLE);
|
||||
#endif
|
||||
#if (NOPMS_PCKBC > 0)
|
||||
cmd[0] = PMS_DEV_DISABLE;
|
||||
res = pckbc_enqueue_cmd(sc->sc_kbctag, sc->sc_kbcslot,
|
||||
cmd, 1, 0, 1, 0);
|
||||
if (res)
|
||||
printf("opms_disable: command error\n");
|
||||
|
||||
pckbc_slot_enable(sc->sc_kbctag, sc->sc_kbcslot, 0);
|
||||
#endif
|
||||
|
||||
sc->sc_state &= ~PMS_OPEN;
|
||||
|
||||
clfree(&sc->sc_q);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
pmsread(dev, uio, flag)
|
||||
dev_t dev;
|
||||
struct uio *uio;
|
||||
int flag;
|
||||
{
|
||||
struct opms_softc *sc = opms_cd.cd_devs[PMSUNIT(dev)];
|
||||
int s;
|
||||
int error = 0;
|
||||
size_t length;
|
||||
u_char buffer[PMS_CHUNK];
|
||||
|
||||
/* Block until mouse activity occurred. */
|
||||
|
||||
s = spltty();
|
||||
while (sc->sc_q.c_cc == 0) {
|
||||
if (flag & IO_NDELAY) {
|
||||
splx(s);
|
||||
return EWOULDBLOCK;
|
||||
}
|
||||
sc->sc_state |= PMS_ASLP;
|
||||
error = tsleep((caddr_t)sc, PZERO | PCATCH, "pmsrea", 0);
|
||||
if (error) {
|
||||
sc->sc_state &= ~PMS_ASLP;
|
||||
splx(s);
|
||||
return error;
|
||||
}
|
||||
}
|
||||
splx(s);
|
||||
|
||||
/* Transfer as many chunks as possible. */
|
||||
|
||||
while (sc->sc_q.c_cc > 0 && uio->uio_resid > 0) {
|
||||
length = min(sc->sc_q.c_cc, uio->uio_resid);
|
||||
if (length > sizeof(buffer))
|
||||
length = sizeof(buffer);
|
||||
|
||||
/* Remove a small chunk from the input queue. */
|
||||
(void) q_to_b(&sc->sc_q, buffer, length);
|
||||
|
||||
/* Copy the data to the user process. */
|
||||
if ((error = uiomove(buffer, length, uio)) != 0)
|
||||
break;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int
|
||||
pmsioctl(dev, cmd, addr, flag, p)
|
||||
dev_t dev;
|
||||
u_long cmd;
|
||||
caddr_t addr;
|
||||
int flag;
|
||||
struct proc *p;
|
||||
{
|
||||
struct opms_softc *sc = opms_cd.cd_devs[PMSUNIT(dev)];
|
||||
struct mouseinfo info;
|
||||
int s;
|
||||
int error;
|
||||
|
||||
switch (cmd) {
|
||||
case MOUSEIOCREAD:
|
||||
s = spltty();
|
||||
|
||||
info.status = sc->sc_status;
|
||||
if (sc->sc_x || sc->sc_y)
|
||||
info.status |= MOVEMENT;
|
||||
|
||||
if (sc->sc_x > 127)
|
||||
info.xmotion = 127;
|
||||
else if (sc->sc_x < -127)
|
||||
/* Bounding at -127 avoids a bug in XFree86. */
|
||||
info.xmotion = -127;
|
||||
else
|
||||
info.xmotion = sc->sc_x;
|
||||
|
||||
if (sc->sc_y > 127)
|
||||
info.ymotion = 127;
|
||||
else if (sc->sc_y < -127)
|
||||
info.ymotion = -127;
|
||||
else
|
||||
info.ymotion = sc->sc_y;
|
||||
|
||||
/* Reset historical information. */
|
||||
sc->sc_x = sc->sc_y = 0;
|
||||
sc->sc_status &= ~BUTCHNGMASK;
|
||||
ndflush(&sc->sc_q, sc->sc_q.c_cc);
|
||||
|
||||
splx(s);
|
||||
error = copyout(&info, addr, sizeof(struct mouseinfo));
|
||||
break;
|
||||
|
||||
default:
|
||||
error = EINVAL;
|
||||
break;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
/* Masks for the first byte of a packet */
|
||||
#define PS2LBUTMASK 0x01
|
||||
#define PS2RBUTMASK 0x02
|
||||
#define PS2MBUTMASK 0x04
|
||||
|
||||
void
|
||||
opmsinput(arg, data)
|
||||
void *arg;
|
||||
int data;
|
||||
{
|
||||
struct opms_softc *sc = arg;
|
||||
static int state = 0;
|
||||
static u_char buttons;
|
||||
u_char changed;
|
||||
static char dx, dy;
|
||||
u_char buffer[5];
|
||||
|
||||
if ((sc->sc_state & PMS_OPEN) == 0) {
|
||||
/* Interrupts are not expected. Discard the byte. */
|
||||
return;
|
||||
}
|
||||
|
||||
switch (state) {
|
||||
|
||||
case 0:
|
||||
buttons = data;
|
||||
if ((buttons & 0xc0) == 0)
|
||||
++state;
|
||||
break;
|
||||
|
||||
case 1:
|
||||
dx = data;
|
||||
/* Bounding at -127 avoids a bug in XFree86. */
|
||||
dx = (dx == -128) ? -127 : dx;
|
||||
++state;
|
||||
break;
|
||||
|
||||
case 2:
|
||||
dy = data;
|
||||
dy = (dy == -128) ? -127 : dy;
|
||||
state = 0;
|
||||
|
||||
buttons = ((buttons & PS2LBUTMASK) << 2) |
|
||||
((buttons & (PS2RBUTMASK | PS2MBUTMASK)) >> 1);
|
||||
changed = ((buttons ^ sc->sc_status) & BUTSTATMASK) << 3;
|
||||
sc->sc_status = buttons | (sc->sc_status & ~BUTSTATMASK) | changed;
|
||||
|
||||
if (dx || dy || changed) {
|
||||
/* Update accumulated movements. */
|
||||
sc->sc_x += dx;
|
||||
sc->sc_y += dy;
|
||||
|
||||
/* Add this event to the queue. */
|
||||
buffer[0] = 0x80 | (buttons ^ BUTSTATMASK);
|
||||
buffer[1] = dx;
|
||||
buffer[2] = dy;
|
||||
buffer[3] = buffer[4] = 0;
|
||||
(void) b_to_q(buffer, sizeof buffer, &sc->sc_q);
|
||||
|
||||
if (sc->sc_state & PMS_ASLP) {
|
||||
sc->sc_state &= ~PMS_ASLP;
|
||||
wakeup((caddr_t)sc);
|
||||
}
|
||||
selwakeup(&sc->sc_rsel);
|
||||
}
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
#if (NOPMS_HACK > 0)
|
||||
int
|
||||
opmsintr(arg)
|
||||
void *arg;
|
||||
{
|
||||
struct opms_softc *sc = arg;
|
||||
int data;
|
||||
|
||||
if ((sc->sc_state & PMS_OPEN) == 0) {
|
||||
/* Interrupts are not expected. Discard the byte. */
|
||||
pms_flush_input();
|
||||
return (0);
|
||||
}
|
||||
|
||||
data = inb(PMS_DATA);
|
||||
opmsinput(arg, data);
|
||||
return (-1);
|
||||
}
|
||||
#endif
|
||||
|
||||
int
|
||||
pmspoll(dev, events, p)
|
||||
dev_t dev;
|
||||
int events;
|
||||
struct proc *p;
|
||||
{
|
||||
struct opms_softc *sc = opms_cd.cd_devs[PMSUNIT(dev)];
|
||||
int revents = 0;
|
||||
int s = spltty();
|
||||
|
||||
if (events & (POLLIN | POLLRDNORM)) {
|
||||
if (sc->sc_q.c_cc > 0)
|
||||
revents |= events & (POLLIN | POLLRDNORM);
|
||||
else
|
||||
selrecord(p, &sc->sc_rsel);
|
||||
}
|
||||
|
||||
splx(s);
|
||||
return (revents);
|
||||
}
|
Loading…
Reference in New Issue