diff options
author | cinap_lenrek <cinap_lenrek@gmx.de> | 2012-12-06 18:53:17 +0100 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@gmx.de> | 2012-12-06 18:53:17 +0100 |
commit | 5a138029db4a59025fe25a06f2a688d62d73aec3 (patch) | |
tree | 8b6dba77269c4c408e9ff4f32a984e03a3387afe /sys/src/9/pc/usbehcipc.c | |
parent | 75b1ec6716c7fda0c2e8907541bd314ce0cdd2fa (diff) |
move devusb to port
moved devusb to port, shifting the responsibility of how
to enable interrupts to the arch specific hci driver.
Diffstat (limited to 'sys/src/9/pc/usbehcipc.c')
-rw-r--r-- | sys/src/9/pc/usbehcipc.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/sys/src/9/pc/usbehcipc.c b/sys/src/9/pc/usbehcipc.c index 89c0b112c..ad624750e 100644 --- a/sys/src/9/pc/usbehcipc.c +++ b/sys/src/9/pc/usbehcipc.c @@ -273,6 +273,18 @@ reset(Hci *hp) ehcilinkage(hp); hp->shutdown = shutdown; hp->debug = setdebug; + if(hp->interrupt == nil) + return 0; + + /* + * IRQ2 doesn't really exist, it's used to gang the interrupt + * controllers together. A device set to IRQ2 will appear on + * the second interrupt controller as IRQ9. + */ + if(hp->irq == 2) + hp->irq = 9; + intrenable(hp->irq, hp->interrupt, hp, hp->tbdf, hp->type); + return 0; } |