summaryrefslogtreecommitdiffstats
path: root/sys/dev/usb/controller
Commit message (Collapse)AuthorAgeFilesLines
* Bugfix: Make sure the XHCI driver doesn't clearhselasky2012-01-131-1/+1
| | | | | | | the route string field. Else USB 3.0 HUBs won't work. MFC after: 5 days
* Correct use of USB 3.0 POWER bit in the port status register,hselasky2012-01-131-2/+7
| | | | | | | hence it was overlapping the USB 3.0 root HUB's speed bits. Reported by: Kohji Okuno MFC after: 1 week
* - Try to fix support for USB 3.0 HUBs.hselasky2012-01-121-8/+13
| | | | | | - Try to fix support for USB 3.0 suspend and resume. MFC after: 1 week
* Make sure we probe and attach the root HUB afterhselasky2012-01-021-0/+8
| | | | | | resume else no devices will appear again. MFC after: 1 day
* Add missing change to XHCI driver similar to changes in r228483.hselasky2011-12-312-19/+20
| | | | MFC after: 0 days
* - Enable usbus on octusbgonzo2011-12-241-0/+1
|
* Make the recently added "no_shutdown_wait" sysctl writeable.hselasky2011-12-191-1/+1
| | | | | Suggested by: avg @ MFC after: 3 days
* Add code to wait for USB shutdown to be executed at system shutdown.hselasky2011-12-191-1/+15
| | | | | | Add sysctl which can be used to skip this waiting. MFC after: 3 days
* Add missing unlock of USB controller's lock, whenhselasky2011-12-191-0/+12
| | | | | | | doing shutdown, suspend and resume. Suggested by: avg @ MFC after: 3 days
* Fix definition of XHCI port power bit.hselasky2011-12-141-1/+1
| | | | | Reported by: Kohji Okuno MFC after: 3 days
* Implement better support for USB controller suspend and resume.hselasky2011-12-1429-725/+646
| | | | | | | | | | This patch should remove the need for kldunload of USB controller drivers at suspend and kldload of USB controller drivers at resume. This patch also fixes some build issues in avr32dci.c MFC after: 2 weeks
* Rename device_delete_all_children() into device_delete_children().hselasky2011-11-2212-12/+12
| | | | | Suggested by: jhb @ and marius @ MFC after: 1 week
* - There's no need to overwrite the default device method with the defaultmarius2011-11-2212-46/+15
| | | | | | | | | | one. Interestingly, these are actually the default for quite some time (bus_generic_driver_added(9) since r52045 and bus_generic_print_child(9) since r52045) but even recently added device drivers do this unnecessarily. Discussed with: jhb, marcel - While at it, use DEVMETHOD_END. Discussed with: jhb - Also while at it, use __FBSDID.
* Make some XHCI command timeouts less strict.hselasky2011-11-181-9/+9
| | | | | Reported by: Jan Henrik Sylvester MFC after: 1 week
* Some brands of XHCI controllers needs more time to reset.hselasky2011-11-151-3/+3
| | | | | Reported by: Jan Henrik Sylvester MFC after: 1 week
* Style change.hselasky2011-11-125-11/+10
| | | | | | | | | | | | - Make it easier to port the USB code to other platforms by only using one set of memory functions for clearing and copying memory. None of the memory copies are overlapping. This means using bcopy() is not required. - Fix a compile warning when USB_HAVE_BUSDMA=0 - Add missing semicolon in avr32dci. - Update some comments. MFC after: 1 week
* Fix size of USB 3.0 descriptor field.hselasky2011-11-091-1/+1
| | | | MFC after: 3 days
* Fix size of USB 3.0 descriptor field.hselasky2011-11-091-1/+2
| | | | MFC after: 3 days
* Mark all SYSCTL_NODEs static that have no corresponding SYSCTL_DECLs.ed2011-11-0710-10/+12
| | | | | | The SYSCTL_NODE macro defines a list that stores all child-elements of that node. If there's no SYSCTL_DECL macro anywhere else, there's no reason why it shouldn't be static.
* Fix suspend and resume of FULL and HIGH speed USB deviceshselasky2011-10-262-2/+15
| | | | | | | in the generic XHCI driver. There appears to be some minor logic missing for this feature to work. MFC after: 3 days
* 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)
OpenPOWER on IntegriCloud