summaryrefslogtreecommitdiffstats
path: root/sys/dev/usb/controller
Commit message (Collapse)AuthorAgeFilesLines
* Renamed PCI_INTERFACE_XHCI to PCIP_SERIALBUS_USB_XHCI and moved itru2011-05-172-2/+1
| | | | | | | to <dev/pci/pcireg.h>. Reviewed by: hselasky MFC after: 3 days
* Fix for missing EHCI datatoggle change case.hselasky2011-04-261-0/+2
| | | | | | Reported by: Mike Tancsa MFC after: 3 days Approved by: thompsa (mentor)
* We don't need to call EOWRITE4(sc, EHCI_USBINTR, 0) directly from each EHCIhselasky2011-04-123-15/+1
| | | | | | | | bus driver at detach, hence ehci_detach() does exactly this since r199718. Submitted by: Luiz Otavio O Souza MFC after: 7 days Approved by: thompsa (mentor)
* - Correct EHCI interrupt disabling at detach.hselasky2011-04-033-3/+3
| | | | | | Submitted by: Luiz Otavio O Souza MFC after: 7 days Approved by: thompsa (mentor)
* Fix initialisation order with regard to debug prints.hselasky2011-03-251-2/+2
| | | | | | Reported by: Luiz Otavio O Souza MFC after: 14 days Approved by: thompsa (mentor)
* Fix typo.hselasky2011-03-241-1/+1
| | | | | | Reported by: Garrett Cooper MFC after: 14 days Approved by: thompsa (mentor)
* Comply with style(9).hselasky2011-03-231-4/+4
| | | | | | Reported by: gavin MFC after: 14 days Approved by: thompsa (mentor)
* - Bugfix: Fix a EHCI hardware race, where the hardware computed data togglehselasky2011-03-211-3/+25
| | | | | | | | value is updated after that we read it in the queue-head. This patch can fix problems with BULK timeouts. The issue was found on a Nvidia chipset. MFC after: 14 days Approved by: thompsa (mentor)
* - Correct USB 3.0 wire-speed to 5.0Gbpshselasky2011-02-261-1/+1
| | | | | MFC after: 3 days Approved by: thompsa (mentor)
* Minor cleanup:hselasky2011-02-091-4/+4
| | | | | | | | - use device_printf() instead of printf() to give more accurate warnings. - use memcpy() instead of bcopy(). - add missing #if's for non-FreeBSD compilation. Approved by: thompsa (mentor)
* Improve the error interrupt handler. In particular, read themarcel2011-02-081-9/+14
| | | | | | | error address on a decoding error to unlatch it and to allow us to print a better diagnostics message. This also has the side effect of clearing the condition, which prevents an interrupt storm.
* Make USB packet filtering code optional.hselasky2011-01-181-2/+4
| | | | Approved by: thompsa (mentor)
* - Add support for 64-byte contexts to XHCI driver.hselasky2011-01-132-46/+105
| | | | | | | - Remove some dead code. - Fixed one instance of missing endian conversion. Approved by: thompsa (mentor)
* Remove unneeded includes of <sys/linker_set.h>. Other headers that usejhb2011-01-1122-22/+0
| | | | | | it internally contain nested includes. Reviewed by: bde
* Remove bogus usage of INTR_FAST. "Fast" interrupts are now indicated byjhb2011-01-061-1/+1
| | | | | registering a filter handler rather than a threaded handler. Also remove a bogus use of INTR_MPSAFE for a filter.
* Removes a unused function `usb_bus_find'.weongyo2010-11-251-26/+0
|
* Handles the unit number correctly that the previous commit had a problemweongyo2010-11-251-4/+4
| | | | | | | | (wrong unit number for a host controller) when the module is load / unloaded repeatly. Attaching the USB pf is moved to usbus device's attach. Pointed by: yongari
* Removes all duplicated code with BPF that it's greatly simplified andweongyo2010-11-241-1/+1
| | | | | | | take all benefits whenever BPF code is improved. Pointed by: jkim Reviewed by: thompsa
* Adds a USB packet filter feature to the stack that it could captureweongyo2010-11-221-0/+32
| | | | | | | | | packets which go through each USB host controllers. Its implementations are almost based on BPF code and very similar with it except it's little bit customized for USB packet only. The userland program usbdump(8) would be committed soon. Discussed with: hps, thompsa, yongari
* The EHCI_CAPLENGTH and EHCI_HCIVERSION registers are actually sub-registersnwhitehorn2010-10-252-5/+9
| | | | | | | within the first 4 bytes of the EHCI memory space. For controllers that use big-endian MMIO, reading them with 1- and 2-byte reads would then return the wrong values. Instead, read the combined register with a 4-byte read and mask out the interesting quantities.
* Remove unused EHCI register definition.hselasky2010-10-142-3/+1
| | | | | | Define reserved EHCI register. Approved by: thompsa (mentor)
* Revert most of r197682 (EHCI Hardware BUG workaround). Implementhselasky2010-10-142-40/+51
| | | | | | | | | | proper solution which is to not use the TERMINATE pointer, but rather link to a halted TD. The initial fix was due to a misunderstanding about how the EHCI hardware works. Thanks to Alan Stern for clearing this up. This patch can increase mass storage read performance significantly when the IRQ rate is less than 8000 IRQ/s. Approved by: thompsa (mentor)
* Avoid using endless retransmission at EHCI hardware level, hence this hidehselasky2010-10-141-1/+2
| | | | | | | errors from the applications. Only use endless retransmission while in the non-addressed state on a High-Speed device. Approved by: thompsa (mentor)
* Correct EHCI root HUB interface descriptor.hselasky2010-10-141-2/+1
| | | | Approved by: thompsa (mentor)
* Correct EHCI port register read.hselasky2010-10-141-1/+1
| | | | Approved by: thompsa (mentor)
* Correct some root HUB descriptor fields in multiple controller drivers.hselasky2010-10-136-31/+9
| | | | | | Remove an unused structure. Approved by: thompsa (mentor)
* This commit adds full support for USB 3.0 devices in host and devicehselasky2010-10-041-0/+6
| | | | | | | | | | | | | | | | mode in the USB core. The patch mostly consists of updating the USB HUB code to support USB 3.0 HUBs. This patch also add some more USB controller methods to support more active-alike USB controllers like the XHCI which needs to be informed about various device state events. USB 3.0 HUBs are not tested yet, due to lack of hardware, but are believed to work. After this update the initial device descriptor is only read twice when we know that the bMaxPacketSize is too small for a single packet transfer of this descriptor. Approved by: thompsa (mentor)
* Add missing DRIVER_MODULE() entry for the musbotg driver.hselasky2010-10-041-0/+4
| | | | | | Add some more comments. Approved by: thompsa (mentor)
* The root mount hold reference was not released on USB controllerhselasky2010-10-041-8/+14
| | | | | | attach failures during boot. Fix this. Approved by: thompsa (mentor)
* Commit initial version of new XHCI driver which was written fromhselasky2010-10-034-0/+4898
| | | | | | | | | | | | | scratch. This driver adds support for USB3.0 devices. The XHCI interface is also backwards compatible to USB2.0 and USB1.0 and will evntually replace the OHCI/UHCI and EHCI drivers. There will be follow-up commits during the coming week to link the driver into the default kernel build and add missing USB3.0 functionality in the USB core. Currently only the driver files are committed. Approved by: thompsa (mentor)
* Change argument for usbd_get_dma_delay() from USB bus to USB device, somethompsa2010-09-023-3/+3
| | | | | | | embedded hardware needs to know exactly which device is in question before it exactly can decide the required delay. Submitted by: Hans Petter Selasky
* Add support for LOW speed BULK transfers. This mode is not recommended by thethompsa2010-06-223-9/+3
| | | | | | USB 2.0 standard, though some USB devices use it anyway. Submitted by: Hans Petter Selasky
* Convert Marvell ARM platforms to FDT convention.raj2010-06-131-33/+40
| | | | | | | | | | | | | | | | | | | | | | | | | The following systems are involved: - DB-88F5182 - DB-88F5281 - DB-88F6281 - DB-78100 - SheevaPlug This overhaul covers the following major changes: - All integrated peripherals drivers for Marvell ARM SoC, which are currently in the FreeBSD source tree are reworked and adjusted so they derive config data out of the device tree blob (instead of hard coded / tabelarized values). - Since the common FDT infrastrucutre (fdtbus, simplebus) is used we say good by to obio / mbus drivers and numerous hard-coded config data. Note that world needs to be built WITH_FDT for the affected platforms. Reviewed by: imp Sponsored by: The FreeBSD Foundation.
* Back out r203140 which was causing problems when the first and the lastthompsa2010-05-121-9/+20
| | | | | | | | | | 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. Reported by: Richard Kolkovich Submitted by: Hans Petter Selasky
* Add missing ifdefs for usb power saving support.thompsa2010-05-121-1/+4
| | | | Submitted by: Hans Petter Selasky
* Change USB_DEBUG to #ifdef and allow it to be turned off. Previously this hadthompsa2010-04-223-37/+37
| | | | | | the illusion of a tunable setting but was always turned on regardless. MFC after: 1 week
* Add PCI IDs for two more nForce controllers.thompsa2010-03-282-0/+4
| | | | Submitted by: Dmitry Luhtionov @ gmail.com
* Add support for the Samsung S3C2xx0 family of ARM SoCs written byimp2010-03-201-0/+219
| | | | | | | | Andrew Turner. The kernel supports the LN2410SBC evaluation board, and likely others. These parts (or similar ones) are in some open hardware designs for phones. Submitted by: Andrew Turner
* For USS820 driver we need to manually reset TX FIFO at each SETUP transactionthompsa2010-03-111-0/+8
| | | | | | because the chip doesn't do this by itself. Submitted by: Hans Petter Selasky
* Wrap the proc wakeup special case for ddb in ifdef DDB.thompsa2010-03-111-0/+6
| | | | Submitted by: Giovanni Trematerra
* The NetBSD Foundation has granted permission to remove clause 3 and 4 fromjoel2010-03-039-63/+0
| | | | | | their software. Obtained from: NetBSD
* Disable the use of the IAAD usb doorbell on NVidia controllers as it can causethompsa2010-02-093-0/+33
| | | | | | the hardware to stall. Submitted by: Hans Petter Selasky
* Optimise EHCI ISOC HS done check.thompsa2010-01-291-10/+7
| | | | Submitted by: Hans Petter Selasky
* Remove unused uhci_dump_qhs().trasz2010-01-081-27/+0
| | | | Reviewed by: hps
* Remove extraneous semicolons, no functional changes.mbr2010-01-071-1/+1
| | | | | Submitted by: Marc Balmer <marc@msys.ch> MFC after: 1 week
* Add more OHCI pci ids.thompsa2009-12-221-0/+6
| | | | Submitted by: Hans Petter Selasky
* Add more EHCI pci ids.thompsa2009-12-221-0/+10
| | | | Submitted by: Hans Petter Selasky
* Correct name, 82801IJ -> 82801JIthompsa2009-12-092-8/+8
| | | | Submitted by: mitya_cabletv.dp.ua
* Add uhci/ehci controller ids.thompsa2009-12-032-0/+16
| | | | Submitted by: mitya_cabletv.dp.ua
* Remove overuse of exclamation marks in kernel printfs, there mere fact athompsa2009-11-264-9/+12
| | | | | | message has been printed is enough to get someones attention. Also remove the line number for DPRINTF/DPRINTFN, it already prints the funtion name and a unique message.
OpenPOWER on IntegriCloud