Commit Graph

65 Commits

Author SHA1 Message Date
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
atatat
31144d9976 Convert ioctl code to use EPASSTHROUGH instead of -1 or ENOTTY for
indicating an unhandled "command".  ERESTART is -1, which can lead to
confusion.  ERESTART has been moved to -3 and EPASSTHROUGH has been
placed at -4.  No ioctl code should now return -1 anywhere.  The
ioctl() system call is now properly restartable.
2002-03-17 19:40:26 +00:00
tsutsui
c12b5c180d Call malloc(9) with M_ZERO flag instead of memset() after malloc(). 2002-01-12 16:41:02 +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
augustss
48ea68d3d9 Make wsdisplay_set_console_kbd() a little less twisted. 2001-11-10 17:14:51 +00:00
augustss
4cfba4290a Ad a debug message. (With { } this time.) 2001-11-07 13:36:43 +00:00
augustss
546b6e4434 Cosmetics. 2001-10-27 13:52:57 +00:00
augustss
14fc12f3b4 Cosmetics. 2001-10-27 00:39:29 +00:00
augustss
b609967aa7 Don't enable/disable kbds that belong to a display; they are always enabled. 2001-10-27 00:35:48 +00:00
augustss
49c2ea7a87 Compare against coreect value to determine if we belong to a mux. 2001-10-26 20:48:47 +00:00
augustss
a5d3f7530d Small rearrangement and more error checking. 2001-10-26 20:36:27 +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
9e06709975 Clear wskbd_console_device when console keyboard is detached. 2001-10-24 15:44:50 +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
ad74203973 Fix a pasto. 2001-10-13 19:58:35 +00:00
augustss
04b1440239 Use memset(), not bzero(). 2001-10-13 15:59:01 +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
matthias
da7395fac9 wskbd_rawinput: check sc->sc_displaydv before calling wsdisplay_kbdinput. 2001-09-26 15:13:23 +00:00
jdolecek
57a49a2de0 introduce hard limit on maximum font size (WSDISPLAY_MAXFONTSZ - 512KB)
and keymap size (WSKBDIO_MAXMAPLEN - 64KB)
2001-08-05 11:26:52 +00:00
lukem
d84d2c6c85 add missing #include "opt_kgdb.h" 2001-05-30 15:24:23 +00:00
lukem
b240b7a4e1 #ifdef KGDB, call kgdb_connect(1) if KS_Cmd_Debugger (a la ddb invoking
console_debugger() in the same situation).
this makes it easier to get remote kgdb going if you forget to use boot -d.
2001-03-23 04:22:36 +00:00
takemura
dcfcbaf8ae - Add ioctl commands to wsdisplay which set/get some LCD status,
backlight, brightness and contrast.
- Add 9 command key symbols which make wskbd to call wsdisplay's
  iocontrol.
- Add special key map variant KB_MACHDEP. This variant does not
  have any real keymap but it's just a placeholder for machine dependent
  maps which will be overwrite by machine dependent keyboard driver.
2000-10-01 03:29:12 +00:00
thorpej
fc96443d15 New callout mechanism with two major improvements over the old
timeout()/untimeout() API:
- Clients supply callout handle storage, thus eliminating problems of
  resource allocation.
- Insertion and removal of callouts is constant time, important as
  this facility is used quite a lot in the kernel.

The old timeout()/untimeout() API has been removed from the kernel.
2000-03-23 07:01:25 +00:00
thorpej
da4dc67d3e Add cnbell() support. 2000-03-06 21:37:16 +00:00
drochner
dadc2bc21d pass raw keyboard data unsigned to avoid sign extension 2000-01-22 15:09:00 +00:00
drochner
b32647d4ea replace embedded _rcsid[] string by __KERNEL_RCSID(), remove _copyright[] 2000-01-05 11:19:36 +00:00
drochner
caaf1beab2 change decoding function to return multiple symbols per keypress
(through the "internal" structure), derive a METAESC flag from the
layout variant and translate ALT-<key> into ESC <key> if the flag is set
1999-12-21 12:02:04 +00:00
augustss
02faf8d588 Done something half sensible if a USB console keyboard is unplugged instead
of panic()ing.
XXX Untested.  I will test it the next time I can borrow an iMac.
1999-12-01 23:22:57 +00:00
augustss
a9aba751e7 Make it compile even if there is no wsdisplay. 1999-12-01 11:41:46 +00:00
mycroft
0c1542d9a4 Apply wrstuden's stopgap change to make alpha/macppc X work without wsmux. 1999-11-08 04:48:18 +00:00
augustss
f7c5edea20 Mention mux # when ignoring it for the console. 1999-08-16 23:22:22 +00:00
augustss
cdfc12a291 Make it possible to open wskbd devices for write (i.e. ioctl) even
if it is already open.
1999-08-07 15:04:35 +00:00
augustss
b6b44d6809 Eliminate the need for needs-count for wsmux. This should make
wsdisplays work properly again.
1999-07-30 20:52:27 +00:00
augustss
3d3f77c49e Add the wsmux pseudo device. 1999-07-29 18:20:02 +00:00
augustss
7875415701 Add the detach and activate entry points to the cfattach struct. 1999-07-06 07:42:23 +00:00
drochner
f3a6841709 make it compile if WSDISPLAY_COMPAT_RAWKBD is defined, but NWSDISPLAY not,
reported by Kazushi Marukawa <jam@pobox.com>
1999-07-01 11:18:20 +00:00
augustss
dd048d428b Make it possible to detach wsmouse and wskbd.
XXX wskbd probably needs some more work.
1999-06-30 06:21:21 +00:00
thorpej
8745214a3c Make this build without wsdisplay. 1999-05-16 19:21:31 +00:00
drochner
b7a56e27df Get rid of the timeout-driven wscons_glue stuff which caused a lot of
headaches.
Now console keyboard and display are connected at autoconfiguration time,
when the last of them is found. Other keyboards / displays remain
unconnected until a new ioctl (WSDISPLAYIO_SETKEYBOARD) is called.
1999-05-15 14:22:46 +00:00
drochner
10584c9e73 Sort out the inclusion of wscons source files: the files are only
compiled if the corresponding devices are configured.
(Files calling wscons functions have to check whether these are present.)
1999-05-14 16:01:11 +00:00
drochner
1663f7072b remove a diagnostic panic in the keyboard autorepeat timeout() handler.
There is a rece condition which might trigger this but is harmless
otherwise. Leave the handler silently instead.
1999-03-27 11:22:23 +00:00
drochner
a7f50b8178 Debugger() -> console_debugger() to honour the ddb_fromconsole sysctl 1999-01-26 17:08:37 +00:00
drochner
3bc0bad0af adapt to "reset" interface change, pass "close all" to wsdisplay 1999-01-17 15:59:17 +00:00
drochner
d90442b612 add a "reset terminal emulator" command pseudo-keysym and call the
corresponding callback if one is hit
1999-01-14 11:44:54 +00:00
augustss
c437dc4229 Remove redundant test if the unit numbers is in range. 1999-01-10 18:22:14 +00:00