diff options
author | Christopher Pascoe <pascoe@cvs.openbsd.org> | 2005-04-21 12:30:03 +0000 |
---|---|---|
committer | Christopher Pascoe <pascoe@cvs.openbsd.org> | 2005-04-21 12:30:03 +0000 |
commit | c22d66b26f3773cfad5b2d27ee616cd0a0f5acb0 (patch) | |
tree | 68a275a5c02f3ae2be79b8c25310c31e4dc43bcf /sys/dev/pci/ohci_pci.c | |
parent | 669cbf66fe301ad1daf2bd426cd98e85331933a6 (diff) |
If the SMM driver had enabled ownership change interrupts, re-enable them
temporarily before we attempt to take control.
ok dlg@
Diffstat (limited to 'sys/dev/pci/ohci_pci.c')
-rw-r--r-- | sys/dev/pci/ohci_pci.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/dev/pci/ohci_pci.c b/sys/dev/pci/ohci_pci.c index ca7ddc4a1e6..3f3e36ffa20 100644 --- a/sys/dev/pci/ohci_pci.c +++ b/sys/dev/pci/ohci_pci.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ohci_pci.c,v 1.24 2005/04/11 08:09:32 dlg Exp $ */ +/* $OpenBSD: ohci_pci.c,v 1.25 2005/04/21 12:30:02 pascoe Exp $ */ /* $NetBSD: ohci_pci.c,v 1.23 2002/10/02 16:51:47 thorpej Exp $ */ /* @@ -120,6 +120,10 @@ ohci_pci_attach(struct device *parent, struct device *self, void *aux) return; } + /* Record what interrupts were enabled by SMM/BIOS. */ + sc->sc.sc_intre = bus_space_read_4(sc->sc.iot, sc->sc.ioh, + OHCI_INTERRUPT_ENABLE); + /* Disable interrupts, so we don't get any spurious ones. */ bus_space_write_4(sc->sc.iot, sc->sc.ioh, OHCI_INTERRUPT_DISABLE, OHCI_MIE); |