Commit Graph

54 Commits

Author SHA1 Message Date
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
augustss
b177c7a397 Totally redo the way device detach is done. It now uses a kernel event
thread and the config detach method.
Squish a number of space leaks on detach.
1999-06-30 06:44:22 +00:00
augustss
aaa0308140 Handle exclusive open bit differently. 1999-05-09 14:38:01 +00:00
augustss
1fcbe7ae13 Use the right buffer in immediate mode. 1999-04-21 19:02:26 +00:00
augustss
07e0165b97 Update/add URLs to relevant USB specs. 1999-01-10 11:13:36 +00:00
augustss
875aa92d2c Various little fixes from the FreeBSD version. 1999-01-08 11:58:25 +00:00
augustss
e4b5e096e8 Fix some FreeBSD compiler warnings. 1999-01-07 02:22:50 +00:00
augustss
e0c228ae9c Merge changes to make the USB stack work with FreeBSD. The original
diffs from Nick Hibma <n_hibma@freebsd.org>, but with substantial
changes from me.
XXX Not tested on FreeBSD yet.
1998-12-26 12:53:00 +00:00
augustss
46e04a18a1 Take care of some lines > 80 chars. 1998-12-10 23:16:47 +00:00
augustss
f8b9a417f0 Improvement to the ugen driver.
Better error checking.
Some code rearrengment.
1998-12-09 00:18:10 +00:00
augustss
a68f1ef94c Handle the case where the device does not support GET_PEPORT better. 1998-12-03 20:43:19 +00:00
augustss
cf75925c7f Even shorter printfs at attach. 1998-12-02 22:54:52 +00:00
augustss
fd3af06364 Avoid wrapping lines in attach printfs. 1998-12-02 17:20:20 +00:00
augustss
ca707fcdf2 Make the copyright header conform to the NetBSD template. 1998-11-25 22:32:04 +00:00
augustss
c73add02ca Fix some typos. 1998-11-21 18:57:09 +00:00