summaryrefslogtreecommitdiffstats
path: root/sys/dev/usb
Commit message (Collapse)AuthorAgeFilesLines
* Add support for Huawei Technologies Mobile card (3G).le2007-02-092-0/+6
| | | | | Submitted by: Thorsten Schroeder <ths_AT_dev.io> MFC in: 3 days
* Add support for another 3G card and update man page accordingly.le2007-02-042-0/+6
| | | | | | | | | The patch from the PR was a little outdated w/regards to the Vodafone vendor string. PR: kern/106033 Submitted by: Volker Werth <volker_AT_vwsoft.com> MFC in: 3 days
* Fix build (sc->dev => sc->sc_dev).flz2007-02-031-1/+1
|
* It turns out we were mallocing too early, so move the allocation so weimp2007-02-031-1/+5
| | | | don't leak.
* Fix memory leak of devinfopimp2007-02-031-2/+1
| | | | | PR: 108719 Submitted by: Antoine Brodin
* Fix possible memory leaks of devinfo.imp2007-02-031-2/+2
| | | | | PR: 108719 Submitted by: Antoine Brodin
* Fix non-use, but not memory leak, of devinfop. Set the device'simp2007-02-031-39/+22
| | | | | | | | | description here. The fix in the PR isn't necessary at all for memory leaks, but we weren't setting the device description. While I'm here, remove some of the obfuscating macros in attach. PR: 108719
* Fix memory leak of devinfo. The leak itself was documented inimp2007-02-031-122/+66
| | | | | | | | | | | | | | | | | | PR/108719, but there's a simpler fix: free it after it is used, and then get rid of the redundant frees this causes. Other leaks in this PR not yet fixed. While I'm here, remove NetBSD/OpenBSD code and some of the portability #defines that were getting in the way of understanding this code. The devinfo bug was harder to spot because one needed to know that device_set_desc_copy() was used inside of one of them (one that didn't take an argument!). Prefer device_printf(sc->sc_dev, "...") to printf("%s:...", device_get_nameunit(sc->sc_dev)). This saves almost 300 bytes. PR: 108719 Submitted by: Antoine Brodin
* Add ALTQ support for aue(4).mlaier2007-02-031-5/+7
| | | | | Tested by: Greg Hennessy, Volker MFC after: 1 week
* Add support for serial communication with Windows CE based Handheld Computer.takawata2007-01-281-0/+383
| | | | Obtained from: NetBSD
* Add some vendor IDs mainly from NetBSD.takawata2007-01-281-0/+5
|
* Change the remainder of the drivers for DMA'ing devices enabled in themarius2007-01-212-8/+8
| | | | | | | | sparc64 GENERIC and the sound device drivers known working on sparc64 to use bus_get_dma_tag() to obtain the parent DMA tag so we can get rid of the sparc64_root_dma_tag kludge eventually. Except for ath(4), sk(4), stge(4) and ti(4) these changes are runtime tested (unless I booted up the wrong kernels again...).
* Fix a buffer overflow iff USB_DEBUG is set, hw.usb.ums.debug is > 5 and themarkus2007-01-171-3/+4
| | | | | | | | | total size of all input reports is < 6. PR: usb/106435 Submitted by: Eygene Ryabinkin <rea-fbsd@codelabs.ru> Approved by: emax (mentor) MFC after: 3 days
* Remove my "custom" locks that allow for lock acquire abort, they arealfred2007-01-082-177/+52
| | | | | | | | | | not needed if the proper ordering is done in attach and shutdown. Remove usage of if_timer/watchdog and roll my own by piggybacking off the tick() function. Use the new usb system to allocate task queues instead of using the system wide thread for taskqueues.
* Add the following functions to abstract away the creation of task threadsalfred2007-01-082-0/+39
| | | | | | | | | | | | | | | | | for usb. I hope that this will eventually be used for generic devices that need full fledged blocking threads for event processing. Create a taskqueue: void usb_ether_task_init(device_t, int, struct usb_taskqueue *); Enqueue a task: void usb_ether_task_enqueue(struct usb_taskqueue *, struct task *); Wait for all tasks queued to complete: void usb_ether_task_drain(struct usb_taskqueue *, struct task *); Destroy the taskqueue: void usb_ether_task_destroy(struct usb_taskqueue *);
* protect against multiple inclusion (this is useful when youluigi2007-01-031-0/+3
| | | | | | | | | | | | | | start working with third party usb modules, where sometimes it is not easy to set the inclusion order so that there are no multiple inclusions, yet you want to compile with high WARNS levels). I am not sure if there is a standard for having a leading and/or trailing _ in the macro name, the usb code seems to use both. There are still several unprotected headers here so it might be useful to do the same thing on other files as well as the need arises. MFC After: 3 days
* Back out revision 1.33. usb/98983 was misfiled and the patch had no effect.jkim2006-12-261-2/+0
| | | | | | The originator confirmed the adapter works fine without the patch. Tested by: Massimo Lusetti (mlusetti at gmail dot com)
* Fix a deadlock in detach/shutdown.alfred2006-12-232-20/+164
| | | | | | | | | | | | | | | | | | | | | | | | The problem was that I was acquiring the driver sx lock and then waiting for a taskqueue to drain, however the taskqueue itself would try to acquire the lock as well leading to a deadlock. To fix the problem roll my own exclusive lock that allows for lock cancellation. This is a normal exclusive lock, however if someone marks it as "dead" then all waiters who request an error return will get back an error instead of continuing to wait for the lock. In this particular case, the shutdown and detach functions kill the lock while the async task thread tries to acquire the lock but will abort if the lock returns an error. The other option was to drop the driver lock mid-detach and mid-shutdown, mid-detach was a ok, however mid-shutdown was not. While I'm here, fix a bug in what appears to be the mii link status word in the softc going out to lunch. Explicitly set the status word to 1 after initializing the mii. This would result in an interface that would never respond to "if_start" requests as the mii interface would always look down.
* Use callouts to prevent races.alfred2006-12-132-20/+31
| | | | Cleanup debug code.
* defer all processing to a full fledged thread.alfred2006-12-114-180/+209
| | | | | once usb is SMP safe, this should be the first SMPsafe usb ethernet driver.
* Stop INVARIANTS panics in if_aue with a stopgap.alfred2006-11-292-7/+32
| | | | | | | | | aue_tick calls several synchronous usb functions from a timeout(9), this is very broken since a timeout(9) is run as an interrupt and the usb functions tsleep. A stopgap fix is to schedule a taskqueue task from the timeout and defer work to that taskqueue task.
* Add a quirk for devices recognized as usb keyboards not to be hooked byflz2006-11-284-0/+8
| | | | | | | | ukbd(4). PR: usb/105669 Submitted by: Henrik Brix Andersen <henrik@brixandersen.dk> MFC after: 1 week
* Write the short vendor name in ALL CAPS, since it will becomedougb2006-11-271-1/+1
| | | | | | a #define. Submitted by: brooks
* Refine the previous change to only call bus_dmamap_sync() in case ofmarius2006-11-271-12/+19
| | | | | | | | | | | | | | | | an URQ_REQUEST when DMA segments are passed to usbd_start_transfer(); when the request doesn't include the optional data buffer the size of the transfer (xfer->length) is 0, in which case usbd_transfer() won't create a DMA map but call usbd_start_transfer() with no DMA segments. With the previous change this could result in the bus_dmamap_sync() implementation dereferencing the NULL-pointer passed as the DMA map argument. While at it fix what appears to be a typo in usbd_start_transfer(); in order to determine wheter usbd_start_transfer() was called with DMA segments check whether the number of segments is > 0 rather than the pointer to them being > 0. OK'ed by: imp
* Add entry and no-UHID quirk for I-tuner networks USB-LCD 2x20 as foundphk2006-11-262-0/+6
| | | | in http://www.mini-box.com/Mini-Box-M200-LCD
* I mistakenly committed the wrong version of my patch (sorry).dougb2006-11-241-2/+1
| | | | | s/O2/O2Micro, as that's how they seem to prefer it, and remove what is now one blank line too many.
* Add a vendor ID for O2Micro, obtained fromdougb2006-11-231-0/+3
| | | | | | | http://www.usb.org/developers/tools Add a product ID for the Dell TrueMobile 350 Bluetooth USB Adapter obtained from NetBSD's usbdevs file.
* add codes for Atheros USB devices; shuffle one ural code tosam2006-11-232-3/+80
| | | | | | | avoid conflict Obtained from: openbsd MFC after: 1 month
* Fix coherency issue. From submitter:imp2006-11-221-0/+7
| | | | | | | | | | | | | | | | | | | | | | | I have been debugging the usb problems some more. Your were right in your assumption (thanks for the pointer) about lack of calls to bus_dmamap_sync(). In usbdi.c bus_dmamap_sync() does get used for transfers that move data from PC to USB and it is used for transfers that move data from USB to PC. But someone forgot that control transfers consist of possibly two data chunks : the request itself and optionally a buffer of data that should be transfered to or from the USB device. On requests to the control endpoint without additional data bus_dmamap_sync() didn't get called. For some reason my first tests with umass worked (due to enough cache poisening I guess). The attached patch adds a call to bus_dmamap_sync() to usbdi.c and now all devices I have tried work out of the box. I have successfully transfered large files using the if_axe driver and I have mounted several different umass devices. submitted by: Daan Vreeken sponsored by: Vitsch Electronics reviewed by: cognet@
* Acknowledge (dearly) departed filesdougb2006-11-211-12/+0
|
* o Add uark(4), a driver for Arkmicro Technologies ARK3116 based serialmaxim2006-11-152-0/+371
| | | | | | | | | adapters. Submitted by: Alex Rodin Obtained from: OpenBSD Reviewed by: -usb MFC after: 6 weeks
* Fix USB printer Xerox WorkCentre M15 adding a quirk to bypassflz2006-11-112-0/+5
| | | | | | | | reported bidirectional functionality. PR: usb/104704 Submitted by: Eygene <rea-fbsd@codelabs.ru> X-MFC after: 6.2-RELEASE
* 2nd and final commit that moves us to CAM_NEW_TRAN_CODEmjacob2006-11-021-9/+0
| | | | | | as the default. Reviewed by multitudes.
* The first of 3 major steps to move the CAM layer forward to usingmjacob2006-10-311-0/+8
| | | | | | | | | | | | | | | | | | | | | the CAM_NEW_TRAN_CODE that has been in the tree for some years now. This first step consists solely of adding to or correcting CAM_NEW_TRAN_CODE pieces in the kernel source tree such that a both a GENERIC (at least on i386) and a LINT build with CAM_NEW_TRAN_CODE as an option will compile correctly and run (at least with some the h/w I have). After a short settle time, the other pieces (making CAM_NEW_TRAN_CODE the default and updating libcam and camcontrol) will be brought in. This will be an incompatible change in that the size of structures related to XPT_PATH_INQ and XPT_{GET,SET}_TRAN_SETTINGS change in both size and content. However, basic system operation and basic system utilities work well enough with this change. Reviewed by: freebsd-scsi and specific stakeholders
* Add support for Option GT 3G/3G quad datacard in ubsa.kevlo2006-10-312-5/+11
| | | | Approved by: cognet
* Fix non-working CAPS LED under X by applying fix from atkbd.c,v 1.27:ru2006-10-251-1/+2
| | | | | | | | | | | | | | : revision 1.27 : date: 2000/05/28 12:43:24; author: ache; state: Exp; lines: +3 -2 : Manipulate with AltGR Led (really CapsLock Led) only in K_XLATE mode, because : 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> MFC after: 3 days
* Use a different task queue for host controller and peripheral driveriedowse2006-10-198-39/+74
| | | | | | | | | | | | tasks. Since the host controllers rely on tasks to process transfer timeouts, if a synchronous transfer from a driver was invoked from a task and timed out, it would never complete because the single task thread was stuck performing the synchronous transfer so couldn't process the timeout. This affected the axe, udav and ural drivers. Problem hardware provided by: guido
* Add a USB umass(4) quirk for Panasonic KXL-840AN CD-R drive.flz2006-10-072-0/+5
| | | | | | PR: usb/81073 Submitted by: James E. Flemer <jflemer@alum.rpi.edu> MFC after: 3 days
* Add a USB quirk for CMOTECH CDMA USB modem.flz2006-10-072-0/+5
| | | | | | PR: usb/97948 Submitted by: Alexei Volkov <kot@kotzone.ru> MFC after: 3 days
* Add a USB quirk for Motorola A41x/V32x USB phones.flz2006-10-072-0/+3
| | | | | | PR: usb/97512 Submitted by: Mark Diekhans <markd@kermodei.com> MFC after: 3 days
* Add support for Novatech NV902 wireless NIC in ural(4).flz2006-10-072-0/+5
| | | | | | PR: usb/102852 Submitted by: Jonathan Fosburgh <jonathan@fosburgh.org> MFC after: 3 days
* Add support for Epson Stylus CX4200 in uscanner(4).flz2006-10-072-0/+2
| | | | | | PR: usb/102851 Submitted by: Jonathan Fosburgh <jonathan@fosburgh.org> MFC after: 3 days
* Add support for Psion Gold Port Ethernet USB NIC.flz2006-10-072-0/+4
| | | | | | PR: usb/102296 Submitted by: Volker <volker@vwsoft.com> MFC after: 3 days
* Add support for Netgear FA101 ethernet USB NIC.flz2006-10-072-0/+2
| | | | | | PR: usb/102286 Submitted by: Volker <volker@vwsoft.com> MFC after: 3 days
* Add a quirk for the Belkin FC6550-AVR UPS.flz2006-10-072-0/+3
| | | | | | PR: usb/102260 Submitted by: David Grochowski <grocho98@students.rowan.edu> MFC after: 3 days
* Add support for Familiar Linux powered iPaq handhelds to cdce(4).flz2006-10-072-0/+2
| | | | | | PR: usb/103865 Submitted by: Alexey Roslyakov <internetworking@mail.ru> MFC after: 3 days
* Add quirk for Logitech iFeel MouseMan USB mouse.flz2006-10-072-1/+3
| | | | | | PR: usb/101066 Submitted by: Heiko Przybyl <zuxez@uni.de> MFC after: 3 days
* - Add support for Epson USB Scanners (3590 [1] and 4990 [2]).flz2006-10-072-0/+4
| | | | | | | | | - Add entries in the uscanner.4 man page (along with missing 3500). PR: usb/100957 [1], usb/100992 [2] Submitted by: Jim Teresco <terescoj@teresco.org> [1], Walter C. Pelissero <walter.pelissero@iesy.net> [2] MFC after: 3 days
* Fix compile in non-debug case.iedowse2006-10-032-4/+2
|
* When changing the device address and max packet size in usbd_new_device(),iedowse2006-10-033-21/+18
| | | | | | | | | | | close and re-open the default pipe instead of relying on the host controller driver to notice the changes. Remove the unreliable code that attempted to update these fields while the pipe was active. This fixes a case where the hardware could cache and continue to use the old address, resulting in a "getting first desc failed" error. PR: usb/103167
OpenPOWER on IntegriCloud