summaryrefslogtreecommitdiffstats
path: root/sys/dev/pci/ohci_pci.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* There is no need to remember which usb(4) device is the child of an USBmpi2014-05-161-4/+3
| | | | host controller because autoconf(9) already does it.
* Get rid of various 'typedef struct' definitions and use plain structuremglocker2013-04-151-2/+2
| | | | | | | | | 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@
* use the dying flag in struct usbd_bus instead of a private dying flagjakemsr2010-12-141-3/+3
| | | | | | in *hci_softc ok miod@, krw@
* Disestablish interrupts if attachment fails.mk2010-10-201-1/+3
| | | | ok jakemsr
* remove the powerhook code. All architectures now use the ca_activate treederaadt2010-09-071-10/+1
| | | | | traversal code to suspend/resume ok oga kettenis blambert
* Change powerhooks into activate functions, and provide stub powerhookderaadt2010-08-301-2/+2
| | | | | functions ok kettenis
* these files don't need to include proc.h anymore. ok oga for agptedu2010-04-081-2/+2
|
* First pass at removing clauses 3 and 4 from NetBSD licenses.ray2008-06-261-8/+1
| | | | | | | | | 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@
* Perform legacy emulation handover for USB1 companion controllers immediatelypascoe2007-03-221-2/+31
| | | | | | | | | | | | | | but defer the remainder of their initialisation until after the other devices on their PCI bus have attached. This ensures that any USB2 controller has also completed its initialisation before we start to initialise the USB1 parts. This minimises the chance that a nasty SMM implementation will trash the USB1 controller's config when it performs legacy emulation handover of the USB2 part. This time without accidentally leaving the OHCI controller shutdown, and with some cosmetic fixes. ok dlg@, OHCI tests mglocker@
* Backout pascoe@'s last USB change because it page faults at attachmentmglocker2007-03-181-55/+3
| | | | | | | | | time. Chris; Get your shiz fixed and tested for the next time. We have better todo then wasting our time by backing out untested stuff. OK deraadt, OK ckuethe
* Perform legacy emulation handover for USB1 companion controllers immediatelypascoe2007-03-181-3/+55
| | | | | | | | | but defer the remainder of their initialisation until after the other devices on their PCI bus have attached. This ensures that any USB2 controller has also completed its initialisation before we start to initialise the USB1 parts. This minimises the chance that a nasty SMM implementation will trash the USB1 controller's config when it performs legacy emulation handover of the USB2 part.
* Warn the user if the powerhook could not be established during attach. Fordlg2006-05-221-2/+6
| | | | | | | | | extra correctness check that it is set before trying to disestablish it at detach. Whether you can detach a pci ohci controller is a separate issue. Inspired by krw@'s change in ohci.c 1.67 for PR #5128. ok krw@
* Expunge all #if defined(__NetBSD__) and #if defined(__FreeBSD__) crud.krw2006-05-221-7/+1
| | | | | | Misused in many cases anyway. ok dlg@
* device_ptr_t -> struct device *dlg2005-12-301-3/+3
| | | | i hate typedefs
* do not set PCI_COMMAND_MASTER_ENABLE explicitly as it's already set in pcisubmatch(); kettenis@ testing; brad@ okmickey2005-08-091-8/+1
|
* If the SMM driver had enabled ownership change interrupts, re-enable thempascoe2005-04-211-1/+5
| | | | | | temporarily before we attempt to take control. ok dlg@
* get rid of the lines on ehci attach that show the version and the companiondlg2005-04-111-6/+1
| | | | | | | controllers. remove the insane amount of support code needed just for the printing of the companion controllers while here. zap it deraadt@ sure pascoe@
* make the powerhooks the responsibility of the bus ohci is attached todlg2005-03-301-1/+7
| | | | ok uwe@
* strncpy -> strlcpydlg2004-12-311-4/+3
|
* do not bother w/ void pci_devinfo() calls and free resources on failuresmickey2004-05-241-1/+4
|
* ehci support; hacked into working shape by jonathon@gateway.zenbu.netderaadt2004-05-231-1/+6
|
* cleanup dmesg outputmickey2003-08-111-6/+5
|
* Sync USB code with NetBSD.nate2003-07-081-23/+35
| | | | This includes numerous fixes and paves the way for usb 2.0 support.
* i386 configures devices while at spl0, this causes problems if devicesdrahn2002-06-081-1/+7
| | | | | | attach the interrupt before initializing the hardware to make sure that no interrupts are pending. By adding splusb() any possible interrupts are blocked and will be handled correctly. Discussed with niklas, ok art@
* Fix more timeout handling issues in ohci. There are still cursed harrdwaremiod2002-06-071-5/+1
| | | | | that will keep dying with this applied, though. Discussed with drahn@
* First round of __P removal in sysmillert2002-03-141-4/+4
|
* Add a timer to reinable the OHCI RHSC (Root Hub Status Change)drahn2001-09-151-1/+5
| | | | | | | | | | | | | interrupt after one second. Originally the interrupt was disabled permanently after it fired once. This causes futher hot plug/removals to stop working. However the interrupt will fire several times in succession as a device is inserted/removed. This effectively debounces the interrupt. Apparently only some systems actually plug directly into the root hub: Most PCI cards do not, however newer apple motherboards all do. This was sent around for review some time back and again recently, this time with no feedback.
* Change pci_intr_map to take pci_attach_args as an argument.art2001-08-251-3/+2
| | | | | | | | | | | All callers actually took all arguments to pci_intr_map from pci_attach_args structs, so this simplifies code. This also allows more complicated interrupt assignment schemes like the one on sparc64. This makes sparc64 pci interrupts work. Inspired by the same change in NetBSD.
* dmesg cleanupderaadt2001-06-131-3/+4
|
* interrupts cannot happen beforemickey2001-06-121-6/+11
| | | | | | | | | | | | | | *hci cannot receive interrupts before it has been initialized. this was changed to accomodate the pcibios strategy change back in pre-2.9 times since *hci_init enables interrupts at it's end and thus unmapped pci interrupt hangs the machine in the endless loop trying to deliver it (and no hci handler to ack it). this new way we disable interrupts by hands before we map 'em on pci and thus ensure that they will not crash an uninitialized *hci which, in turn, will run right after the interrupt map/establish and by the time it enables *hci interrupts all gonna be just fine. please allow us to end this stretched remark for cvs is getting a power outage in less than 20 minutes.
* Make pci_mapreg_map take an extra argument where we canniklas2001-06-121-2/+2
| | | | | | | put a size limitation of the PCI region to map. That makes the PERC 3/Di raid controller usable, as it publishes too much PCI memory for us to map in the kernel virtual memory. As we only access the first 256 byte it is of no use to map 128MB of kvm.
* fix pretty printderaadt2001-01-221-2/+2
|
* map and establish interrupts _after_ chip was initializedmickey2001-01-211-8/+8
| | | | | and driver has allocated it's internal data structures. deraadt@ ok
* sync with NetBSD.fgsch2000-07-041-9/+8
|
* sync with NetBSD.fgsch1999-11-071-14/+46
|
* Disable ints. later; NetBSD.fgsch1999-09-271-8/+9
|
* Disable interrupts early; from NetBSD.fgsch1999-08-231-1/+5
|
* shorten dmesg output.fgsch1999-08-131-2/+2
|
* Remove unncessary printfs as well as NetBSD ifdefs.fgsch1999-08-131-41/+9
| | | | Make dmesg output shorter.
* USB controllers.fgsch1999-08-131-0/+176