Commit graph

2466 commits

Author SHA1 Message Date
Andrew Thompson
a24aaef782 MFC r208012
Support getting signed and unsigned HID data.

Submitted by:	Alex Deiter
2010-05-20 00:05:33 +00:00
Andrew Thompson
4e2a75d8af MFC r208019
Sync run(4) driver from author's site.
2010-05-17 23:51:57 +00:00
Andrew Thompson
0a22c89dd0 MFC r208018
Reduce diffs to p4.

  Add test code for delaying or failing usb control requests, disabled by
  default under ifdef USB_REQ_DEBUG.
2010-05-17 23:51:20 +00:00
Andrew Thompson
7ed2269651 MFC r208017
Fix possibly wrong bit masking.
2010-05-17 23:50:46 +00:00
Andrew Thompson
298c330015 MFC r208016
Add new FTDI USB device ID.
2010-05-17 23:50:10 +00:00
Andrew Thompson
4251e3198f MFC r208015
Increase the max ports to 12, 3G devices exist where the ppp endpoint is #9.
2010-05-17 23:49:31 +00:00
Andrew Thompson
6b264d7512 MFC r208014
Back out r203140 which was causing problems when the first and the last
 microframe slot was not in the smask. The problem was that the EHCI driver was
 then thinking that the transfer was immediately complete in some cases. Which
 could lead to freeze-like situations, which can be recovered by unplugging the
 USB device.
2010-05-17 23:48:51 +00:00
Andrew Thompson
f3619333d4 MFC r208013
Add missing ifdefs for usb power saving support.
2010-05-17 23:48:03 +00:00
Andrew Thompson
825c2e2677 MFC r208011
Add the ASUS MyPal A730W device id.
2010-05-17 23:47:24 +00:00
Andrew Thompson
948a9feb33 MFC r208010
Provide more information about the device location in the USB system.
2010-05-17 23:46:45 +00:00
Andrew Thompson
25e59d15b9 MFC r208009
Enable support for mouse panning wheels.
2010-05-17 23:46:08 +00:00
Andrew Thompson
51c097f122 MFC r208008
If a USB device is suspended and a USB set config request is issued when the
 USB enumeration lock is locked, then the USB stack fails to resume the device
 because locking the USB enumeration lock is part of the resume procedure. To
 solve this issue a new lock is introduced which only protects the suspend and
 resume callbacks, which can be dropped inside the usbd_do_request_flags()
 function, to allow suspend and resume during so-called enumeration operations.
2010-05-17 23:45:31 +00:00
Andrew Thompson
79e193fb18 MFC r208007
Staticise usb_ref_device and usb_unref_device.
2010-05-17 23:44:52 +00:00
Andrew Thompson
3bf0ccc8be MFC r208006
Add quirks for the Alcor SDCR_6362 Card Reader, Freecom HDD storage device and
 Samsung YP_U4 music player.

PR:		usb/145265, usb/146104
2010-05-17 23:44:18 +00:00
Andrew Thompson
199841d30c MFC r206638
Use the UIPROTO_BOOT_KEYBOARD #define from usb.h rather than a local
 (almost identically named) local #define.
2010-05-17 23:43:07 +00:00
Rui Paulo
82878b1182 MFC r206367, r206358, r206370, r206371, r206372, r206398, r206415,
r206416, r206417, r206418, r206418:

net80211 ratectl framework.
2010-05-11 11:08:15 +00:00
Andrew Thompson
ba752236ec MFC r201797
Remove unused uhci_dump_qhs().
2010-05-04 21:16:01 +00:00
Andrew Thompson
31f57dc12e MFC r207080
Use a more obvious prefix for the USB control (endpoint 0) transfers rather
 than default_*.
2010-04-29 22:49:21 +00:00
Andrew Thompson
c955f36229 MFC r207079
Properly name the sxlocks, mutexes and condvars.
2010-04-29 22:48:19 +00:00
Andrew Thompson
ccd296dfa6 MFC r207078
Use SX_DUPOK rather than making the string unique.
2010-04-29 22:47:01 +00:00
Andrew Thompson
ad65806013 MFC r207077
Change USB_DEBUG to #ifdef and allow it to be turned off. Previously this had
 the illusion of a tunable setting but was always turned on regardless.
2010-04-29 22:44:04 +00:00
Andrew Thompson
176b25ad5c MFC r207020, r207027, r207072.
Change usb devd events from fake attach to a notify. The ugen device is not a
 proper device_t so it faked the devctl event to appear like one, this is now a
 notify which allows more information to be passed.

 We notify for both the device attach/detach and for each usb interface. A devd
 rule can now match on the interface properties, including composite devices
 which may have a uvideo interface and also usound and possibly uhid too.

 An example to match a umass device with a scsi subclass and BBB protocol would be

 notify 100 {
 	match "system"          "USB";
 	match "subsystem"       "INTERFACE";
 	match "type"            "ATTACH";
 	match "intclass"        "0x08";
 	match "intsubclass"     "0x06";
 	match "intprotocol"     "0x50";
 	action ...
 };

 The old attach devctl event has been retained for the moment to make merging to
 8.1 easier. This was never compatible with 7.x or earlier due to the ugen regex
 change needed.

 Document the new USB notification types.
2010-04-29 22:40:12 +00:00
Kevin Lo
e83c1c9d1e MFC r206595
Eliminate duplicate comment
2010-04-16 01:54:47 +00:00
Kevin Lo
499a07ef68 MFC r206544
The Quanta Q101 modem has a different type of cdrom driver disk,
add the product id and use a standard scsi eject.

Reviewed by:	thompsa
2010-04-16 01:53:19 +00:00
Andrew Thompson
464b64f6c8 MFC r205036
Implement USB kernel driver detach from userland.

Submitted by:	Hans Petter Selasky
2010-04-07 00:32:59 +00:00
Andrew Thompson
fb8f1e2afc MFC r205681
- add some usb devices (scanner, printer, usb storage)
 - add quirks for the usb storage
2010-04-07 00:30:25 +00:00
Andrew Thompson
3769678a82 MFC r203087
adds sysctl knobs to show rate statistics that it could be useful to
 debug slow TX speed.
2010-04-07 00:27:59 +00:00
Andrew Thompson
1e6c93d364 MFC r202609
Product ID of D-Link DWA-120 after loading the firmware is incorrect.
2010-04-07 00:26:39 +00:00
Andrew Thompson
cfc42a2785 MFC r202608
Remove a hack to attach TRENDnet TEW-504UB/EU, this has been solved.
2010-04-07 00:25:03 +00:00
Andrew Thompson
a811dd8b64 MFC r205805
Do not sync cache for the PL2506

PR:		usb/144915
Submitted by:	Monty Hall
2010-04-06 23:31:22 +00:00
Andrew Thompson
6b6aaa9fcd MFC r205804
Do not swap Apple keys when detecting Apple-FN keyboards.

Reported by:	Steven Noonan
Submitted by:	Hans Petter Selasky
2010-04-06 23:30:57 +00:00
Andrew Thompson
3224ea55bb MFC r205803
Make sure the bsd_urb_list gets initialised and that new URB's are queued at
 the end of the list.

Submitted by:	Hans Petter Selasky
2010-04-06 23:30:30 +00:00
Andrew Thompson
441f5e4c8a MFC r205802
Add PCI IDs for two more nForce controllers.

Submitted by:	Dmitry Luhtionov @ gmail.com
2010-04-06 23:30:02 +00:00
Andrew Thompson
57023f990c MFC r205801
Add a couple of usb product IDs.

Submitted by:	Dmitry Luhtionov @ gmail.com
2010-04-06 23:29:38 +00:00
Andrew Thompson
67232500cd MFC r205043
Add device ID for the NATURAL4000 keyboard
2010-04-06 23:29:14 +00:00
Andrew Thompson
1e426764e8 MFC r205042
- Integrate latest driver code from OpenBSD
 - Drain our tasks from the ieee80211 taskqueue
 - Add more IDs

Submitted by:	Akinori Furukoshi
2010-04-06 23:28:46 +00:00
Andrew Thompson
963d675e13 MFC r205040
extend search for Apple Function Key.

PR:		usb/144414
Submitted by:	Hans Petter Selasky
2010-04-06 23:28:18 +00:00
Andrew Thompson
10cd601e17 MFC r205039
Add new device ID for the SMC 2514HUB

Submitted by:	Alexander Best
2010-04-06 23:27:55 +00:00
Andrew Thompson
d3a6755914 MFC r205038
add new vendor ID for APACER

Submitted by:	Paul B Mahol
2010-04-06 23:27:31 +00:00
Andrew Thompson
33f167cc00 MFC r205035
Make sure there is a way to reset the endpoint FIFO on transfer errors for
 ISOCHRONOUS transfers

Submitted by:	Hans Petter Selasky
2010-04-06 23:27:04 +00:00
Andrew Thompson
252913a125 MFC r205034
For USS820 driver we need to manually reset TX FIFO at each SETUP transaction
 because the chip doesn't do this by itself.

Submitted by:	Hans Petter Selasky
2010-04-06 23:26:40 +00:00
Andrew Thompson
722095f272 MFC r205033
isochronous endpoint descriptors should have two more bytes which are zero by
 default.

Submitted by:	Hans Petter Selasky
2010-04-06 23:26:17 +00:00
Andrew Thompson
4e4177b3d0 MFC r205032
Add new uvisor(4) device ID.

PR:		usb/144201
2010-04-06 23:25:53 +00:00
Andrew Thompson
15a1f2780d MFC r205031
It appears that some UVISOR devices do not handle when the clear stall command
 is issued at the beginning of the initial IN/OUT data transfers.  Reason
 unknown, probably firmware fault. Now the stall is only cleared on data
 transfer errors.

PR:		usb/144199
Submitted by:	Hans Petter Selasky
2010-04-06 23:25:19 +00:00
Andrew Thompson
18fef95d49 MFC r205030
- make the usb_temp_setup() and usb_temp_unsetup() functions public so that
   other modules can generate USB descriptors.
 - extend the vendor specific request function by one length pointer argument,
   because not all descriptors store the length in the first byte. For example
   HID descriptors.

Submitted by:	Hans Petter Selasky
2010-04-06 23:24:55 +00:00
Andrew Thompson
a8562ad046 MFC r205029
Use wMaxPacketSize for the uftdi input buffer size.

Submitted by:	Hans Petter Selasky
2010-04-06 23:24:29 +00:00
Andrew Thompson
14c9d51098 MFC r205026
Reapply r185998 which was overwritten at some point.
2010-04-06 23:24:07 +00:00
Andrew Thompson
b766264da8 MFC r205005
Wrap the proc wakeup special case for ddb in ifdef DDB.

Submitted by:	Giovanni Trematerra
2010-04-06 23:23:43 +00:00
Andrew Thompson
c96e62bb8a MFC r203906
Add device ID for the FTDI 4232H.

PR:		usb/143832
Submitted by:	UEMURA Tetsuya
2010-04-06 23:23:19 +00:00
Andrew Thompson
5821ad555b MFC r203905
Add support for the E1752 3G modem and the required eject command.

Submitted by:	Milan Obuch
2010-04-06 23:22:47 +00:00