summaryrefslogtreecommitdiffstats
path: root/sys/dev/usb/controller/ehci_pci.c
Commit message (Collapse)AuthorAgeFilesLines
* MFC r307518:hselasky2016-11-071-6/+0
| | | | | | | | | | | | | | | | | | | | | Fix device delete child function. When detaching device trees parent devices must be detached prior to detaching its children. This is because parent devices can have pointers to the child devices in their softcs which are not invalidated by device_delete_child(). This can cause use after free issues and panic(). Device drivers implementing trees, must ensure its detach function detaches or deletes all its children before returning. While at it remove now redundant device_detach() calls before device_delete_child() and device_delete_children(), mostly in the USB controller drivers. Tested by: Jan Henrik Sylvester <me@janh.de> Reviewed by: jhb Differential Revision: https://reviews.freebsd.org/D8070
* MFC r281499:hselasky2016-09-081-1/+1
| | | | | | | | | | | Modify the return value of the uhci/ehci/xhci PCI probe routines to 'BUS_PROBE_DEFAULT'. This allows bhyve's 'ppt' driver to claim ownership of the device and pass it through to the guest. In the common case where there are no competing drivers for USB controllers this change is a no-op. PR: 212256
* MFC r297387: Add some device IDs found on AMD FCH shipsets.mav2016-04-121-0/+2
|
* MFC r297049: Add IDs for Intel Wellsburg USB controllers.mav2016-03-281-0/+4
|
* MFC r295463 (by hselasky): Correct PCI device description.mav2016-03-281-1/+1
|
* MFC r275137 (by adrian): Add PCI ID for Intel Lynx Point LP controller.mav2016-03-281-0/+2
| | | | PR: kern/195398
* MFC r266969 and r276717:hselasky2015-02-051-0/+1
| | | | | | Add 64-bit DMA support in the XHCI controller driver. - Fix some comments and whitespaces while at it. - Add support for PAE.
* MFC r271156 and r273376:hselasky2015-01-111-0/+6
| | | | | - Add IDs for Intel Patsburg USB 2.0 controller. - Add the Intel BayTrail USB device which needs port routing for USB 3.0.
* MFC r275101:mav2014-12-031-0/+4
| | | | Add bunch of PCI IDs of Intel Wildcat Point (9 Series) chipsets.
* MFC r257594:hselasky2014-08-121-0/+4
| | | | Add description of two EHCI PCI IDs.
* MFC r258162:mav2014-01-051-0/+2
| | | | Add some more IDs for Intel ATA, AHCI and USB controllers.
* Fix some USB controller names according to pciconf output.hselasky2013-08-171-1/+1
| | | | | MFC after: 1 week Submitted by: Dmitry Luhtionov <dmitryluhtionov@gmail.com>
* Add IDs for some USB controllers I have around. Just a cosmetics.mav2012-07-021-4/+8
| | | | MFC after: 3 days
* 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
* Implement better support for USB controller suspend and resume.hselasky2011-12-141-61/+21
| | | | | | | | | | 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-221-1/+1
| | | | | Suggested by: jhb @ and marius @ MFC after: 1 week
* - There's no need to overwrite the default device method with the defaultmarius2011-11-221-3/+1
| | | | | | | | | | 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.
* We don't need to call EOWRITE4(sc, EHCI_USBINTR, 0) directly from each EHCIhselasky2011-04-121-6/+0
| | | | | | | | 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-031-1/+1
| | | | | | Submitted by: Luiz Otavio O Souza MFC after: 7 days Approved by: thompsa (mentor)
* Remove unneeded includes of <sys/linker_set.h>. Other headers that usejhb2011-01-111-1/+0
| | | | | | it internally contain nested includes. Reviewed by: bde
* Remove unused EHCI register definition.hselasky2010-10-141-2/+0
| | | | | | Define reserved EHCI register. Approved by: thompsa (mentor)
* Add PCI IDs for two more nForce controllers.thompsa2010-03-281-0/+2
| | | | Submitted by: Dmitry Luhtionov @ gmail.com
* The NetBSD Foundation has granted permission to remove clause 3 and 4 fromjoel2010-03-031-7/+0
| | | | | | their software. Obtained from: NetBSD
* Disable the use of the IAAD usb doorbell on NVidia controllers as it can causethompsa2010-02-091-0/+13
| | | | | | the hardware to stall. 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-091-2/+2
| | | | Submitted by: mitya_cabletv.dp.ua
* Add uhci/ehci controller ids.thompsa2009-12-031-0/+4
| | | | Submitted by: mitya_cabletv.dp.ua
* Integrate lost interrupts patch from the old USB stack.thompsa2009-11-081-0/+13
| | | | | | | | | | | | | | | Some EHCI chips from VIA / ATI seem to trigger interrupts before writing back the qTD status, or miss signalling occasionally under heavy load. If the host machine is too fast, we can miss transaction completion - when we scan the active list the transaction still seems to be active. This generally exhibits itself as a umass stall that never recovers. We work around this behaviour by setting up this callback after any softintr that completes with transactions still pending, giving us another chance to check for completion after the writeback has taken place Submitted by: Alexander Nedotsuko MFC after: 3 days
* ehci_init() will do reset and set the usbrev flag. Fix problem wherethompsa2009-11-081-3/+1
| | | | | | | ehci_reset() was called before ehci_init(). PR: usb/140242 Submitted by: Sebastian Huber
* Revert r198500 for now, this will break situations whenthompsa2009-10-261-0/+49
| | | | | | | hw.pci.usb_early_takeover is set to zero and the SMM release is never done. Pointed out by: marcel
* Remove usb controller takeover code now that it is handled by the pci code.thompsa2009-10-261-49/+0
| | | | | Reminded by: jhb Reviewed by: HPS
* Workaround buggy BIOS code in USB regard. By doing the BIOS to OS handover forthompsa2009-10-151-0/+1
| | | | | | | | | all host controllers at the same time, we avoid problems where the BIOS will actually write to the USB registers of all the USB host controllers every time we handover one of them, and consequently reset the OS programmed values. Submitted by: avg Reviewed by: jhb
* Import two PCI quirks from Linuxthompsa2009-09-281-0/+70
| | | | | | | | - Add quirk for ATI SB600 and SB700 to free SMB controller - Correct schedule sleep time to 10us on the VIA ehci controller Reported by: Dorian B<FC>ttner, Andriy Gapon Submitted by: Hans Petter Selasky
* USB controller:alfred2009-07-301-0/+2
| | | | | | | | | - patch from Alexander Motin <mav@freebsd.org> - add more ID's - P4 ID: 165805 Submitted by: hps Approved by: re
* - Make struct usb_xfer opaque so that drivers can not access the internalsthompsa2009-06-231-1/+21
| | | | - Reduce the number of headers needed for a usb driver, the common case is just usb.h and usbdi.h
* s/usb2_/usb_|usbd_/ on all function names for the USB stack.thompsa2009-06-151-3/+3
|
* Remove usb_sw_transfer.[ch] which are now empty after r190735.thompsa2009-04-061-1/+0
|
* MFp4 //depot/projects/usb @159479,159502,159516,159522,159529thompsa2009-03-201-2/+2
| | | | | | | | Workaround for buggy USB hardware not handling new SETUP packet before STATUS stage is complete, this allows xfers to endpoint0 to return a short frame. Submitted by: Hans Petter Selasky Reported by: me
* MFp4 //depot/projects/usb @159430thompsa2009-03-201-1/+0
| | | | | | | | | | - Move tunable defines into usb_core.h and dependancy towards usb_defs.h - Leave hardcoded defines in "usb_defs.h". - Allow overriding all tunable defines. - Add more customisable typedefs. - Correct maximum device number. Submitted by: Hans Petter Selasky
* remove now-redunant cardbus attachment.imp2009-03-091-1/+0
|
* Move the new USB stack into its new home.thompsa2009-02-231-0/+486
OpenPOWER on IntegriCloud