Commit Graph

68 Commits

Author SHA1 Message Date
christos 95e1ffb156 merge ktrace-lwp. 2005-12-11 12:16:03 +00:00
augustss 5d74925cbe Add a new match level, UMATCH_HIGHEST. 2005-11-28 13:14:48 +00:00
tron 019491bca2 Make this compile if UHID_DEBUG is not defined. 2005-11-23 10:03:56 +00:00
augustss cf1de1bda0 Normally a ugen device only attaches if no other driver wants the device.
Add the ability to force ugen to attach with very high priority if "flags 1"
is specified.  This can be used with the vendor and product locators to
force ugen to be used for certain devices.
Similarly, uhid only attaches if no other HID driver (ums or ukbd) wants it.
Again, "flags 1" will force uhid to attach anyway.
2005-11-23 08:54:47 +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
mycroft 2d562a01e2 Copyright maintenance. 2005-03-02 11:37:27 +00:00
mycroft ef77780b63 Yes, some devices return incorrect lengths in their string descriptors. Rather
than losing, do what Windows does: just request the maximum size, and allow a
shorter response.  Obsoletes the need for UQ_NO_STRINGS, and therefore these
"quirks" are removed.
2004-06-23 02:30:52 +00:00
jdolecek 958daa19cd add support for USB_GET_DEVICEINFO and USB_GET_STRING_DESC ioctls,
with same meaning as for ugen(4)
2004-05-08 11:41:19 +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
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
augustss 287c3adc4d Update URLs for the HID spec.
(Committed at 36000 feet above the Atlantic on board LH418 using
a broadband satellite connection.)
2003-03-11 16:44:00 +00:00
christos 514f7047e4 si_ -> sel_ 2002-11-26 18:49:40 +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
simonb 4e3613273b Remove breaks after returns, unreachable returns and returns after
returns(!).
2002-09-23 05:51:10 +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
augustss 86650920c9 Get rid of trailing white space. 2002-07-11 21:14:24 +00:00
augustss b32942bb23 Whitespace fixes. 2002-03-17 18:02:52 +00:00
christos 6728d906e9 Prefix structure members to protect them against clashes with eg. c++ keywords.
Suggested by Alfred Perlstein, from FreeBSD, ok'd by augustss
2002-02-20 20:30:12 +00:00
augustss f7839315fb Some more usb_proc_ptr changes.
Also some minor stylistic changes.
2002-01-02 20:55:58 +00:00
augustss 152efb1a0e Make a typedef for struct proc to make portingeasier. 2001-12-31 12:15:21 +00:00
augustss 935b0481a9 Introduce an extra driver level for HID devices, uhidev. This uhidev driver
attaches to the hub, and HID drivers (ums, ukbd, and uhid) attach to
uhidev.  The reason for this change is that some HID devices report multiple
components (like a keyboard and a mouse) using the same interface, but with
different report identifiers.  The report identifier can be specified with
a locator for the HID drivers.
Furthermore, change the ukbd driver to handle other formats than the boot
protocol.
2001-12-28 17:32:36 +00:00
lukem 667807e40c add RCSIDs 2001-11-13 06:24:53 +00:00
augustss 17ba384efc s/usbd_alloc_report_desc/usbd_read_report_desc/ 2001-10-26 17:58:21 +00:00
yamt 46f9dd9228 correct debug messages. 2001-09-15 16:16:27 +00:00
augustss 64e123faaf If there was a vendor+product locator match return a higher match value.
Rationale, if you have a device (e.g., a mouse) with a more specific
driver but want to recognize it with the more generic driver you can
do that by supplying vendor and product locators for the generic one.
2001-08-15 00:06:49 +00:00
augustss 34ee8a0f06 Supply our own report descriptor (from Nick Hibma) for the Wacom Graphire.
The descriptor it reports is broken.
XXX Not tested, because I don't have the device.
2000-12-29 01:47:49 +00:00
augustss 79f0bd6e1f Update many URLs. 2000-12-29 01:24:55 +00:00
augustss 8adc2fb7f3 Don't free unallocated pointer in detach (can happen if detach happens
before attach has finished).
2000-10-10 12:37:01 +00:00
augustss ed9486e158 Bring the coding style into the 80s, i.e., get rid of __P and use
ANSI prototypes and declarations.
2000-06-01 14:28:57 +00:00
augustss 30c20f930f Change my email address. 2000-04-27 15:26:44 +00:00
augustss e44f0f1147 Support for SIGIO. 2000-04-14 14:12:47 +00:00
augustss fc72e72d7d Change (almost) all static to Static. The symbol `Static' can then be defined
to `' or `static' depending on if you want to debug or not.
2000-03-27 12:33:53 +00:00
augustss c6eb2d324c Add ioctl USB_SET_REPORT for uhid. This will allow manipulating the
feature items.
2000-03-19 22:23:28 +00:00
augustss 7d05674ba7 Distinguish between device and interface classes.
(I finally found a document that said that they were different.)
2000-02-29 21:37:00 +00:00
augustss 2eda3cf829 Better debug info. 2000-02-22 11:24:22 +00:00
augustss 4b93911b25 Generate usb events on attach and detach. 2000-02-02 13:18:45 +00:00
augustss c3716a6bb9 Add an argument to usbd_open_pipe_intr() to specify the polling interval
for an interrupt pipe in case we don't what what the descriptor suggests.
2000-01-19 00:23:58 +00:00
augustss d837d7a740 Avoid freeing already free data when attach fails. 2000-01-16 13:05:48 +00:00
augustss e284dc9cfd Make these files compile on 64 bit archs. 1999-12-18 22:47:11 +00:00
augustss 3386c68b46 Cosmetic changes and some small improvements. From FreeBSD and Nick Hibma. 1999-11-18 23:32:25 +00:00
augustss 0d2fabdf26 A number of stylistic changes to increase readability (many suggested
by Nick Hibma):
	use NULL not 0
	declare all local definitions static
	rename s/usbd_request/usbd_xfer/ s/reqh/xfer/
	rename s/r/err/
	use implicit test for no err
	KNF
1999-11-12 00:34:57 +00:00
augustss 03a522d3c1 Merge in a large batch of changes from Nick Hibma <hibma@skylink.it> so
the USB stack compiles on FreeBSD again.
1999-10-13 08:10:55 +00:00
augustss df435c83b2 Add an event mechanism so that a userland process can watch devices come
and go.
1999-10-12 11:54:56 +00:00
augustss 24251055bc Change the way the `struct device' base part of all driver softc are
declared and accessed to make it more portable.  Idea from Nick Hibma, FreeBSD.
No functional changes.
1999-09-05 19:32:18 +00:00
augustss f3421bec94 Change the way the direction is extracted from the endpoint descriptor.
No functional changes to the drivers.  From Nick Hibma, FreeBSD.
1999-09-04 22:26:11 +00:00
augustss 036a9c6974 Change some 'struct device' to 'bdevice'. From FreeBSD. 1999-08-28 21:42:35 +00:00
augustss 1f2661798f Make sure to mark the device as dying already in the (de)activate routine.
This avoids access to it before the detach routine has blown it away.
1999-08-23 22:55:14 +00:00
augustss 3016e1ebe0 Make some small changes to make it compile on OpenBSD. 1999-08-17 16:06:20 +00:00
augustss b8b1e35ece Some changes from FreeBSD (no functional differences). 1999-08-14 14:49:31 +00:00