History log of /freebsd-10.3-release/sys/dev/usb/controller/xhci_pci.c
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
# 296373 04-Mar-2016 marius

- Copy stable/10@296371 to releng/10.3 in preparation for 10.3-RC1
builds.
- Update newvers.sh to reflect RC1.
- Update __FreeBSD_version to reflect 10.3.
- Update default pkg(8) configuration to use the quarterly branch.

Approved by: re (implicit)

# 290331 03-Nov-2015 hselasky

MFC r285914, r289029 and r289560:
- 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


# 289161 12-Oct-2015 kevlo

MFC r289030:

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


# 289013 08-Oct-2015 hselasky

MFC r287355, r287772 and r287825:
Add new USB PCI IDs.

PR: 202807
Submitted by: Dmitry Luhtionov <dmitryluhtionov@gmail.com>
Differential Revision: https://reviews.freebsd.org/D3665


# 279693 06-Mar-2015 hselasky

MFC r279563:
Add quirk for USB 3.0 controllers which don't support 64-bit DMA.


# 279648 05-Mar-2015 hselasky

MFC r279544:
Add quirk to disable 64-bit XHCI DMA after r276717.

Requested by: Gary Jennejohn <gljennjohn@gmail.com>


# 278278 05-Feb-2015 hselasky

MFC r266969 and r276717:
Add 64-bit DMA support in the XHCI controller driver.
- Fix some comments and whitespaces while at it.
- Add support for PAE.


# 276968 11-Jan-2015 hselasky

MFC r271156 and r273376:
- Add IDs for Intel Patsburg USB 2.0 controller.
- Add the Intel BayTrail USB device which needs port routing for USB 3.0.


# 276965 11-Jan-2015 hselasky

MFC r276321, r276404, r276407 and r276799:
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.


# 275785 15-Dec-2014 hselasky

MFC r275624:
Add port routing support for Wildcat Point.

PR: 195793


# 275439 03-Dec-2014 mav

MFC r275101:
Add bunch of PCI IDs of Intel Wildcat Point (9 Series) chipsets.


# 268884 19-Jul-2014 hselasky

MFC r268735:
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.


# 268604 14-Jul-2014 hselasky

MFC r268354:
Improve support for Intel Lynx Point USB 3.0 controllers by masking
the port routing bits like done in Linux.


# 265078 29-Apr-2014 hselasky

MFC r265015:
Setting the IMOD value below 0x3F8 can cause IRQ lockups in the Intel
LynxPoint USB 3.0 controllers found in MacBookPro 2013's.


# 262364 23-Feb-2014 hselasky

MFC r261981:
Add new PCI ID for hardware which needs port routing for USB 3.0.

PR: usb/186811


# 256281 10-Oct-2013 gjb

Copy head (r256279) to stable/10 as part of the 10.0-RELEASE cycle.

Approved by: re (implicit)
Sponsored by: The FreeBSD Foundation


# 255768 21-Sep-2013 hselasky

Stability fixes for Intel LynxPoint XHCI controllers. Disable XHCI port
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)


# 253398 16-Jul-2013 kib

Add a tunable to force disable MSI use for xhci(4).

Requested and tested by: delphij
Sponsored by: The FreeBSD Foundation
MFC after: 3 days


# 253094 09-Jul-2013 kib

Use MSI for xhci(4), if supported.

Reviewed by: jhb
Tested by: dchagin
Sponsored by: The FreeBSD Foundation
MFC after: 1 week


# 251499 07-Jun-2013 hselasky

Add support for polling the XHCI interrupt handler when
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


# 249336 10-Apr-2013 mav

Add ID for ASMedia ASM1042 USB 3.0 controller.

MFC after: 1 week


# 239617 23-Aug-2012 hselasky

Add tunable for XHCI port routing.

MFC after: 1 week


# 238551 17-Jul-2012 mav

For Intel Panther/Lynx Point USB 3.0 xHCI controllers enable SuperSpeed USB
capability and reroute USB 2.0 ports to the xHCI controller.

Reviewed by: hselasky


# 238015 02-Jul-2012 mav

Add IDs for some USB controllers I have around. Just a cosmetics.

MFC after: 3 days


# 228483 14-Dec-2011 hselasky

Implement better support for USB controller suspend and resume.

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


# 227849 22-Nov-2011 hselasky

Rename device_delete_all_children() into device_delete_children().

Suggested by: jhb @ and marius @
MFC after: 1 week


# 227843 22-Nov-2011 marius

- There's no need to overwrite the default device method with the default
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.


# 222018 17-May-2011 ru

Renamed PCI_INTERFACE_XHCI to PCIP_SERIALBUS_USB_XHCI and moved it
to <dev/pci/pcireg.h>.

Reviewed by: hselasky
MFC after: 3 days


# 217265 11-Jan-2011 jhb

Remove unneeded includes of <sys/linker_set.h>. Other headers that use
it internally contain nested includes.

Reviewed by: bde


# 213379 03-Oct-2010 hselasky

Commit initial version of new XHCI driver which was written from
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)