summaryrefslogtreecommitdiffstats
path: root/sys/dev/usb/controller
Commit message (Collapse)AuthorAgeFilesLines
...
* Add more DWC OTG register definitions.hselasky2012-09-031-3/+21
| | | | Submitted by: Nick Hudson
* Preparations for adding USB HOST mode to the DWC OTG driver.hselasky2012-08-303-506/+980
| | | | | | | Merge register file with external one and put all register definitions in a separate file. Submitted by: ray @
* Add tunable for XHCI port routing.hselasky2012-08-233-5/+19
| | | | MFC after: 1 week
* Style.hselasky2012-08-211-1/+1
|
* Fix USB drivers for KB920X target.hselasky2012-08-212-6/+26
| | | | | Add missing clock settings. VBUS GPIO IRQ is still missing (TODO).
* Compile fix.hselasky2012-08-121-1/+0
| | | | MFC after: 2 weeks
* Add support for the so-called streams feature of BULK endpointshselasky2012-08-128-64/+157
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in SUPER-speed mode, USB 3.0. This feature has not been tested yet, due to lack of hardware. This feature is useful when implementing protocols like UASP, USB attached SCSI which promises higher USB mass storage throughput. This patch also implements support for hardware processing of endpoints for increased performance. The switching to hardware processing of an endpoint is done via a callback to the USB controller driver. The stream feature is implemented like a variant of a hardware USB protocol. USB controller drivers implementing device mode needs to be updated to implement the new "xfer_stall" USB controller method and remove the "xfer" argument from the "set_stall" method. The API's toward existing USB drivers are preserved. To setup a USB transfer in stream mode, set the "stream_id" field of the USB config structure to the desired value. The maximum number of BULK streams is currently hardcoded and limited to 8 via a define in usb_freebsd.h. All USB drivers should be re-compiled after this change. LibUSB will be updated next week to support streams mode. A new IOCTL to setup BULK streams as already been implemented. The ugen device nodes currently only supports stream ID zero. The FreeBSD version has been bumped. MFC after: 2 weeks
* Make this compile again. Also note that it is AT91RM9200+KB9202Bimp2012-07-271-2/+2
| | | | specific still and needs some love to make it work on anything else.
* Minor style(9) nit.imp2012-07-271-0/+1
|
* For Intel Panther/Lynx Point USB 3.0 xHCI controllers enable SuperSpeed USBmav2012-07-172-0/+14
| | | | | | capability and reroute USB 2.0 ports to the xHCI controller. Reviewed by: hselasky
* Add IDs for some USB controllers I have around. Just a cosmetics.mav2012-07-023-4/+25
| | | | MFC after: 3 days
* Import EHCI attachment driver for Freescale integrated controller.raj2012-05-261-0/+423
| | | | | Obtained from: Freescale, Semihalf. Written by: Michal Dubiel
* Make the VIA workaround application somewhat more consistent with themarius2012-05-261-1/+2
| | | | ATI one.
* Make the VIA workaround actually do its intended job.marius2012-05-261-1/+1
| | | | MFC after: 3 days
* Make sure the EHCI bandwidth allocation algorithmhselasky2012-05-031-0/+18
| | | | | | for FULL speed SPLIT transactions works fully. MFC after: 1 week
* Add support for Multi-TT mode of modern USB HUBs.hselasky2012-04-292-38/+52
| | | | | | | | | | This will give you more bandwidth for isochronous FULL speed applications connected through a High Speed HUB. This patch has been tested with XHCI and EHCI. MFC after: 1 week
* Fix compiler warnings, mostly signed issues,hselasky2012-04-0210-49/+30
| | | | | | when USB modules are compiled with WARNS=9. MFC after: 1 weeks
* Fix for DWC OTG interrupt register programming.hselasky2012-03-053-22/+44
| | | | | | | Fix a compiler warning. Add missing header file. MFC after: 1 week
* Make sure that the USB system suspend event is executed synchronouslyhselasky2012-03-031-2/+21
| | | | | | | | | and not asynchronously. This fixes problems related to USB system suspend and resume. It is assumed that we are always allowed to sleep from the device_suspend() method. MFC after: 1 week Submitted by: jkim
* Add support for the DesignWare USB 2.0 OTG controller chipset.hselasky2012-01-213-0/+3248
| | | | | | | | | | | | | Currently the code is not built by any modules. That will be fixed later. The Atmel ARM bus interface file part of this commit is just for sake of example. All registers and bits are declared like macros and not C-structures like in official Synopsis header files. This driver mostly origins from the musb_otg.c driver in FreeBSD except that the chip specific programming has been replaced by the one for DWC 2.0 USB OTG. Some parts related to system suspend and resume have been left like empty functions for the future. USB suspend and resume is fully supported.
* 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)
OpenPOWER on IntegriCloud