summaryrefslogtreecommitdiffstats
path: root/sys/dev/atkbdc
Commit message (Collapse)AuthorAgeFilesLines
* Add the device resume method to keyboard drivers.yokota2001-06-302-0/+28
| | | | MFC after: 4 weeks
* Hints overhaul:peter2001-06-122-20/+16
| | | | | | | | | - Replace some very poorly thought out API hacks that should have been fixed a long while ago. - Provide some much more flexible search functions (resource_find_*()) - Use strings for storage instead of an outgrowth of the rather inconvenient temporary ioconf table from config(). We already had a fallback to using strings before malloc/vm was running anyway.
* Send the remains (such as I have located) of "block major numbers" tophk2001-03-261-1/+0
| | | | the bit-bucket.
* Free the kbd pointer when it isn't NULL, as opposed to when it is.dwmalone2001-01-221-1/+1
| | | | | | This was a typo in the M_ZERO patches. Submitted by: Mike Silbersack <silby@silby.com>
* select() DKI is now in <sys/selinfo.h>.wollman2001-01-091-1/+1
|
* Convert more malloc+bzero to malloc+M_ZERO.dwmalone2000-12-084-15/+11
| | | | | Submitted by: josh@zipperup.org Submitted by: Robert Drehmel <robd@gmx.net>
* Staticize some malloc M_ instances.phk2000-12-082-2/+2
|
* - Add a hack for "psmintr: out of sync.." This is NOT a fix,yokota2000-12-011-0/+11
| | | | | | | | | | | but a hack! Add `flags 0x8000' to the psm driver to enable it. The psm driver will try to get out of out-of-sync situation by disabling the mouse and immediately enable it again. If you are seeing this out-of-sync problem because of an incompetent(?!) KVM switch, this hack will NOT be good for you. However, if you are occasionally seeing the problem because of lost mouse interrupt, this might help.
* - Slightly rearrnage IntelliMouse Explorer and Logitechyokota2000-12-011-30/+39
| | | | | MouseMan+ identification routines for efficiency. No functional change.
* Remove unneeded #include <machine/clock.h>phk2000-10-153-3/+0
|
* Untangle some resource matching loops that were getting on my nervespeter2000-10-152-16/+14
| | | | and seemed to be getting cut/pasted to places they shouldn't be.
* Initiate deorbit burn sequence for <machine/mouse.h>.phk2000-10-091-1/+1
| | | | | | | | | | Replace all in-tree uses with <sys/mouse.h> which repo-copied a few moments ago from src/sys/i386/include/mouse.h by peter. This is also the appropriate fix for exo-tree sources. Put warnings in <machine/mouse.h> to discourage use. November 15th 2000 the warnings will be converted to errors. January 15th 2001 the <machine/mouse.h> files will be removed.
* Initiate deorbit burn sequence for <machine/console.h>.phk2000-10-081-1/+1
| | | | | | | | | Replace all in-tree uses with necessary subset of <sys/{fb,kb,cons}io.h>. This is also the appropriate fix for exo-tree sources. Put warnings in <machine/console.h> to discourage use. November 15th 2000 the warnings will be converted to errors. January 15th 2001 the <machine/console.h> files will be removed.
* Fix several 64-bit-ism warnings due to sizeof(int) != sizeof(void *) onjhb2000-09-221-6/+6
| | | | the alpha.
* * Completely rewrite the alpha busspace to hide the implementation fromdfr2000-08-281-1/+1
| | | | | | | | | | | | the drivers. * Remove legacy inx/outx support from chipset and replace with macros which call busspace. * Rework pci config accesses to route through the pcib device instead of calling a MD function directly. With these changes it is possible to cleanly support machines which have more than one independantly numbered PCI busses. As a bonus, the new busspace implementation should be measurably faster than the old one.
* Add spltty()/splx() in the watchdog timer routine.yokota2000-08-241-0/+3
|
* Fix GENERIC_MOUSE_ENTRY.yokota2000-07-281-1/+1
| | | | Submitted by: Graham Wheeler <gram@cequrux.com> and gibbs
* This is yet another attempt to fix "psmintr out of sync.." problems.yokota2000-07-221-13/+9
| | | | | | - Properly protect the watchdog timer routine. - Relocate the sync check statement so that we don't see too many error messages.
* Manipulate with AltGR Led (really CapsLock Led) only in K_XLATE mode, becauseache2000-05-281-1/+2
| | | | | | | | | all other modes not set ALKED flag and it means that CapsLock always turned off for them. Real bug example is X11 which never turn on CapsLock with Russian keyboard. PR: 18651 Submitted by: "Mike E. Matsnev" <mike@po.cs.msu.su>
* Fixed the type of some ivar access functions. Ivars have type uintptr_t,bde2000-04-302-8/+8
| | | | | | | not u_long. On i386's with 64-bit longs, returning u_longs indirectly in (more than) the space reserved for uintptr_t's tended to corrupt the previous frame pointer in the stack frame, so it was not easy to debug. The type mismatches are hidden by the bogus cast in DEVMETHOD().
* Remove ~25 unneeded #include <sys/conf.h>phk2000-04-191-1/+0
| | | | Remove ~60 unneeded #include <sys/malloc.h>
* - Add temporary workaround to fool some "clever" KVM switch productsyokota2000-04-021-5/+22
| | | | | | which think they know the IntelliMouse 4-byte packet and believe, wrongly, that any other protocols use 3-byte packets. - Update a couple of comment lines for A4 Tech mice.
* Missing pieces of the last commit ;-(yokota2000-03-192-22/+64
|
* - Properly keep track of I/O port resources.yokota2000-03-198-174/+278
| | | | - Use bus_space_read/write() to access the ports.
* - Add Support for the following PS/2 mice:yokota2000-03-182-87/+398
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Microsoft IntelliMouse Explorer: 2 buttons on top, 2 side buttons and a wheel which also acts as the middle button. The mouse is recognized as "IntelliMouse Explorer". - Genius NetScroll Optical: 2 buttons on top, 2 side buttons and a wheel which also acts as the middle button. The mouse is recognized as "NetMouse/NetScroll Optical". - MouseSystems SmartScroll Mouse (OEM from Genius?): 3 buttons on top, 1 side button and a wheel. The mouse is recognized as Genius "NetScroll". - IBM ScrollPoint: 2 buttons on top and a stick between the buttons. The stick can perform "horizontal scroll" in W*ndows environment. The horizontal movement of the stick is detected. It is currently mapped to the Z axis movement in the same way as the first wheel. The mouse is recognized as "MouseMan+", as it is considered to be a variation of MouseMan. - A4 Tech 4D and 4D+ mice. These mice have two wheels! The movement of the second wheel is reported as the Z axis movement in the same way as the first wheel. These mice are recognized as "4D Mouse" and "4D+ Mouse". - Tweak IntelliMouse support code a bit so that less-than-compatible wheel mice can work properly with the psm driver. - Add driver configuration flags which correspond to the kernel options PSM_HOOKRESUME and PSM_RESETAFTERSUSPEND, so that we don't need to recompile the kernel when we need these functions. - Properly keep track of the irq resource. - Add a watchdog timer in case interrupts are lost (experimental). - Add `detach' function (experimental).
* One more patch for the atkbd driver. It will make sure that theyokota2000-03-111-0/+12
| | | | | | | | | | | | | | keyboard port and interrupt is enabled and the driver is attached even when the keyboard itself is not present when the system is booting. (This has been the behavior through out 2.X and 3.X, but is somehow broken in 4.0.) # I certainly don't recommend people to `hot-plug' the AT keyboard, # because the interface isn't designed for hot-plugging and such act # will often break the keyboard controller. But, so many people want to # do that anyway... Approved by: jkh
* Don't free(sc) before returning an error from probe, it does not "belong"peter2000-03-011-1/+0
| | | | | | | | to us, subr_bus.c will free it. This bug (panic: freeing already free) was exposed by kern/subr_bus.c rev 1.54 Not explicitly approved by: jkh (but this is a showstopper and fallout of the above approved change)
* Do not add children (atkbd and psm) if they are disabled.yokota2000-02-252-0/+6
| | | | Approved by: jkh
* - Be slightly more cautious and try to make more sure the keyboardyokota2000-02-111-4/+9
| | | | | | | input queue is emptied when initializing the keyboard controller. - Remove an unnecessary `if' statement. Approved by: jkh
* Use config's conditional compilation rather than using #ifdefs that makepeter2000-01-297-39/+1
| | | | | modular compilation harder. I'm doing this because people seem to like cut/pasting examples of bad practices in existing code.
* - Add some comment from bde on the keyboard interrupt.yokota2000-01-201-11/+19
| | | | - Fix obsolete comments.
* Rework shifta/ctla/alta key handling. It appears that there wasyokota2000-01-111-7/+0
| | | | | misunderstanding between the PR originator and me. I hope I got it right this time.
* Obtain the initial key repeat rate setting via BIOS in i386 ifyokota2000-01-101-0/+54
| | | | possible.
* Add some keyboard IDs.yokota2000-01-101-2/+9
|
* Change #ifdef KERNEL to #ifdef _KERNEL in the public headers. "KERNEL"peter1999-12-292-4/+4
| | | | | | is an application space macro and the applications are supposed to be free to use it as they please (but cannot). This is consistant with the other BSD's who made this change quite some time ago. More commits to come.
* - Add the device resume method. It supercedes the existing resumeyokota1999-12-151-36/+18
| | | | | | routine which hooks the apm driver. - Rename the PSM_HOOKAPM option to PSM_HOOKRESUME. - Delete unnecessary #include.
* - Remember the keyboard repeat delay and rate.yokota1999-12-131-10/+32
| | | | | - Add a new ioctl, KDGETREPEAT, to retrieve the keyboard repeat rate. - Delete unnecessary #include.
* Add support new keys: lshifta, rshifta, lctrla, rctrla, lalta, andyokota1999-12-101-1/+15
| | | | | | | | | ralta. These keys combine shift/ctrl/alt function and the AltLock function. When these keys pressed together with another key, they act just like the ordinary shift/ctrl/alt keys. When these keys are pressed and released alone, Alt lock state is toggled. PR: kern/12475
* Remove the 'ivars' arguement to device_add_child() andmdodd1999-12-032-2/+4
| | | | | | | | | | | | | | | | device_add_child_ordered(). 'ivars' may now be set using the device_set_ivars() function. This makes it easier for us to change how arbitrary data structures are associated with a device_t. Eventually we won't be modifying device_t to add additional pointers for ivars, softc data etc. Despite my best efforts I've probably forgotten something so let me know if this breaks anything. I've been running with this change for months and its been quite involved actually isolating all the changes from the rest of the local changes in my tree. Reviewed by: peter, dfr
* Use DEVICE_MODULE() directly instead of DEV_DRIVER_MODULE. psm.c usespeter1999-11-081-1/+1
| | | | make_dev() already.
* Remove five now unused fields from struct cdevsw. They should neverphk1999-09-251-5/+0
| | | | | | | | have been there in the first place. A GENERIC kernel shrinks almost 1k. Add a slightly different safetybelt under nostop for tty drivers. Add some missing FreeBSD tags
* $Id$ -> $FreeBSD$peter1999-08-289-9/+9
|
* Convert DEVFS hooks in (most) drivers to make_dev().phk1999-08-232-19/+4
| | | | | | | | | | | | | | | | Diskslice/label code not yet handled. Vinum, i4b, alpha, pc98 not dealt with (left to respective Maintainers) Add the correct hook for devfs to kern_conf.c The net result of this excercise is that a lot less files depends on DEVFS, and devtoname() gets more sensible output in many cases. A few drivers had minor additional cleanups performed relating to cdevsw registration. A few drivers don't register a cdevsw{} anymore, but only use make_dev().
* - Remove cdevsw entry points in individual keyboard drivers;yokota1999-08-224-141/+26
| | | | | | | | instead, use generic entry points for all drivers. - Eliminate bogus makedev(). - Eliminate softc in the lower drivers, as it is no longer necessary. Submitted (95%) by: phk
* Improve the detection code for GlidePoint. This is still a kludge,yokota1999-08-221-2/+4
| | | | | | but better than before... PR: kern/13215
* Recognize Interlink VersaPad. `Tap' action will be recognizedyokota1999-08-171-4/+100
| | | | | | as the button 4. Submitted by: Masachika ISHIZUKA <ishizuka@ish.org>
* Correctly save `flags' bits.yokota1999-08-151-1/+2
|
* Alter the behavior of sys/kern/subr_bus.c:device_print_child()mdodd1999-07-292-12/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - device_print_child() either lets the BUS_PRINT_CHILD method produce the entire device announcement message or it prints "foo0: not found\n" Alter sys/kern/subr_bus.c:bus_generic_print_child() to take on the previous behavior of device_print_child() (printing the "foo0: <FooDevice 1.1>" bit of the announce message.) Provide bus_print_child_header() and bus_print_child_footer() to actually print the output for bus_generic_print_child(). These functions should be used whenever possible (unless you can just use bus_generic_print_child()) The BUS_PRINT_CHILD method now returns int instead of void. Modify everything else that defines or uses a BUS_PRINT_CHILD method to comply with the above changes. - Devices are 'on' a bus, not 'at' it. - If a custom BUS_PRINT_CHILD method does the same thing as bus_generic_print_child(), use bus_generic_print_child() - Use device_get_nameunit() instead of both device_get_name() and device_get_unit() - All BUS_PRINT_CHILD methods return the number of characters output. Reviewed by: dfr, peter
* - Move the `return' statement the correct place so that the keyboardyokota1999-07-181-5/+5
| | | | won't be initialized if `atkbd?' is disabled.
* Improve Logitech MouseMan+ protocol support.yokota1999-07-121-19/+101
|
OpenPOWER on IntegriCloud