| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Move the remainder of host controller capability registers reading from
xhci_start_controller() to xhci_init(). These values don't change at run-
time so there's no point of acquiring them on every USB_HW_POWER_RESUME
instead of only once during initialization. In r276717, reading the first
couple of registers in question already had been moved as a prerequisite
for the changes in that revision.
- Identify ASMedia ASM1042A controllers.
- Use NULL instead of 0 for pointers.
- Add quirks for USB 3.0 PCI devices.
PR: 203650
|
|
|
|
|
|
|
|
|
| |
Add support for Fresco Logic USB 3.0 host controller.
Fresco Logic hosts advertise MSI, but fail to actually generate MSI
interrupts. We have to disable MSI use.
Reviewed by: hselasky
|
|
|
|
|
|
|
|
| |
Add new USB PCI IDs.
PR: 202807
Submitted by: Dmitry Luhtionov <dmitryluhtionov@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3665
|
|
|
|
| |
Add quirk for USB 3.0 controllers which don't support 64-bit DMA.
|
|
|
|
|
|
| |
Add quirk to disable 64-bit XHCI DMA after r276717.
Requested by: Gary Jennejohn <gljennjohn@gmail.com>
|
|
|
|
|
|
| |
Add 64-bit DMA support in the XHCI controller driver.
- Fix some comments and whitespaces while at it.
- Add support for PAE.
|
|
|
|
|
| |
- Add IDs for Intel Patsburg USB 2.0 controller.
- Add the Intel BayTrail USB device which needs port routing for USB 3.0.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Various XHCI fixes and improvements:
- Improve and fix MSI interrupt allocation, setup and release.
- Add missed flushing of data which can happen when "xhci_configure_mask()"
is called from "xhci_configure_reset_endpoint()". Ensure the 3-strikes
error feature is always enabled except for ISOCHRONOUS transfers.
- Allow systems having a page size greater than 4K to use fewer
scatter-gather XHCI TRB entries for its payload data. The XHCI
controller can handle at least 65536 bytes per scatter-gather list
entry.
|
|
|
|
|
|
| |
Add port routing support for Wildcat Point.
PR: 195793
|
|
|
|
| |
Add bunch of PCI IDs of Intel Wildcat Point (9 Series) chipsets.
|
|
|
|
|
|
|
| |
Improve support for Intel Lynx Point USB 3.0 controllers by using the
USB 2.0 port mask in addition to the USB 3.0 port mask. The hardware
does not always accept when writing -1U to the port switching
registers.
|
|
|
|
|
| |
Improve support for Intel Lynx Point USB 3.0 controllers by masking
the port routing bits like done in Linux.
|
|
|
|
|
| |
Setting the IMOD value below 0x3F8 can cause IRQ lockups in the Intel
LynxPoint USB 3.0 controllers found in MacBookPro 2013's.
|
|
|
|
|
|
| |
Add new PCI ID for hardware which needs port routing for USB 3.0.
PR: usb/186811
|
|
|
|
|
|
|
|
|
|
| |
routing if we get certain errors. Poll for command completion upon
command timeouts. The XHCI error events might not generate interrupts.
MFC after: 1 week
Reported by: Daniel Gerzo <danger@rulez.sk>, Antonis Anastasiadis <anastasiadis@datalive.gr>
PR: usb/181159
Approved by: re (gjb)
|
|
|
|
|
|
| |
Requested and tested by: delphij
Sponsored by: The FreeBSD Foundation
MFC after: 3 days
|
|
|
|
|
|
|
| |
Reviewed by: jhb
Tested by: dchagin
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
|
|
|
|
|
|
|
|
|
|
| |
the regular interrupt handler is not working properly or
in case of MSI interrupts which are not yet supported.
Remove interrupt setup code for FreeBSD versions older
than 700031.
MFC after: 1 week
PR: usb/179342
|
|
|
|
| |
MFC after: 1 week
|
|
|
|
| |
MFC after: 1 week
|
|
|
|
|
|
| |
capability and reroute USB 2.0 ports to the xHCI controller.
Reviewed by: hselasky
|
|
|
|
| |
MFC after: 3 days
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
Suggested by: jhb @ and marius @
MFC after: 1 week
|
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
to <dev/pci/pcireg.h>.
Reviewed by: hselasky
MFC after: 3 days
|
|
|
|
|
|
| |
it internally contain nested includes.
Reviewed by: bde
|
|
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)
|