summaryrefslogtreecommitdiffstats
path: root/sys/dev/vkbd/vkbd.c
Commit message (Collapse)AuthorAgeFilesLines
* Remove unit2minor() use from kernel code.ed2008-09-261-1/+1
| | | | | | | | | | | | | | | When I changed kern_conf.c three months ago I made device unit numbers equal to (unneeded) device minor numbers. We used to require bitshifting, because there were eight bits in the middle that were reserved for a device major number. Not very long after I turned dev2unit(), minor(), unit2minor() and minor2unit() into macro's. The unit2minor() and minor2unit() macro's were no-ops. We'd better not remove these four macro's from the kernel, because there is a lot of (external) code that may still depend on them. For now it's harmless to remove all invocations of unit2minor() and minor2unit(). Reviewed by: kib
* Don't enforce unique device minor number policy anymore.ed2008-06-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Except for the case where we use the cloner library (clone_create() and friends), there is no reason to enforce a unique device minor number policy. There are various drivers in the source tree that allocate unr pools and such to provide minor numbers, without using them themselves. Because we still need to support unique device minor numbers for the cloner library, introduce a new flag called D_NEEDMINOR. All cdevsw's that are used in combination with the cloner library should be marked with this flag to make the cloning work. This means drivers can now freely use si_drv0 to store their own flags and state, making it effectively the same as si_drv1 and si_drv2. We still keep the minor() and dev2unit() routines around to make drivers happy. The NTFS code also used the minor number in its hash table. We should not do this anymore. If the si_drv0 field would be changed, it would no longer end up in the same list. Approved by: philip (mentor)
* Remove explicit calls to keyboard methods with their respective variantswkoszek2007-12-291-5/+4
| | | | | | | | | | | | | | | implemented with macros. This patch improves code readability. Reasoning behind kbdd_* is a "keyboard discipline". List of macros is supposed to be complete--all methods of keyboard_switch should have their respective macros from now on. Functionally, this code should be no-op. My intention is to leave current behaviour of code as is. Glanced at by: rwatson Reviewed by: emax, marcel Approved by: cognet
* Fix our ioctl(2) implementation when the argument is "int". Newru2006-09-271-0/+28
| | | | | | | | | | | | | ioctls passing integer arguments should use the _IOWINT() macro. This fixes a lot of ioctl's not working on sparc64, most notable being keyboard/syscons ioctls. Full ABI compatibility is provided, with the bonus of fixing the handling of old ioctls on sparc64. Reviewed by: bde (with contributions) Tested by: emax, marius MFC after: 1 week
* Disable custom locking in the vkbd(4) for now and make it rely on theemax2006-02-271-2/+20
| | | | | | | Giant mutex (just like the rest of keyboard drivers and syscons(4) do). Tested by: markus MFC after: 1 day
* Merge the dev_clone and dev_clone_cred event handlers into a singlerwatson2005-08-081-2/+4
| | | | | | | | | | | | | event handler, dev_clone, which accepts a credential argument. Implementors of the event can ignore it if they're not interested, and most do. This avoids having multiple event handler types and fall-back/precedence logic in devfs. This changes the kernel API for /dev cloning, and may affect third party packages containg cloning kernel modules. Requested by: phk MFC after: 3 days
* Fix kernel panic with vkbd(4). Initialize mutex properly (set name), or elseemax2005-07-211-1/+1
| | | | | | WITNESS gets upset. MFC after: 3 days
* Fix yet another cut-and-paste bug.emax2005-05-201-1/+1
| | | | kbd was allocated from M_VKBD not from M_DEVBUF
* Dont clear all flags in vkbd_clear_state_locked(). Clear only COMPOSE flag.emax2005-05-161-1/+1
| | | | MFC after: 3 days
* Explicitly hold a reference to the cdev we have just cloned. Thisphk2005-03-311-1/+3
| | | | | closes the race where the cdev was reclaimed before it ever made it back to devfs lookup.
* plug memory leaksam2005-02-251-13/+25
| | | | | Noticed by: Coverity Prevent analysis tool Reviewed by: emax
* Start each of the license/copyright comments with /*-, minor shuffle of linesimp2005-01-061-1/+1
|
* Include fcntl.hphk2004-12-221-3/+4
| | | | | | Check O_NONBLOCK instead of IO_NDELAY. Include selinfo.h instead of relying on vnode.h to do so. Don't include vnode.h
* Add virtual AT keyboard driver vkbd(4).emax2004-11-161-0/+1321
Not yet connected to the build.
OpenPOWER on IntegriCloud