Commit Graph

62 Commits

Author SHA1 Message Date
yamt
0915dface4 - reduce the number of #ifdefs.
- build compat glues if MODULAR.
2009-01-15 04:22:11 +00:00
christos
8945a0f495 provide wscons_event compatibility with 5.0. 2009-01-13 18:05:55 +00:00
cegger
ee1dc8ea5f use device_lookup_private to get softc
use device_lookup to get device_t
2008-06-12 23:04:37 +00:00
ad
1498ad220e Make various bits of debug code compile again. 2008-04-30 14:07:13 +00:00
martin
ce099b4099 Remove clause 3 and 4 from TNF licenses 2008-04-28 20:22:51 +00:00
cegger
3069a1f144 use aprint_*_dev and device_xname 2008-04-05 15:50:49 +00:00
cube
d94699ecbb Split device_t and softc for wskbd(4), wsmouse(4) and that creepy wsmux(4). 2008-03-25 00:49:19 +00:00
jmcneill
4c1d81b2b5 Merge jmcneill-pm branch. 2007-12-09 20:27:42 +00:00
jmcneill
4fbe23fdd0 aprintify 2007-12-01 04:50:50 +00:00
joerg
55e50c10e7 Use callout_setfunc/callout_schedule instead of callout_reset.
Use mstohz for the calculations.
2007-10-16 21:06:09 +00:00
ad
88ab7da936 Merge some of the less invasive changes from the vmlocking branch:
- kthread, callout, devsw API changes
- select()/poll() improvements
- miscellaneous MT safety improvements
2007-07-09 20:51:58 +00:00
christos
53524e44ef Kill caddr_t; there will be some MI fallout, but it will be fixed shortly. 2007-03-04 05:59:00 +00:00
christos
168cd830d2 __unused removal on arguments; approved by core. 2006-11-16 01:32:37 +00:00
plunky
57c0199dcf Tidy away wsmouse_input() abstractions and update
documentation to include the W direction.
2006-11-12 19:00:42 +00:00
christos
4d595fd7b1 - sprinkle __unused on function decls.
- fix a couple of unused bugs
- no more -Wno-unused for i386
2006-10-12 01:30:41 +00:00
christos
a0917ad69e fix incomplete initializers 2006-08-28 21:33:16 +00:00
elad
2867b68bc3 integrate kauth. 2006-05-14 21:42:26 +00:00
thorpej
2be6494fc9 Use device_cfdata(). 2006-03-29 04:16:44 +00:00
thorpej
39cd836ee1 Use device_unit(). 2006-03-28 17:38:24 +00:00
jmmv
05e04b5edf Add missing closing parenthesis to a diagnostic message. 2006-03-05 16:04:37 +00:00
christos
2038078d40 fix compilation problems. 2006-02-10 20:38:54 +00:00
christos
0fa6ea2f2c PR/32794: Paul Shupak: Panic in wsmouse code.
Checking the number of events after you've trashed the stack is not very
useful. Instead, break out of the loop if we ran out, printing a message.
Also don't try to inject 0 events; reset our state instead. Maybe having
0 events should be a diagnostic printf at this point? Anyway it is not
nice having the kernel die because the mouse code got confused. Finally,
explain why the array of events is sized funny.
2006-02-10 17:33:01 +00:00
jmmv
ddaa1b349e wsevent cleanup:
- Add a wsevent_inject function that atomically adds a set of events to an
  event queue and change all code that directly messed with a queue to use it.
- Replace the WSEVENT_WAKEUP macro with a regular function.
- Make WSEVENT_QSIZE, PWSEVENT and splwsevent private definitions to
  wsevent.c, instead of exposing them in the header file.
- Make the wsevent_init function take a process to attach to the queue,
  instead of leaving this task to the caller (which always did it).

Reviewed in tech-kern@.
2006-02-07 09:13:02 +00:00
jmmv
8b589aee17 Add support to automatically repeat mouse button events in wsmouse(4) and
change wsconsctl(4) so that this is configurable.

This is specially useful for mice that provide page up/down buttons instead
of a real wheel and that do not send events repeatedly from the hardware.
(E.g.: Logitech Marble Mouse.)

No objections in tech-kern@.
2006-02-05 17:38:33 +00:00
christos
95e1ffb156 merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
augustss
5b71c2bf99 Some devices provide more than three (X, Y, and Z) "directions". So add
a W "coordinate" that can be used for these.
This changes the type of wsmouse_input().  To avoid changing a lot of drivers
a compatibilty #define is provided.  Maybe changing all drivers would have
been better?
2005-11-23 09:38:02 +00:00
ws
9d78e0cf36 PR-30566: Poll must not return <sys/errno.h> values.
Start with those places I can easily test.
2005-06-21 14:01:11 +00:00
perry
f31bd063e9 nuke trailing whitespace 2005-02-27 00:26:58 +00:00
drochner
4d60676c44 -remove a check of errno against -1, this is nonsense since
we have EPASSTHROUGH
-remove a superflous #if NWSMOUSE
2003-11-28 13:19:46 +00:00
jdolecek
7cea8a1389 cleanup & uniform descriptor owner handling:
* introduce fsetown(), fgetown(), fownsignal() - this sets/retrieves/signals
  the owner of descriptor, according to appropriate sematics
  of TIOCSPGRP/FIOSETOWN/SIOCSPGRP/TIOCGPGRP/FIOGETOWN/SIOCGPGRP ioctl; use
  these routines instead of custom code where appropriate
* make every place handling TIOCSPGRP/TIOCGPGRP handle also FIOSETOWN/FIOGETOWN
  properly, and remove the translation of FIO[SG]OWN to TIOC[SG]PGRP
  in sys_ioctl() & sys_fcntl()
* also remove the socket-specific hack in sys_ioctl()/sys_fcntl() and
  pass the ioctls down to soo_ioctl() as any other ioctl

change discussed on tech-kern@
2003-09-21 19:16:48 +00:00
agc
aad01611e7 Move UCB-licensed code from 4-clause to 3-clause licence.
Patches provided by Joel Baker in PR 22364, verified by myself.
2003-08-07 16:26:28 +00:00
fvdl
d5aece61d6 Back out the lwp/ktrace changes. They contained a lot of colateral damage,
and need to be examined and discussed more.
2003-06-29 22:28:00 +00:00
darrenr
960df3c8d1 Pass lwp pointers throughtout the kernel, as required, so that the lwpid can
be inserted into ktrace records.  The general change has been to replace
"struct proc *" with "struct lwp *" in various function prototypes, pass
the lwp through and use l_proc to get the process pointer when needed.

Bump the kernel rev up to 1.6V
2003-06-28 14:20:43 +00:00
thorpej
72a7af27b0 Use aprint_normal() in cfprint routines. 2003-01-01 00:10:15 +00:00
jdolecek
e0cc03a09b merge kqueue branch into -current
kqueue provides a stateful and efficient event notification framework
currently supported events include socket, file, directory, fifo,
pipe, tty and device changes, and monitoring of processes and signals

kqueue is supported by all writable filesystems in NetBSD tree
(with exception of Coda) and all device drivers supporting poll(2)

based on work done by Jonathan Lemon for FreeBSD
initial NetBSD port done by Luke Mewburn and Jason Thorpe
2002-10-23 09:10:23 +00:00
thorpej
b75a007d9f Add trailing ; to CFATTACH_DECL. 2002-10-02 16:51:16 +00:00
thorpej
90c48d2563 Use CFATTACH_DECL(). 2002-10-01 01:25:25 +00:00
thorpej
bf97c13c6c Declare all cfattach structures const. 2002-09-27 20:41:46 +00:00
gehenna
77a6b82b27 Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.
2002-09-06 13:18:43 +00:00
drochner
3db12b1095 Don't detach the mouse from the mux just because the mouse device is
opened. Too annoying and unnecessary.
2002-06-06 09:16:12 +00:00
augustss
b5e0d97bf7 Add some DIAGNOSTIC tests. 2001-11-22 00:57:14 +00:00
lukem
139747fb15 add/cleanup RCSIDs 2001-11-13 06:17:46 +00:00
enami
58a47f4ae2 Have necessary braces. 2001-11-07 12:57:33 +00:00
augustss
d1ff85c9aa Improve debug messages a little. 2001-11-02 13:02:20 +00:00
augustss
59121d58f5 Change back to have a wseventvar in the softc for event sources. This
way the effect of FIOASYNC survives close()/open().  Later versions
of XFree86 relies on this bug/feature.
Also add some more debug stuff.
2001-10-25 14:46:41 +00:00
augustss
2f1f0a1702 Major rototilling of the wsmux code. No user visible changes (except that
many bugs have been fixed).
Changes:
The wskbd, wsmouse, and wsmux are now "sub-classes" of wsevsrc, which is
a source of ws events.  This make the structure of those drivers a little
more uniform.
Many bug fixes involving adding and removing devices from muxes.
When a kernel is configured without wsmux there will now be none (unlike
before where you got a console mux anyway).
The kernel now compiles with all combinations of ws devices present.
2001-10-24 14:07:31 +00:00
augustss
2efffa7ad7 Fix a (very old) pasto. 2001-10-13 19:56:09 +00:00
augustss
82e5e6ab85 ANSIfy. 2001-10-13 15:56:15 +00:00
augustss
d701e45c14 Two changes to the wsmux code:
* Allow the wsmux used by wsdisplay for the keyboard(s) to be explicitely
  specified with the kbdmux locator.
* Allow keyboards and mice that have a mux to be opened in the regular way.
These changes should be totally backwards compatible.
2001-10-13 13:35:59 +00:00
bjh21
3cbd9caea7 Fix an uninitialised variable which could have caused corruption of the user
button state (and hence spurious mouse clicks) if the event queue filled
up.
2001-02-13 01:14:45 +00:00