summaryrefslogtreecommitdiff
path: root/sys/dev/pci/ehci_pci.c
AgeCommit message (Collapse)Author
2024-05-24remove unneeded includes; ok miod@Jonathan Gray
2022-03-11Constify struct cfattach.Martin Pieuchot
2019-05-02Avoid running the activate function for a partially attached ehci(4) driver.Mark Kettenis
The Realtek DASH ehci(4) doesn't have a properly set SBRN register which prevents us from fully attaching the device. This would result in a panic during suspend because the activate function will access register that aren't mapped. ok deraadt@
2016-07-20ATI controllers seem to need the same workaround as VIA controllers.Martin Pieuchot
This should hopefully help people reporting errors with SB700. From FreeBSD, ok kettenis@, krw@
2015-11-09Run config_found() under splusb.Martin Pieuchot
Fix a NULL dereference reported by jsg@ in case a Root Port Hub interrupt is handled before the soft-interrupt has been established.
2015-11-02Delay root hub interrupt processing to the soft-interrupt path in orderMartin Pieuchot
to mark ehci_intr() as IPL_MPSAFE. Earlier version tested by ratchov@, ok visa@
2014-05-16There is no need to remember which usb(4) device is the child of an USBMartin Pieuchot
host controller because autoconf(9) already does it.
2013-04-15Get rid of various 'typedef struct' definitions and use plain structureMarcus Glocker
definitions instead. We don't change usb.h for now to stay compatible with userland. Tested by mpi@ on macppc and myself on i386. ok mpi@
2012-10-20driver xxactivate() functins are run even if a driver xxattach() hasTheo de Raadt
"failed"; no indication is given up to the autoconf framework since xxattach() returns void. Until this situation is improved, there are a handful of drivers which must use driver-specific checks in xxactivate() to see if the xxattach() function succeeded or failed. Add such a check here. ok kettenis
2012-10-08Revamp the sequences for suspend/hibernate -> resume so that the codeTheo de Raadt
paths are reflexive. It is now possible to fail part-way through a suspend sequence, and recover along the resume code path. Split DVACT_SUSPEND by adding a new DVACT_POWERDOWN method is used after hibernate (and suspend too) to finish the job. Some drivers must be converted at the same time to use this instead of shutdown hooks (the others will follow at a later time) ok kettenis mlarkin
2011-04-26typo; found in an old tree..Theo de Raadt
2010-10-20Disestablish interrupts if attachment fails.Michael Knudsen
ok jakemsr
2010-08-08silence BIOS takeover failure messages on unsuspendsTheo de Raadt
2010-06-29Add some missing UHCI and EHCI register restores on resume. Fixes at leastMike Larkin
one broken UHCI on resume. Tested by myself, kettenis, phessler, jsg, pirofti. Doesn't help all machines, but no worse than before on any of them. ok kettenis@, deraadt@
2010-04-08these files don't need to include proc.h anymore. ok oga for agpTed Unangst
2009-07-24silent VIA VT6202 workaround; from bradTheo de Raadt
2009-07-23VIA VT6202 defaults to a bus-hoggingly aggressive sleep time, so retune itTheo de Raadt
to a more reasonable default. speeds up the armish machines in particular (perhaps because their pci bus is so slow), and has no downside when tested on other machines. from linux originally, via brad, ok drahn
2009-06-25Workaround a stupid problem ATI SB600 revisions and ATI SB700 southTheo de Raadt
bridge revisions A12 and A13. We really don't know what it does, but then noone else does. From NetBSD and Linux, via brad
2009-03-29make various strings ("can't map mem space" and similar) more consistentStuart Henderson
between instances, saving space in the kernel. feedback from many (some incorporated, some left for future work). ok deraadt, kettenis, "why not" miod.
2008-06-26First pass at removing clauses 3 and 4 from NetBSD licenses.Ray Lai
Not sure what's more surprising: how long it took for NetBSD to catch up to the rest of the BSDs (including UCB), or the amount of code that NetBSD has claimed for itself without attributing to the actual authors. OK deraadt@
2008-04-09from freebsd; tested in snaps for weeksTheo de Raadt
date: 2008/03/12 20:57:17; author: jhb; state: Exp; lines: +4 -1 Relax the BIOS/OS sempahore handoff code to workaround different hard hangs (one at boot, one at shutdown) in recent machines. First, only try to take ownership of the EHCI controller if the BIOS currently owns the controller. On a HP DL160 G5, the machine hangs when we try to take ownership. Second, don't bother trying to give up ownership of the controller during shutdown. It's not strictly required and a Dell DCS S29 hangs on shutdown after the config write. Both of these changes match the behavior of the Linux EHCI driver. I also think both of these hangs are caused by bugs in the BIOS' SMM handler causing it to get stuck in an infinite loop in SMM.
2007-06-10Remove the definition and use of the USBDEVNAME macro.Marc Balmer
(This might look easy, but it was a big diff. Thanks to dlg and especially jsg for looking over it; we found at least four mistakes in the initial diff.) ok jsg.
2007-05-20Convert ehci and ucom to rwlock.Jonathan Gray
Kill the usb specific lockmgr wrapper as nothing uses it now. ok thib@
2006-08-25Disable interrupts during the attach of UHCI and EHCI controllers. IfChristopher Pascoe
we do not, a shared interrupt which arrives while we are initialising the host controller may cause a NULL pointer dereference. tested joris, ok! dlg
2006-07-10remove ifdef __OtherBSD__. no binary changeDavid Gwynne
2005-12-30device_ptr_t -> struct device *David Gwynne
i hate typedefs
2005-08-09do not set PCI_COMMAND_MASTER_ENABLE explicitly as it's already set in ↵Michael Shalayeff
pcisubmatch(); kettenis@ testing; brad@ ok
2005-04-11get rid of the lines on ehci attach that show the version and the companionDavid Gwynne
controllers. remove the insane amount of support code needed just for the printing of the companion controllers while here. zap it deraadt@ sure pascoe@
2005-03-07Add a workaround for VIA EHCI controllers which, under load, signal qTDChristopher Pascoe
completion before they have performed writeback from the overlay qTD. This condition would exhibit itself as a umass stall that never recovers. ok dlg@
2004-12-29from freebsd: ehci.c 1.13, ehci_pci.c 1.13, ehcireg.h 1.5, ehcivar.h 1.3David Gwynne
log message: Attempt to follow the correct procedure for synchronising with the system BIOS to disable legacy device emulation as per the "EHCI Extended Capability: Pre-OS to OS Handoff Synchronisation" section of the EHCI spec. BIOSes that implement legacy emulation using SMIs are supposed to disable the emulation when this procedure is performed. tested on various archs by jsg@ and me ok pascoe@, looks sane jsg@
2004-05-30rcsidsTed Unangst
2004-05-24do not bother w/ void pci_devinfo() calls and free resources on failuresMichael Shalayeff
2004-05-23ehci support; hacked into working shape by jonathon@gateway.zenbu.netTheo de Raadt