diff options
author | Leo Dagum <dagum@engr.sgi.com> | 2000-04-10 21:44:30 +0000 |
---|---|---|
committer | Leo Dagum <dagum@engr.sgi.com> | 2000-04-10 21:44:30 +0000 |
commit | 652fa41942610a1c61e3a1a41e4e78bb16adbe5c (patch) | |
tree | a1f062176c8dd306a4043f0879babc817efc16e3 /arch | |
parent | 23124391de1a029f1fc110ad207dc21dfb7b68c4 (diff) |
Fixed bridge_init() so it sets registers for the
calling process's bridge (not necessarily node 0),
and removed call to set_cp0_status() (now in per_cpu_init()).
b_wid_int_upper still points to node 0, I
don't want to change this till I have a multinode
system and kernel to test on.
Diffstat (limited to 'arch')
-rw-r--r-- | arch/mips64/sgi-ip27/ip27-irq.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/mips64/sgi-ip27/ip27-irq.c b/arch/mips64/sgi-ip27/ip27-irq.c index db6575395..31d53c897 100644 --- a/arch/mips64/sgi-ip27/ip27-irq.c +++ b/arch/mips64/sgi-ip27/ip27-irq.c @@ -276,7 +276,11 @@ static unsigned int bridge_shutdown(unsigned int irq) static void bridge_init(void) { - bridge_t *bridge = (bridge_t *) 0x9200000008000000; + bridge_t *bridge; + nasid_t nasid; + + nasid = get_nasid(); + bridge = (bridge_t *) NODE_SWIN_BASE(nasid, 8); /* bridge is widget 8 on origin */ /* Hmm... IRIX sets additional bits in the address which are documented as reserved in the bridge docs ... */ @@ -292,7 +296,6 @@ static void bridge_init(void) bridge->b_int_enable = 0; bridge->b_widget.w_tflush; /* Flush */ - set_cp0_status(SRB_DEV0 | SRB_DEV1, SRB_DEV0 | SRB_DEV1); } void irq_debug(void) |