Messages in this thread Patch in this message | | | Date | Fri, 20 Dec 2002 03:32:58 -0500 | From | Pete Zaitcev <> | Subject | Patch for e100 on my z505je |
| |
Jeff,
I tried Marcelo's 2.4.21-pre2 and the driver fails the self-test, then dies in an unserviced interrupt storm. An obvious patch seems to fix the problem here.
Amazingly enough, the driver works in RH 2.4.18-14 (e100 2.1.6-k1), but if I take the same 2.1.6-k1 and implant it into Marcelo tree, everything dies as before. Something is fishy here.
-- Pete
diff -urN -X dontdiff linux-2.4.21-pre2/drivers/net/e100/e100_main.c linux-2.4.21-pre2-usb/drivers/net/e100/e100_main.c --- linux-2.4.21-pre2/drivers/net/e100/e100_main.c 2002-12-19 19:50:58.000000000 -0800 +++ linux-2.4.21-pre2-usb/drivers/net/e100/e100_main.c 2002-12-20 00:07:36.000000000 -0800 @@ -2288,6 +2288,8 @@ /* initialize the nic state before running test */ e100_sw_reset(bdp, PORT_SOFTWARE_RESET); + e100_dis_intr(bdp); + /* Setup the address of the self_test area */ selftest_cmd = bdp->selftest_phys; @@ -2302,9 +2304,9 @@ writel(selftest_cmd, &bdp->scb->scb_port); readw(&(bdp->scb->scb_status)); /* flushes last write, read-safe */ - /* Wait at least 10 milliseconds for the self-test to complete */ + /* Wait at least 20 milliseconds for the self-test to complete */ set_current_state(TASK_UNINTERRUPTIBLE); - schedule_timeout(HZ / 100 + 1); + schedule_timeout(HZ / 50 + 1); /* disable interrupts since the're now enabled */ e100_dis_intr(bdp); - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |