[I4L] Fix IRQ-sharing lockup in nj_s

From: Herbert Xu
Date: Tue Jul 27 2004 - 03:24:26 EST


Hi:

This is a backport of a fix that's already in 2.6. The problem is that
nj_s is enabling interrupts before the handler is even installed. This
patch delays the call until after the handler has been registered.

Cheers,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@xxxxxxxxxxxxxxxxxxx>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
===== drivers/isdn/hisax/nj_s.c 1.7 vs edited =====
--- 1.7/drivers/isdn/hisax/nj_s.c 2002-04-01 11:02:11 +10:00
+++ edited/drivers/isdn/hisax/nj_s.c 2004-07-27 18:19:41 +10:00
@@ -130,6 +130,7 @@
release_io_netjet(cs);
return(0);
case CARD_INIT:
+ reset_netjet_s(cs);
inittiger(cs);
clear_pending_isac_ints(cs);
initisac(cs);
@@ -262,7 +263,6 @@
} else {
request_region(cs->hw.njet.base, bytecnt, "netjet-s isdn");
}
- reset_netjet_s(cs);
cs->readisac = &NETjet_ReadIC;
cs->writeisac = &NETjet_WriteIC;
cs->readisacfifo = &NETjet_ReadICfifo;